12-11-2009 03:49 PM
I am trying to decode a SID packet using Intel ipp G.729 1 codec. I do not have a document that details what exactly to do when G.729 B SID packet(s) are encountered. I now seewhere in the RTP packet the SID "signal" or "flag" is present. Does anyone have a place thaty can point me where responding to SID (silence creation) or generating CNG (Comfort Noise) from SID packet sequences is explained?
The capability to do this is in the G.729 1 codec but I cannot seeexactly what to do and there are very, very few comments in the code.
Thanks for any tips in advance.
New Contributor II
12-14-2009 06:16 AM
in G729B compatible modeatypeof 20ms frame depends onthe two consecutive 10ms subframes types: Voice1+Voice2 (5), SID1+Voice2 (6), Voice1+SID2 (9), SID1+SID2 (10), Erased( -1).
So, to decode a 20 ms framea proper frame type must be used:5 - for the twosuccessive voiced 10ms subframes, 6 - for theSIDsubframe followed by a voiced subfmae, 9 - forthe voiced subframe foillowed by SID subframe, and 10 - for the fully silent frame(SID+SID)
Thank you for using IPP,
Vyacheslav, IPP speech
12-14-2009 10:29 AM
Thank you so much for this guidence - I can see and understand what you are saying - my problem is (excuse my ignorance on this subject, I need a tutorial and cannot find one anywhere) If I detect one of these types you are showing me, what do I do? Will the existing ipp G.729.1 code (decoder) prepare the output pcm for me or do I need to do something myself? If you would be so kind as to play this attached wav file that I have decoded using the Intel g.729 1 decoder using type 5 (10 ms plus 10 ms) packets that are arriving. This was decoded from a Wireshark pcap file capture from an employee at Verizon who made it up for me. The man is saying "testing, testing ... Let me check this codec, ah! it is 729 B ..." but the replay is scratchy. I do not know if I am needing to fill in some SID or CNG to clear up the decoding. Any suggestion you might have will be appreciated. Thank you.