aboutsummaryrefslogtreecommitdiff
path: root/Src/h264dec/lcommon/inc/frame.h
diff options
context:
space:
mode:
Diffstat (limited to 'Src/h264dec/lcommon/inc/frame.h')
-rw-r--r--Src/h264dec/lcommon/inc/frame.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/Src/h264dec/lcommon/inc/frame.h b/Src/h264dec/lcommon/inc/frame.h
new file mode 100644
index 00000000..25507d51
--- /dev/null
+++ b/Src/h264dec/lcommon/inc/frame.h
@@ -0,0 +1,50 @@
+
+/*!
+ ************************************************************************
+ * \file frame.h
+ *
+ * \brief
+ * headers for frame format related information
+ *
+ * \author
+ *
+ ************************************************************************
+ */
+#ifndef H264_FRAME_H_
+#define H264_FRAME_H_
+#pragma once
+
+typedef enum {
+ CM_UNKNOWN = -1,
+ CM_YUV = 0,
+ CM_RGB = 1,
+ CM_XYZ = 2
+} ColorModel;
+
+typedef enum {
+ CF_UNKNOWN = -1, //!< Unknown color format
+ YUV400 = 0, //!< Monochrome
+ YUV420 = 1, //!< 4:2:0
+ YUV422 = 2, //!< 4:2:2
+ YUV444 = 3 //!< 4:4:4
+} ColorFormat;
+
+typedef struct frame_format
+{
+ ColorFormat yuv_format; //!< YUV format (0=4:0:0, 1=4:2:0, 2=4:2:2, 3=4:4:4)
+ int width; //!< luma component frame width
+ int height; //!< luma component frame height
+ int height_cr; //!< chroma component frame width
+ int width_cr; //!< chroma component frame height
+ int width_crop; //!< width after cropping consideration
+ int height_crop; //!< height after cropping consideration
+ int mb_width; //!< luma component frame width
+ int mb_height; //!< luma component frame height
+ int size_cmp[3]; //!< component sizes
+ int size; //!< total image size
+ int bit_depth[3]; //!< component bit depth
+ int max_value[3]; //!< component max value
+ int max_value_sq[3]; //!< component max value squared
+} FrameFormat;
+
+#endif