summaryrefslogtreecommitdiff
path: root/libavcodec/hevc.h
diff options
context:
space:
mode:
authorGildas Cocherel <gildas.cocherel@laposte.net>2013-12-19 00:36:45 +0100
committerAnton Khirnov <anton@khirnov.net>2013-12-20 19:38:59 +0100
commit2d18aaa14bc2233b0647d2c5abb72e0bc828c2a8 (patch)
treec2d2951a0e0b00e3dbe89ac60f9a571e148448e9 /libavcodec/hevc.h
parent67bbaed5c498212bdd70b13b4fdcb37f4c9c77f5 (diff)
hevc: refactor Profile Tier Level
Also store a few PTL flags which were skipped before Signed-off-by: Anton Khirnov <anton@khirnov.net>
Diffstat (limited to 'libavcodec/hevc.h')
-rw-r--r--libavcodec/hevc.h25
1 files changed, 14 insertions, 11 deletions
diff --git a/libavcodec/hevc.h b/libavcodec/hevc.h
index bd6f50fdea..f2a8dfa9f2 100644
--- a/libavcodec/hevc.h
+++ b/libavcodec/hevc.h
@@ -328,21 +328,24 @@ typedef struct VUI {
int log2_max_mv_length_vertical;
} VUI;
+typedef struct PTLCommon {
+ uint8_t profile_space;
+ uint8_t tier_flag;
+ uint8_t profile_idc;
+ uint8_t profile_compatibility_flag[32];
+ uint8_t level_idc;
+ uint8_t progressive_source_flag;
+ uint8_t interlaced_source_flag;
+ uint8_t non_packed_constraint_flag;
+ uint8_t frame_only_constraint_flag;
+} PTLCommon;
+
typedef struct PTL {
- int general_profile_space;
- uint8_t general_tier_flag;
- int general_profile_idc;
- int general_profile_compatibility_flag[32];
- int general_level_idc;
+ PTLCommon general_ptl;
+ PTLCommon sub_layer_ptl[MAX_SUB_LAYERS];
uint8_t sub_layer_profile_present_flag[MAX_SUB_LAYERS];
uint8_t sub_layer_level_present_flag[MAX_SUB_LAYERS];
-
- int sub_layer_profile_space[MAX_SUB_LAYERS];
- uint8_t sub_layer_tier_flag[MAX_SUB_LAYERS];
- int sub_layer_profile_idc[MAX_SUB_LAYERS];
- uint8_t sub_layer_profile_compatibility_flags[MAX_SUB_LAYERS][32];
- int sub_layer_level_idc[MAX_SUB_LAYERS];
} PTL;
typedef struct HEVCVPS {