aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec
diff options
context:
space:
mode:
authorNuo Mi <nuomi2021@gmail.com>2024-01-06 09:24:26 +0800
committerNuo Mi <nuomi2021@gmail.com>2024-01-07 08:58:43 +0800
commit26769024d1cb63078b7dd5c470daedb8dbe4e5bd (patch)
tree5b66432ce885111e8d8e09338b5b0f2d17559bea /libavcodec
parent2f24f10d9cf34ddce274496c4daa73f732d370c1 (diff)
downloadffmpeg-26769024d1cb63078b7dd5c470daedb8dbe4e5bd.tar.gz
avcodec/vvcdec: decode extradata to support container formats
For example: wget https://www.elecard.com/storage/video/NovosobornayaSquare_1920x1080.mp4 ./ffplay NovosobornayaSquare_1920x1080.mp4
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/vvc/vvcdec.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libavcodec/vvc/vvcdec.c b/libavcodec/vvc/vvcdec.c
index 608d497cb7..54ada28124 100644
--- a/libavcodec/vvc/vvcdec.c
+++ b/libavcodec/vvc/vvcdec.c
@@ -977,6 +977,12 @@ static av_cold int vvc_decode_init(AVCodecContext *avctx)
if (ret)
return ret;
+ if (avctx->extradata_size > 0 && avctx->extradata) {
+ ret = ff_cbs_read_extradata_from_codec(s->cbc, &s->current_frame, avctx);
+ if (ret < 0)
+ return ret;
+ }
+
s->nb_fcs = (avctx->flags & AV_CODEC_FLAG_LOW_DELAY) ? 1 : delayed;
s->fcs = av_calloc(s->nb_fcs, sizeof(*s->fcs));
if (!s->fcs)