With Opus Codec, speech frames interdepend. When one RTP packet is lost, several frames are corrupted. Furthermore, when the RTP packet is not lost but just late, Asterisk simply forwards it down to the transcoding modules. Consequently, a late packet corrupts even more frames.
The Opus Codec is able to cope with all this. It is called native packet-loss concealment (Native-PLC). However, Asterisk has to tell the Opus Codec library that there was loss. In RTP, its sequence number can be used for this. More details in <http://issues.asterisk.org/jira/browse/ASTERISK-25629>. At <http://github.com/traud/asterisk-opus>, you find a module which uses the PLC of Opus Codec. To enable Asterisk to signal loss/late, you have to apply the <enable_native_plc.patch> there. Please, give it a try and report whether it improves the situation for you. When that approach is better, someone (you?) has to drive Native-PLC in Asterisk. Or you sponsor a bug bounty so someone drives Native-PLC into Asterisk on your behalf. -- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev