diff options
author | Niklas Haas <git@haasn.dev> | 2024-03-23 16:52:41 +0100 |
---|---|---|
committer | Niklas Haas <git@haasn.dev> | 2024-04-03 16:16:55 +0200 |
commit | 3a1916c38aa44374fbcc24ec647d0beaf6152deb (patch) | |
tree | 294e49b1f067886dee144aace0c50130d98c0490 /libavcodec | |
parent | b90c18b38c223e52b852e7156dd5bf1f59200ee7 (diff) | |
download | ffmpeg-3a1916c38aa44374fbcc24ec647d0beaf6152deb.tar.gz |
avcodec/dovi_rpu: add ext_blocks array to DOVIContext
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/dovi_rpu.c | 3 | ||||
-rw-r--r-- | libavcodec/dovi_rpu.h | 6 |
2 files changed, 9 insertions, 0 deletions
diff --git a/libavcodec/dovi_rpu.c b/libavcodec/dovi_rpu.c index 85aded52bd..ce9be19ed0 100644 --- a/libavcodec/dovi_rpu.c +++ b/libavcodec/dovi_rpu.c @@ -48,6 +48,7 @@ void ff_dovi_ctx_unref(DOVIContext *s) { for (int i = 0; i < FF_ARRAY_ELEMS(s->vdr); i++) ff_refstruct_unref(&s->vdr[i]); + ff_refstruct_unref(&s->ext_blocks); av_free(s->rpu_buf); *s = (DOVIContext) { @@ -59,6 +60,7 @@ void ff_dovi_ctx_flush(DOVIContext *s) { for (int i = 0; i < FF_ARRAY_ELEMS(s->vdr); i++) ff_refstruct_unref(&s->vdr[i]); + ff_refstruct_unref(&s->ext_blocks); *s = (DOVIContext) { .logctx = s->logctx, @@ -77,6 +79,7 @@ void ff_dovi_ctx_replace(DOVIContext *s, const DOVIContext *s0) s->dv_profile = s0->dv_profile; for (int i = 0; i <= DOVI_MAX_DM_ID; i++) ff_refstruct_replace(&s->vdr[i], s0->vdr[i]); + ff_refstruct_replace(&s->ext_blocks, s0->ext_blocks); } void ff_dovi_update_cfg(DOVIContext *s, const AVDOVIDecoderConfigurationRecord *cfg) diff --git a/libavcodec/dovi_rpu.h b/libavcodec/dovi_rpu.h index 8dcc65bb40..9f26f332ce 100644 --- a/libavcodec/dovi_rpu.h +++ b/libavcodec/dovi_rpu.h @@ -45,6 +45,12 @@ typedef struct DOVIContext { const AVDOVIColorMetadata *color; /** + * Currently active extension blocks, updates on every ff_dovi_rpu_parse() + */ + AVDOVIDmData *ext_blocks; + int num_ext_blocks; + + /** * Private fields internal to dovi_rpu.c */ struct DOVIVdr *vdr[DOVI_MAX_DM_ID+1]; ///< RefStruct references |