aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-03-21 14:48:16 +0100
committerMichael Niedermayer <michaelni@gmx.at>2013-03-21 14:48:56 +0100
commit8251c053209c79b39a1a0a254a5b2c1beae762ac (patch)
treea9aabb4b5b8732ad83d8816dc6ca80707ff511dd /libavcodec
parenta728a28dac581ca1faa12981ed30da3b9243d245 (diff)
downloadffmpeg-8251c053209c79b39a1a0a254a5b2c1beae762ac.tar.gz
g729dec: switch to buffer refs style
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/g729dec.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/libavcodec/g729dec.c b/libavcodec/g729dec.c
index 440bf80cfc..85323bac34 100644
--- a/libavcodec/g729dec.c
+++ b/libavcodec/g729dec.c
@@ -101,7 +101,6 @@ typedef struct {
typedef struct {
DSPContext dsp;
- AVFrame frame;
/// past excitation signal buffer
int16_t exc_base[2*SUBFRAME_SIZE+PITCH_DELAY_MAX+INTERPOL_LEN];
@@ -385,9 +384,6 @@ static av_cold int decoder_init(AVCodecContext * avctx)
ff_dsputil_init(&ctx->dsp, avctx);
ctx->dsp.scalarproduct_int16 = scalarproduct_int16_c;
- avcodec_get_frame_defaults(&ctx->frame);
- avctx->coded_frame = &ctx->frame;
-
return 0;
}
@@ -418,11 +414,12 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame_ptr,
int j, ret;
int gain_before, gain_after;
int is_periodic = 0; // whether one of the subframes is declared as periodic or not
+ AVFrame *frame = data;
- ctx->frame.nb_samples = SUBFRAME_SIZE<<1;
- if ((ret = ff_get_buffer(avctx, &ctx->frame, 0)) < 0)
+ frame->nb_samples = SUBFRAME_SIZE<<1;
+ if ((ret = ff_get_buffer(avctx, frame, 0)) < 0)
return ret;
- out_frame = (int16_t*) ctx->frame.data[0];
+ out_frame = (int16_t*) frame->data[0];
if (buf_size == 10) {
packet_type = FORMAT_G729_8K;
@@ -714,7 +711,6 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame_ptr,
memmove(ctx->exc_base, ctx->exc_base + 2 * SUBFRAME_SIZE, (PITCH_DELAY_MAX+INTERPOL_LEN)*sizeof(int16_t));
*got_frame_ptr = 1;
- *(AVFrame*)data = ctx->frame;
return buf_size;
}