summaryrefslogtreecommitdiff
path: root/libavcodec/cbs_sei.h
diff options
context:
space:
mode:
authorMark Thompson <sw@jkqxz.net>2021-01-01 21:35:11 +0000
committerMark Thompson <sw@jkqxz.net>2021-01-21 17:13:54 +0000
commit4bf338480035238b3ff595ebd761688fc0db9e11 (patch)
tree7fc9542edb69a2e3537885bcdcbbf1161f1a56e1 /libavcodec/cbs_sei.h
parentdf4e2b923c21ee4565eb1789f96fba0ab55a3c00 (diff)
downloadffmpeg-4bf338480035238b3ff595ebd761688fc0db9e11.tar.gz
cbs_h2645: Merge SEI messages in common between codecs
Make a new template file for common SEI messages - this will also apply to H.266.
Diffstat (limited to 'libavcodec/cbs_sei.h')
-rw-r--r--libavcodec/cbs_sei.h60
1 files changed, 60 insertions, 0 deletions
diff --git a/libavcodec/cbs_sei.h b/libavcodec/cbs_sei.h
new file mode 100644
index 0000000000..95beabf4d7
--- /dev/null
+++ b/libavcodec/cbs_sei.h
@@ -0,0 +1,60 @@
+/*
+ * This file is part of FFmpeg.
+ *
+ * FFmpeg is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * FFmpeg is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with FFmpeg; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#ifndef AVCODEC_CBS_SEI_H
+#define AVCODEC_CBS_SEI_H
+
+#include <stddef.h>
+#include <stdint.h>
+#include "libavutil/buffer.h"
+
+
+typedef struct SEIRawUserDataRegistered {
+ uint8_t itu_t_t35_country_code;
+ uint8_t itu_t_t35_country_code_extension_byte;
+ uint8_t *data;
+ AVBufferRef *data_ref;
+ size_t data_length;
+} SEIRawUserDataRegistered;
+
+typedef struct SEIRawUserDataUnregistered {
+ uint8_t uuid_iso_iec_11578[16];
+ uint8_t *data;
+ AVBufferRef *data_ref;
+ size_t data_length;
+} SEIRawUserDataUnregistered;
+
+typedef struct SEIRawMasteringDisplayColourVolume {
+ uint16_t display_primaries_x[3];
+ uint16_t display_primaries_y[3];
+ uint16_t white_point_x;
+ uint16_t white_point_y;
+ uint32_t max_display_mastering_luminance;
+ uint32_t min_display_mastering_luminance;
+} SEIRawMasteringDisplayColourVolume;
+
+typedef struct SEIRawContentLightLevelInfo {
+ uint16_t max_content_light_level;
+ uint16_t max_pic_average_light_level;
+} SEIRawContentLightLevelInfo;
+
+typedef struct SEIRawAlternativeTransferCharacteristics {
+ uint8_t preferred_transfer_characteristics;
+} SEIRawAlternativeTransferCharacteristics;
+
+#endif /* AVCODEC_CBS_SEI_H */