From 4a4841d4e0f0dc50998511bf6c48b518012024db Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Sat, 9 Nov 2013 10:14:46 +0100 Subject: [PATCH] fraps: use the AVFrame API properly. --- libavcodec/fraps.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/libavcodec/fraps.c b/libavcodec/fraps.c index 438c215152..f12e4e01ba 100644 --- a/libavcodec/fraps.c +++ b/libavcodec/fraps.c @@ -45,7 +45,7 @@ */ typedef struct FrapsContext { AVCodecContext *avctx; - AVFrame frame; + AVFrame *frame; uint8_t *tmpbuf; int tmpbuf_size; DSPContext dsp; @@ -66,7 +66,9 @@ static av_cold int decode_init(AVCodecContext *avctx) s->avctx = avctx; s->tmpbuf = NULL; - avcodec_get_frame_defaults(&s->frame); + s->frame = av_frame_alloc(); + if (!s->frame) + return AVERROR(ENOMEM); ff_dsputil_init(&s->dsp, avctx); @@ -136,7 +138,7 @@ static int decode_frame(AVCodecContext *avctx, const uint8_t *buf = avpkt->data; int buf_size = avpkt->size; AVFrame *frame = data; - AVFrame * const f = &s->frame; + AVFrame * const f = s->frame; uint32_t header; unsigned int version,header_size; unsigned int x, y; @@ -361,7 +363,7 @@ static av_cold int decode_end(AVCodecContext *avctx) { FrapsContext *s = (FrapsContext*)avctx->priv_data; - av_frame_unref(&s->frame); + av_frame_free(&s->frame); av_freep(&s->tmpbuf); return 0;