[Asterisk-Dev] RTP issue with G.729

Steve Underwood steveu at coppice.org
Mon Oct 25 17:32:18 MST 2004


Daniel Pocock wrote:

>
> I've had some interoperability reports from people testing various 
> phones with the G.729A codec.
>
> Some phones send a 12 byte RTP frame.  I am guessing that these phones 
> are appending 2 bytes of VAD data (as per the G.729B specification), 
> even though my codec example is only adhering to the G.729A 
> specification (it expects RTP frames to be 10 bytes).
>
> Should I just discard any bytes that are not a multiple of 10?  Eg, if 
> a 12 byte RTP frame is received, should I discard the last 2 bytes?
>
> Sometimes a 2 byte frame is received - should I simply drop these 
> frames, or would doing so mean a timeslot is lost?
>
> Furthermore, does Asterisk's RTP implementation tell the phone that 
> only G.729A is supported?  If so, is the phone at fault for not 
> respecting the version of the protocol supported by Asterisk?
> Or is it a fault with Asterisk for somehow giving the phone the 
> impression that G.729B is supported?
>
> The codec is at http://www.readytechnology.co.uk/open/g729

The 2 byte comfort noise data implies there will be silent timeslots 
following, with no data. So, loosing a timeslot is no big deal. If you 
are implementing comfort noise, then handling the 2 byte messages is 
important. You get much better noise by using them, as per the spec., 
than by making the noise in other ways. If you are not implementing 
comfort noise, then I think dropping them is all you can really do.

Regards,
Steve




More information about the asterisk-dev mailing list