summaryrefslogtreecommitdiffstats
path: root/libavcodec/cbs_h265.h
diff options
context:
space:
mode:
authorMark Thompson <sw@jkqxz.net>2018-10-27 22:01:16 +0100
committerMark Thompson <sw@jkqxz.net>2018-11-11 17:22:09 +0000
commit252e79663de802d8d0b38fbfdfeeda2d86b4e611 (patch)
tree0554de9ca18d23505d3cb9a87de6bb50db69d3a5 /libavcodec/cbs_h265.h
parentfd1d735c0b98bad99c9084d5a16935d96aa37297 (diff)
downloadffmpeg-streaming-252e79663de802d8d0b38fbfdfeeda2d86b4e611.zip
ffmpeg-streaming-252e79663de802d8d0b38fbfdfeeda2d86b4e611.tar.gz
cbs_h265: Add PTL parsing for sublayers
With fate test using the SLPPLP_A_VIDYO_2 conformance file, which contains two sublayers with full PTL information.
Diffstat (limited to 'libavcodec/cbs_h265.h')
-rw-r--r--libavcodec/cbs_h265.h26
1 files changed, 25 insertions, 1 deletions
diff --git a/libavcodec/cbs_h265.h b/libavcodec/cbs_h265.h
index cca1d75..97c9444 100644
--- a/libavcodec/cbs_h265.h
+++ b/libavcodec/cbs_h265.h
@@ -71,7 +71,31 @@ typedef struct H265RawProfileTierLevel {
uint8_t sub_layer_profile_present_flag[HEVC_MAX_SUB_LAYERS];
uint8_t sub_layer_level_present_flag[HEVC_MAX_SUB_LAYERS];
- // TODO: much of that again for each sub-layer.
+ uint8_t sub_layer_profile_space[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_tier_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_profile_idc[HEVC_MAX_SUB_LAYERS];
+
+ uint8_t sub_layer_profile_compatibility_flag[HEVC_MAX_SUB_LAYERS][32];
+
+ uint8_t sub_layer_progressive_source_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_interlaced_source_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_non_packed_constraint_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_frame_only_constraint_flag[HEVC_MAX_SUB_LAYERS];
+
+ uint8_t sub_layer_max_12bit_constraint_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_max_10bit_constraint_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_max_8bit_constraint_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_max_422chroma_constraint_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_max_420chroma_constraint_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_max_monochrome_constraint_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_intra_constraint_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_one_picture_only_constraint_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_lower_bit_rate_constraint_flag[HEVC_MAX_SUB_LAYERS];
+ uint8_t sub_layer_max_14bit_constraint_flag[HEVC_MAX_SUB_LAYERS];
+
+ uint8_t sub_layer_inbld_flag[HEVC_MAX_SUB_LAYERS];
+
+ uint8_t sub_layer_level_idc[HEVC_MAX_SUB_LAYERS];
} H265RawProfileTierLevel;
typedef struct H265RawSubLayerHRDParameters {
OpenPOWER on IntegriCloud