aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/h2645_sei.h
diff options
context:
space:
mode:
authorJan Ekström <jeebjp@gmail.com>2023-07-11 23:40:45 +0300
committerJan Ekström <jeebjp@gmail.com>2023-07-27 21:45:43 +0300
commit33358b862c8b796362218f12555e351aaf35a8f4 (patch)
tree8d88ac3a75114e590eb7e1a1e1965c151292540c /libavcodec/h2645_sei.h
parent0ba719f726632d73592311615087a0d64aa2fb60 (diff)
downloadffmpeg-33358b862c8b796362218f12555e351aaf35a8f4.tar.gz
avcodec: move mastering display colour volume SEI handling to h2645_sei
This allows this common H.274 SEI to be parsed from both H.264 as well as HEVC, as well as probably from VVC in the future. Generally attempts to keep the original code as similar as possible. FATE test refererence changes only change the order of side data export within a single frame. Nothing else seems to have changed.
Diffstat (limited to 'libavcodec/h2645_sei.h')
-rw-r--r--libavcodec/h2645_sei.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/libavcodec/h2645_sei.h b/libavcodec/h2645_sei.h
index e07ae10376..83e1b2ec16 100644
--- a/libavcodec/h2645_sei.h
+++ b/libavcodec/h2645_sei.h
@@ -105,6 +105,14 @@ typedef struct H2645SEIFilmGrainCharacteristics {
int persistence_flag; //< HEVC only
} H2645SEIFilmGrainCharacteristics;
+typedef struct H2645SEIMasteringDisplay {
+ int present;
+ uint16_t display_primaries[3][2];
+ uint16_t white_point[2];
+ uint32_t max_luminance;
+ uint32_t min_luminance;
+} H2645SEIMasteringDisplay;
+
typedef struct H2645SEI {
H2645SEIA53Caption a53_caption;
H2645SEIAFD afd;
@@ -116,6 +124,7 @@ typedef struct H2645SEI {
H2645SEIAlternativeTransfer alternative_transfer;
H2645SEIFilmGrainCharacteristics film_grain_characteristics;
H2645SEIAmbientViewingEnvironment ambient_viewing_environment;
+ H2645SEIMasteringDisplay mastering_display;
} H2645SEI;
enum {