On 02/09/2011 12:09 AM, Steven Ayre wrote:
Annex A is just an alternative way of encoding the data, using less processing power but at poorer quality. They generate compatible data - decoders both with and without annex a support decode both G729 and G729A encoded data. The difference is purely in the implementation of the encoder/decoder. If your device uses G729A in the SDP, it's broken. This is correct, but there are still quite a few things around that have broken SDP that says g729a. The last time I looked, Freeswitch had a fudge in the source code to tolerate that.
Annex B uses the same PT & name. It does work in passthrough mode, as does plain G729. There is supplementary info in the SDP to say whether AnnexB is enabled, like so:
a=fmtp:18 annexb=yes
-Steve
On 8 February 2011 15:31, curriegrad2004 <curriegrad2004@gmail.com <mailto:curriegrad2004@gmail.com>> wrote:
G729 only. No A's or AB.
If you want to pass through other variants of G.729, you can simply modify mod_g729.c to include additional variants of G729
Which by the way, I've pasted the area of the code you might want to modify. I've done this on mine and it worked fine as pass through.
00217 SWITCH_ADD_CODEC(codec_interface, "G.729A"); 00218 for (count = 12; count > 0; count--) { 00219 switch_core_codec_add_implementation(pool, codec_interface, 00220 SWITCH_CODEC_TYPE_AUDIO, 18, "G729A", NULL, 8000, 8000, 8000, 00221 mpf * count, spf * count, bpf * count, ebpf * count, 1, count * 10, 00222 switch_g729_init, switch_g729_encode, switch_g729_decode, switch_g729_destroy); 00223 }
On Tue, Feb 8, 2011 at 7:02 AM, Sam <u2nsam@gmail.com <mailto:u2nsam@gmail.com>> wrote: > Hi, > > Which type of G.729 codec does freeswitch uses in passthrough mode ? > Is it g729a or g729b or g729ab . > > Regards > Sam
Steve