diff options
author | Nanang Izzuddin <nanang@teluu.com> | 2009-10-20 14:54:57 +0000 |
---|---|---|
committer | Nanang Izzuddin <nanang@teluu.com> | 2009-10-20 14:54:57 +0000 |
commit | c9f969d4a2ce67738dda809309363f8fd0d839af (patch) | |
tree | d326b814040a6b715e20c4ce251478e219dfd38c /pjmedia | |
parent | 64bd1d034dd71b2896da1c74103861f9b8ce331e (diff) |
Ticket #978: Fixed noise in APS G.729 playback/decoding on some devices by adopting G.729 SID/DTX frame handling from VAS implementation.
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2958 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjmedia')
-rw-r--r-- | pjmedia/src/pjmedia-audiodev/symb_aps_dev.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/pjmedia/src/pjmedia-audiodev/symb_aps_dev.cpp b/pjmedia/src/pjmedia-audiodev/symb_aps_dev.cpp index 5a5058eb..b544f9cd 100644 --- a/pjmedia/src/pjmedia-audiodev/symb_aps_dev.cpp +++ b/pjmedia/src/pjmedia-audiodev/symb_aps_dev.cpp @@ -1072,23 +1072,25 @@ static void PlayCb(TAPSCommBuffer &buf, void *user_data) const TDesC8 &dst = bitstream->ExpandG729Frame(src, sid_frame); if (sid_frame) { + buf.iBuffer.Append(2); buf.iBuffer.Append(0); - buf.iBuffer.Append(1); } else { buf.iBuffer.Append(1); buf.iBuffer.Append(0); } buf.iBuffer.Append(dst); } else { + buf.iBuffer.Append(2); buf.iBuffer.Append(0); - buf.iBuffer.Append(0); + buf.iBuffer.AppendFill(0, 22); } pjmedia_frame_ext_pop_subframes(frame, 1); } else { /* PJMEDIA_FRAME_TYPE_NONE */ - buf.iBuffer.Append(0); - buf.iBuffer.Append(0); + buf.iBuffer.Append(2); + buf.iBuffer.Append(0); + buf.iBuffer.AppendFill(0, 22); frame->samples_cnt = 0; frame->subframe_cnt = 0; |