aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/cavsdec.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-12-05 17:15:57 +0100
committerMichael Niedermayer <michaelni@gmx.at>2012-12-05 17:20:19 +0100
commitfc1152de410323cf41dedd0bf301a6a265b0850f (patch)
tree38341f1e990ea51bf52fa2f3474cdc7757fefd0f /libavcodec/cavsdec.c
parent022553e875094565417d32b82975f56be8384820 (diff)
parentdf9b9567518f2840d79a4a96b447ebe1aa326408 (diff)
downloadffmpeg-fc1152de410323cf41dedd0bf301a6a265b0850f.tar.gz
Merge commit 'df9b9567518f2840d79a4a96b447ebe1aa326408'
* commit 'df9b9567518f2840d79a4a96b447ebe1aa326408': lavc: fix decode_frame() third parameter semantics for video decoders Conflicts: libavcodec/cscd.c libavcodec/eamad.c libavcodec/ffv1dec.c libavcodec/gifdec.c libavcodec/h264.c libavcodec/iff.c libavcodec/mjpegdec.c libavcodec/pcx.c libavcodec/vp56.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/cavsdec.c')
-rw-r--r--libavcodec/cavsdec.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/libavcodec/cavsdec.c b/libavcodec/cavsdec.c
index a8a4d6b649..34eeabdae2 100644
--- a/libavcodec/cavsdec.c
+++ b/libavcodec/cavsdec.c
@@ -1112,7 +1112,7 @@ static void cavs_flush(AVCodecContext * avctx) {
h->got_keyframe = 0;
}
-static int cavs_decode_frame(AVCodecContext * avctx,void *data, int *data_size,
+static int cavs_decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
AVPacket *avpkt) {
const uint8_t *buf = avpkt->data;
int buf_size = avpkt->size;
@@ -1128,7 +1128,7 @@ static int cavs_decode_frame(AVCodecContext * avctx,void *data, int *data_size,
if (buf_size == 0) {
if (!s->low_delay && h->DPB[0].f.data[0]) {
- *data_size = sizeof(AVPicture);
+ *got_frame = 1;
*picture = h->DPB[0].f;
memset(&h->DPB[0], 0, sizeof(h->DPB[0]));
}
@@ -1156,7 +1156,7 @@ static int cavs_decode_frame(AVCodecContext * avctx,void *data, int *data_size,
h->got_keyframe = 1;
}
case PIC_PB_START_CODE:
- *data_size = 0;
+ *got_frame = 0;
if(!h->got_keyframe)
break;
if(!h->top_qp)
@@ -1165,12 +1165,12 @@ static int cavs_decode_frame(AVCodecContext * avctx,void *data, int *data_size,
h->stc = stc;
if(decode_pic(h))
break;
- *data_size = sizeof(AVPicture);
+ *got_frame = 1;
if(h->pic_type != AV_PICTURE_TYPE_B) {
if(h->DPB[1].f.data[0]) {
*picture = h->DPB[1].f;
} else {
- *data_size = 0;
+ *got_frame = 0;
}
} else
*picture = h->picture.f;