summaryrefslogtreecommitdiff
path: root/libavcodec/xbmdec.c
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2022-09-24 11:42:40 +0200
committerPaul B Mahol <onemda@gmail.com>2022-09-24 12:23:33 +0200
commit08f6b1e5b3bc0c3d133cefb4e856ba83d7a93678 (patch)
tree79c8a0ea242c71e723e8fb766fbd1c3d6901fe54 /libavcodec/xbmdec.c
parenteb9045455d7f4d5696320c92ae378c8221d26f79 (diff)
downloadffmpeg-08f6b1e5b3bc0c3d133cefb4e856ba83d7a93678.tar.gz
avcodec/xbmdec: implement FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM
Diffstat (limited to 'libavcodec/xbmdec.c')
-rw-r--r--libavcodec/xbmdec.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/xbmdec.c b/libavcodec/xbmdec.c
index 6a31215329..a0cc1cb8c6 100644
--- a/libavcodec/xbmdec.c
+++ b/libavcodec/xbmdec.c
@@ -82,6 +82,9 @@ static int xbm_decode_frame(AVCodecContext *avctx, AVFrame *p,
if ((ret = ff_set_dimensions(avctx, width, height)) < 0)
return ret;
+ if (avctx->skip_frame >= AVDISCARD_ALL)
+ return avpkt->size;
+
if ((ret = ff_get_buffer(avctx, p, 0)) < 0)
return ret;
@@ -141,5 +144,6 @@ const FFCodec ff_xbm_decoder = {
.p.type = AVMEDIA_TYPE_VIDEO,
.p.id = AV_CODEC_ID_XBM,
.p.capabilities = AV_CODEC_CAP_DR1,
+ .caps_internal = FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM,
FF_CODEC_DECODE_CB(xbm_decode_frame),
};