From c67509e4291e41069ff8f477dcb12a01fbb8c550 Mon Sep 17 00:00:00 2001 From: Russell Bryant <russell@russellbryant.com> Date: Fri, 11 Jan 2008 17:17:54 +0000 Subject: [PATCH] At one point during working on this module, I had the lin/lin16 versions of the framein callbacks different. However, they are now the same again, so remove the duplicate code and use the same functions for the lin/lin16 versions. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@98218 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- codecs/codec_g722.c | 36 ++---------------------------------- 1 file changed, 2 insertions(+), 34 deletions(-) diff --git a/codecs/codec_g722.c b/codecs/codec_g722.c index b8df7b76bc..99c3856bc4 100644 --- a/codecs/codec_g722.c +++ b/codecs/codec_g722.c @@ -99,22 +99,6 @@ static int g722tolin16_new(struct ast_trans_pvt *pvt) } static int g722tolin_framein(struct ast_trans_pvt *pvt, struct ast_frame *f) -{ - struct g722_decoder_pvt *tmp = pvt->pvt; - unsigned char *src = f->data; - int out_samples; - - out_samples = g722_decode(&tmp->g722, (int16_t *) &pvt->outbuf[pvt->samples * sizeof(int16_t)], - src, f->samples); - - pvt->samples += out_samples; - - pvt->datalen += (out_samples * sizeof(int16_t)); - - return 0; -} - -static int g722tolin16_framein(struct ast_trans_pvt *pvt, struct ast_frame *f) { struct g722_decoder_pvt *tmp = pvt->pvt; int out_samples; @@ -122,7 +106,6 @@ static int g722tolin16_framein(struct ast_trans_pvt *pvt, struct ast_frame *f) out_samples = g722_decode(&tmp->g722, (int16_t *) &pvt->outbuf[pvt->samples * sizeof(int16_t)], (uint8_t *) f->data, f->samples); - /* sample rate the same between formats, but don't assume that it won't output more ... */ pvt->samples += out_samples; pvt->datalen += (out_samples * sizeof(int16_t)); @@ -145,21 +128,6 @@ static int lintog722_framein(struct ast_trans_pvt *pvt, struct ast_frame *f) return 0; } -static int lin16tog722_framein(struct ast_trans_pvt *pvt, struct ast_frame *f) -{ - struct g722_encoder_pvt *tmp = pvt->pvt; - int16_t *src = f->data; - int outlen; - - outlen = g722_encode(&tmp->g722, (uint8_t*)(&pvt->outbuf[pvt->datalen]), src, f->samples); - - pvt->samples += outlen; - - pvt->datalen += outlen; - - return 0; -} - static struct ast_frame *g722tolin_sample(void) { static struct ast_frame f = { @@ -246,7 +214,7 @@ static struct ast_translator g722tolin16 = { .srcfmt = AST_FORMAT_G722, .dstfmt = AST_FORMAT_SLINEAR16, .newpvt = g722tolin16_new, /* same for both directions */ - .framein = g722tolin16_framein, + .framein = g722tolin_framein, .sample = g722tolin16_sample, .desc_size = sizeof(struct g722_decoder_pvt), .buffer_samples = BUFFER_SAMPLES / sizeof(int16_t), @@ -259,7 +227,7 @@ static struct ast_translator lin16tog722 = { .srcfmt = AST_FORMAT_SLINEAR16, .dstfmt = AST_FORMAT_G722, .newpvt = lin16tog722_new, /* same for both directions */ - .framein = lin16tog722_framein, + .framein = lintog722_framein, .sample = lin16tog722_sample, .desc_size = sizeof(struct g722_encoder_pvt), .buffer_samples = BUFFER_SAMPLES * 2, -- GitLab