diff options
author | Nanang Izzuddin <nanang@teluu.com> | 2010-03-04 15:47:25 +0000 |
---|---|---|
committer | Nanang Izzuddin <nanang@teluu.com> | 2010-03-04 15:47:25 +0000 |
commit | ac131cb38e62d9b73fc857e270430c0f9ecab27c (patch) | |
tree | 075ec44e2b62212c128e4bdd9999e21bc922fb49 /pjmedia/src/pjmedia-audiodev/symb_aps_dev.cpp | |
parent | c2d852485b8591782c9b371f6b277d4a4d0cd35f (diff) |
Ticket #1008:
- Applied VAS AMR playback solution from Forum Nokia.
- Fixed AMR playback for VAS and APS in composing DTX/NO_DATA (frame type 15) frame header.
- Modified symbsndtest test application to support non-PCM audio.
- Minor check fix in pjmedia_codec_mgr_destroy(), caught assertion when VAS factory init failed and media endpoint tried to destroy codec manager (codec mgr hasn't been init-ed).
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3116 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjmedia/src/pjmedia-audiodev/symb_aps_dev.cpp')
-rw-r--r-- | pjmedia/src/pjmedia-audiodev/symb_aps_dev.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/pjmedia/src/pjmedia-audiodev/symb_aps_dev.cpp b/pjmedia/src/pjmedia-audiodev/symb_aps_dev.cpp index b544f9cd..1d818b7e 100644 --- a/pjmedia/src/pjmedia-audiodev/symb_aps_dev.cpp +++ b/pjmedia/src/pjmedia-audiodev/symb_aps_dev.cpp @@ -1034,14 +1034,20 @@ static void PlayCb(TAPSCommBuffer &buf, void *user_data) buf.iBuffer.Append((TUint8*)sf->data, len); } else { - buf.iBuffer.Append(0); + enum {NO_DATA_FT = 15 }; + pj_uint8_t amr_header = 4 || (NO_DATA_FT << 3); + + buf.iBuffer.Append(amr_header); } pjmedia_frame_ext_pop_subframes(frame, 1); } else { /* PJMEDIA_FRAME_TYPE_NONE */ - buf.iBuffer.Append(0); - + enum {NO_DATA_FT = 15 }; + pj_uint8_t amr_header = 4 || (NO_DATA_FT << 3); + + buf.iBuffer.Append(amr_header); + frame->samples_cnt = 0; frame->subframe_cnt = 0; } |