From 5d56f0fd4bb8351971581ae103489e6b43d4d52a Mon Sep 17 00:00:00 2001 From: Brian West Date: Fri, 13 Nov 2009 23:31:35 +0000 Subject: [PATCH] add plc to bv16/32 git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@15466 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- src/mod/codecs/mod_bv16/mod_bv16.c | 8 ++++++-- src/mod/codecs/mod_bv32/mod_bv32.c | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/mod/codecs/mod_bv16/mod_bv16.c b/src/mod/codecs/mod_bv16/mod_bv16.c index 37359ab75e..9cd0d7af94 100644 --- a/src/mod/codecs/mod_bv16/mod_bv16.c +++ b/src/mod/codecs/mod_bv16/mod_bv16.c @@ -120,8 +120,12 @@ static switch_status_t switch_bv16_decode(switch_codec_t *codec, *decoded_data_len = 0; for (i = 0; i < frames; i++) { - BV16_BitUnPack(cur_frame, &context->dbs); - BV16_Decode(&context->dbs, &context->ds, target); + if ((*flag & SFF_PLC)) { + BV16_PLC(&context->ds, target); + } else { + BV16_BitUnPack(cur_frame, &context->dbs); + BV16_Decode(&context->dbs, &context->ds, target); + } cur_frame += CODE_SIZE; target += FRAME_SIZE; *decoded_data_len += FRAME_SIZE * 2; diff --git a/src/mod/codecs/mod_bv32/mod_bv32.c b/src/mod/codecs/mod_bv32/mod_bv32.c index 2ec2bc2356..5093e4032a 100644 --- a/src/mod/codecs/mod_bv32/mod_bv32.c +++ b/src/mod/codecs/mod_bv32/mod_bv32.c @@ -120,8 +120,12 @@ static switch_status_t switch_bv32_decode(switch_codec_t *codec, *decoded_data_len = 0; for (i = 0; i < frames; i++) { - BV32_BitUnPack(cur_frame, &context->dbs); - BV32_Decode(&context->dbs, &context->ds, target); + if ((*flag & SFF_PLC)) { + BV32_PLC(&context->ds, target); + } else { + BV32_BitUnPack(cur_frame, &context->dbs); + BV32_Decode(&context->dbs, &context->ds, target); + } cur_frame += CODE_SIZE; target += FRAME_SIZE; *decoded_data_len += FRAME_SIZE * 2;