diff options
author | James Almer <jamrial@gmail.com> | 2020-04-17 00:03:30 -0300 |
---|---|---|
committer | James Almer <jamrial@gmail.com> | 2020-04-20 13:46:37 -0300 |
commit | 18bb1d40c1546c573efbec3709fc99a40e79076e (patch) | |
tree | b27a7e8086834ed9eb0076630b75128b7972c0ec /libavcodec/qpeg.c | |
parent | 1b13023860a6ede2699153bcad0bbb8bb72f6e38 (diff) | |
download | ffmpeg-18bb1d40c1546c573efbec3709fc99a40e79076e.tar.gz |
avcodec/qpeg: export missing frame properties
Reviewed-by: Anton Khirnov <anton@khirnov.net>
Signed-off-by: James Almer <jamrial@gmail.com>
Diffstat (limited to 'libavcodec/qpeg.c')
-rw-r--r-- | libavcodec/qpeg.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libavcodec/qpeg.c b/libavcodec/qpeg.c index 3fde6381f2..22afd9fa81 100644 --- a/libavcodec/qpeg.c +++ b/libavcodec/qpeg.c @@ -270,7 +270,7 @@ static int decode_frame(AVCodecContext *avctx, AVFrame * const p = data; AVFrame * const ref = a->ref; uint8_t* outdata; - int delta, ret; + int delta, intra, ret; int pal_size; const uint8_t *pal = av_packet_get_side_data(avpkt, AV_PKT_DATA_PALETTE, &pal_size); @@ -289,7 +289,8 @@ static int decode_frame(AVCodecContext *avctx, bytestream2_skip(&a->buffer, 1); delta = bytestream2_get_byte(&a->buffer); - if(delta == 0x10) { + intra = delta == 0x10; + if (intra) { qpeg_decode_intra(a, outdata, p->linesize[0], avctx->width, avctx->height); } else { qpeg_decode_inter(a, outdata, p->linesize[0], avctx->width, avctx->height, delta, ctable, ref->data[0]); @@ -308,6 +309,9 @@ static int decode_frame(AVCodecContext *avctx, if ((ret = av_frame_ref(ref, p)) < 0) return ret; + p->key_frame = intra; + p->pict_type = intra ? AV_PICTURE_TYPE_I : AV_PICTURE_TYPE_P; + *got_frame = 1; return avpkt->size; |