aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/dovi_rpu.h
diff options
context:
space:
mode:
authorNiklas Haas <git@haasn.dev>2024-06-09 15:04:45 +0200
committerNiklas Haas <git@haasn.dev>2024-06-18 21:18:30 +0200
commit7ee64631f625372a5796de46b1cda4c9a50d4b74 (patch)
tree47ddae2018eba4f3b13901bdfc167ef4b3c8da72 /libavcodec/dovi_rpu.h
parent68a22ac936249935136a2dc266cba55c9c3e5f96 (diff)
downloadffmpeg-7ee64631f625372a5796de46b1cda4c9a50d4b74.tar.gz
avcodec/dovi_rpu: fix dm_metadata_id handling
Despite the suggestive size limits, this metadata ID has nothing to do with the VDR metadata ID used for the data mappings. Actually, the specification leaves them wholly unexplained, other than acknowleding their existence. Must be some secret dolby sauce. They're not even involved in DM metadata compression, which is handled using an entirely separate ID. That leaves us with a lack of anything sensible to do with these IDs. Since we unfortunately only expose one `dm_metadata_id` field to the user, just ensure that they match; which appears to always be the case in practice. If somebody ever hits this error, I would really much rather like to see the triggering file.
Diffstat (limited to 'libavcodec/dovi_rpu.h')
-rw-r--r--libavcodec/dovi_rpu.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/libavcodec/dovi_rpu.h b/libavcodec/dovi_rpu.h
index c784afbe4b..da9bd67cde 100644
--- a/libavcodec/dovi_rpu.h
+++ b/libavcodec/dovi_rpu.h
@@ -74,6 +74,7 @@ typedef struct DOVIContext {
/**
* Private fields internal to dovi_rpu.c
*/
+ AVDOVIColorMetadata *dm; ///< RefStruct
struct DOVIVdr *vdr[DOVI_MAX_DM_ID+1]; ///< RefStruct references
uint8_t *rpu_buf; ///< temporary buffer
unsigned rpu_buf_sz;