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

Reply via email to