Richard Kenner
2013-Mar-15 02:41 UTC
[asterisk-users] Disagreements between codec_siren14 and Polycom sources
There appears to be a disagreement between the encoding given in the sources for Siren14 that are downloaded from Polycom (and the ITU, both are the same) and that implemented by codec_siren14.so. The latter agrees with the actual device. If I make a .sln32 file and run the encoder from ITU/Polycom with encode 0 foo.sln32 foo.siren14 48000 14000 the resulting file doesn't play back correctly with the Digium's siren14 codec. I know the parameters are correct because the file is the same size as that made by the Digium codec. Both sets of decoders/encoders (Digium and Polycom/ITU) are symmetric and can decode what they encode, but neither can read the encoding of the other. Is there some subtle difference between G.722.1C and Siren14?
Steve Underwood
2013-Mar-15 08:53 UTC
[asterisk-users] Disagreements between codec_siren14 and Polycom sources
On 03/15/2013 10:41 AM, Richard Kenner wrote:> There appears to be a disagreement between the encoding given in the > sources for Siren14 that are downloaded from Polycom (and the ITU, both > are the same) and that implemented by codec_siren14.so. The latter > agrees with the actual device. > > If I make a .sln32 file and run the encoder from ITU/Polycom with > > encode 0 foo.sln32 foo.siren14 48000 14000 > > the resulting file doesn't play back correctly with the Digium's siren14 > codec. I know the parameters are correct because the file is the same > size as that made by the Digium codec. > > Both sets of decoders/encoders (Digium and Polycom/ITU) are symmetric and > can decode what they encode, but neither can read the encoding of the other. > > Is there some subtle difference between G.722.1C and Siren14? > >G,722.1C is not the same as Siren 14. This is stated in the Polycom material but they don't really indicate how different the two are. More importantly, they are vague about whether the two can be expected to interwork satisfactorily. Polycom only offer source code for G.722.1C, so you can't really figure out the differences for yourself. People are really sloppy about these names and something called siren14 might well be G.722.1C. I assume something called G.722.1C is always G.722.1C. Steve
Richard Kenner
2013-Mar-15 13:11 UTC
[asterisk-users] Disagreements between codec_siren14 and Polycom sources
I'm answering my own email here:> There appears to be a disagreement between the encoding given in the > sources for Siren14 that are downloaded from Polycom (and the ITU, both > are the same) and that implemented by codec_siren14.so. The latter > agrees with the actual device.The disagreement is in byte-swapping of the encoded stream. Once that's done, things work fine. If anybody wants a codec that can transcode between Siren14 and slin32 (which is better than Digium's codec_siren14 codec which goes to slin and slin16), let me know. I can send a file that calls the Polycom/ITU code.