[vlc-devel] [PATCH] include: add enums for colorimetry
Rémi Denis-Courmont
remi at remlab.net
Sat Apr 16 13:42:11 CEST 2016
---
include/vlc_es.h | 45 +++++++++++++++++++++++++++++++++++++++++++++
include/vlc_plugin.h | 4 ++--
2 files changed, 47 insertions(+), 2 deletions(-)
diff --git a/include/vlc_es.h b/include/vlc_es.h
index 97cdb78..7e141a4 100644
--- a/include/vlc_es.h
+++ b/include/vlc_es.h
@@ -193,6 +193,48 @@ typedef enum video_transform_t
} video_transform_t;
/**
+ * Video color primaries (a.k.a. chromacities)
+ */
+typedef enum video_color_primaries_t
+{
+ COLOR_PRIMARIES_UNDEF,
+ COLOR_PRIMARIES_BT601_525,
+ COLOR_PRIMARIES_BT601_625,
+ COLOR_PRIMARIES_BT709,
+ COLOR_PRIMARIES_BT2020,
+ COLOR_PRIMARIES_DCI_P3,
+#define COLOR_SRGB COLOR_BT709
+} video_color_primaries_t;
+
+/**
+ * Video transfer functions
+ */
+typedef enum video_transfer_func_t
+{
+ TRANSFER_FUNC_UNDEF,
+ TRANSFER_FUNC_LINEAR,
+ TRANSFER_FUNC_SRGB /*< Gamma 2.2 */,
+ TRANSFER_FUNC_BT709,
+#define TRANSFER_FUNC_BT2020 TRANSFER_FUNC_BT709
+} video_transfer_func_t;
+
+/**
+ * Video color space (i.e. YCbCr matrices)
+ */
+typedef enum video_color_space_t
+{
+ COLOR_SPACE_UNDEF,
+ COLOR_SPACE_BT601_LIMITED,
+#define COLOR_SPACE_BT601 COLOR_SPACE_BT601_LIMITED
+ COLOR_SPACE_BT601_FULL,
+ COLOR_SPACE_BT709_LIMITED,
+#define COLOR_SPACE_BT709 COLOR_SPACE_BT709_LIMITED
+ COLOR_SPACE_BT709_FULL,
+ COLOR_SPACE_BT2020_LIMITED,
+#define COLOR_SPACE_BT2020 COLOR_SPACE_BT2020_LIMITED
+} video_color_space_t;
+
+/**
* video format description
*/
struct video_format_t
@@ -220,6 +262,9 @@ struct video_format_t
int i_rbshift, i_lbshift;
video_palette_t *p_palette; /**< video palette from demuxer */
video_orientation_t orientation; /**< picture orientation */
+ video_color_primaries_t primaries; /**< color primaries */
+ video_transfer_func_t transfer; /**< transfer function */
+ video_color_space_t space; /**< YCbCr color space */
};
/**
diff --git a/include/vlc_plugin.h b/include/vlc_plugin.h
index 950f6ad..23fff51 100644
--- a/include/vlc_plugin.h
+++ b/include/vlc_plugin.h
@@ -186,8 +186,8 @@ enum vlc_module_properties
/**
* Current plugin ABI version
*/
-# define MODULE_SYMBOL 3_0_0a
-# define MODULE_SUFFIX "__3_0_0a"
+# define MODULE_SYMBOL 3_0_0b
+# define MODULE_SUFFIX "__3_0_0b"
/*****************************************************************************
* Add a few defines. You do not want to read this section. Really.
--
1.9.1
More information about the vlc-devel
mailing list