12 uint8_t forbidden_zero_bit : 1;
18 void COGSCORE_DLL_API print();
20static_assert(
sizeof(
H265NALheader) == 2,
"H265NALHeader size");
23 uint32_t profilePresentFlag;
24 uint32_t maxNumSubLayersMinus1;
26 uint32_t general_profile_space;
27 uint32_t general_tier_flag;
28 uint32_t general_profile_idc;
30 uint32_t general_profile_compatibility_flags;
32 uint32_t general_progressive_source_flag;
33 uint32_t general_interlaced_source_glag;
34 uint32_t general_non_packed_constraint_flag;
35 uint32_t general_frame_only_constraint_flag;
37 uint32_t general_max_12bit_constraint_flag;
38 uint32_t general_max_10bit_constraint_flag;
39 uint32_t general_max_8bit_constraint_flag;
40 uint32_t general_max_422chroma_constraint_flag;
41 uint32_t general_max_420chroma_constraint_flag;
42 uint32_t general_max_monochrome_constraint_flag;
43 uint32_t general_intra_constraint_flag;
44 uint32_t general_on_picture_only_constraint_flag;
45 uint32_t general_lower_bit_rate_constraint_flag;
47 uint32_t general_max_14bit_constraint_flag;
49 uint32_t general_one_picture_only_constraint_flag;
51 uint32_t general_inbld_flag;
53 uint32_t general_level_idc;
55 uint32_t sub_layer_profile_present_flag[8];
56 uint32_t sub_layer_level_present_flag[8];
58 uint32_t sub_layer_profile_space[8];
59 uint32_t sub_layer_tier_flag[8];
60 uint32_t sub_layer_profile_idc[8];
62 uint32_t sub_layer_profile_compatibility_flags[8];
64 uint32_t sub_layer_progressive_source_flag[8];
65 uint32_t sub_layer_interlaced_source_flag[8];
66 uint32_t sub_layer_non_packed_constraint_flag[8];
67 uint32_t sub_layer_frame_only_constraint_flag[8];
69 uint32_t sub_layer_max_12bit_constraint_flag[8];
70 uint32_t sub_layer_max_10bit_constraint_flag[8];
71 uint32_t sub_layer_max_8bit_constraint_flag[8];
72 uint32_t sub_layer_max_422chroma_constraint_flag[8];
73 uint32_t sub_layer_max_420chroma_constraint_flag[8];
74 uint32_t sub_layer_max_monochrome_constraint_flag[8];
75 uint32_t sub_layer_intra_constraint_flag[8];
76 uint32_t sub_layer_one_picture_only_constraint_flag[8];
77 uint32_t sub_layer_lower_bit_rate_constraint_flag[8];
79 uint32_t sub_layer_max_14bit_constraint_flag[8];
81 uint32_t sub_layer_inbld_flag[8];
83 uint32_t sub_layer_level_idc[8];
85 void COGSCORE_DLL_API print();
89 uint32_t vps_video_parameter_set_id;
90 uint32_t vps_base_layer_internal_flag;
91 uint32_t vps_base_layer_available_flag;
92 uint32_t vps_max_layers_minus1;
93 uint32_t vps_max_sub_layers_minus1;
94 uint32_t vps_temporal_id_nesting_flag;
98 uint32_t vps_sub_layer_ordering_info_present_flag;
99 uint32_t vps_max_dec_pic_buffering_minus1[64];
100 uint32_t vps_max_num_reorder_pics[64];
101 uint32_t vps_max_latency_increase_plus1[64];
103 uint32_t vps_max_layer_id;
104 uint32_t vps_num_layer_sets_minus1;
107 uint32_t vps_timing_info_present_flag;
108 uint32_t vps_num_units_in_tick;
109 uint32_t vps_time_scale;
110 uint32_t vps_poc_proportional_to_timing_flag;
111 uint32_t vps_num_ticks_poc_diff_one_minus1;
112 uint32_t vps_num_hrd_parameters;
113 uint32_t hrd_layer_set_idx[64];
114 uint32_t cprms_present_flag[64];
118 void COGSCORE_DLL_API print();
122 uint32_t sps_video_parameter_set_id;
123 uint32_t sps_max_sub_layers_minus1;
124 uint32_t sps_temporal_id_nesting_flag;
128 uint32_t sps_seq_parameter_set_id;
129 uint32_t chroma_format_idc;
130 uint32_t separate_colour_plane_flag;
131 uint32_t pic_width_in_luma_samples;
132 uint32_t pic_height_in_luma_samples;
133 uint32_t conformance_window_flag;
135 uint32_t conf_win_left_offset;
136 uint32_t conf_win_right_offset;
137 uint32_t conf_win_top_offset;
138 uint32_t conf_win_bottom_offset;
140 uint32_t bit_depth_luma_minus8;
141 uint32_t bit_depth_chroma_minus8;
142 uint32_t log2_max_pic_order_cnt_lsb_minus4;
143 uint32_t sps_sub_layer_ordering_info_present_flag;
145 uint32_t sps_max_dec_pic_buffering_minus1[9];
146 uint32_t sps_max_num_reorder_pics[9];
147 uint32_t sps_max_latency_increase_plus1[9];
149 uint32_t log2_min_luma_coding_block_size_minus3;
150 uint32_t log2_diff_max_min_luma_coding_block_size;
151 uint32_t log2_min_luma_transform_block_size_minus2;
152 uint32_t log2_diff_max_min_luma_transform_block_size;
154 uint32_t max_tranform_hierarchy_depth_inter;
155 uint32_t max_tranform_hierarchy_depth_intra;
156 uint32_t scaling_list_enabled_flag;
157 uint32_t sps_scaling_list_data_present_flag;
160 uint32_t amp_enabled_flag;
161 uint32_t sample_adaptive_offset_enabled_flag;
162 uint32_t pcm_enabled_flag;
163 uint32_t pcm_sample_bit_depth_luma_minus1;
164 uint32_t pcm_sample_bit_depth_chroma_minus1;
165 uint32_t log2_min_pcm_luma_coding_block_size_minus3;
166 uint32_t log2_idff_max_min_pcm_luma_coding_block_size;
167 uint32_t pcm_loop_filter_disabled_flag;
169 uint32_t num_short_term_ref_pic_sets;
172 uint32_t long_term_ref_pic_present_flag;
173 uint32_t num_long_term_ref_pics_sps;
174 uint32_t lt_ref_pic_poc_lsb_sps[32];
175 uint32_t used_by_cuff_pic_lt_sps_flag[32];
177 uint32_t sps_temporarl_mvp_enabled_flag;
178 uint32_t string_intra_smoothing_enabled_flag;
180 uint32_t vui_parameters_present_flag;
183 uint32_t sps_extension_present_flag;
184 uint32_t sps_range_extension_flag;
185 uint32_t sps_multilayer_extension_flag;
186 uint32_t sps_3d_extension_flag;
187 uint32_t sps_scc_extenion_flag;
188 uint32_t sps_extension_4bits;
195 void COGSCORE_DLL_API print();
199 void COGSCORE_DLL_API print();
204 uint32_t aspect_ratio_info_present;
209 uint32_t overscan_info_present_flag;
210 uint32_t overscan_appropriate_flag;
213 uint32_t video_signal_type_present_flag;
214 uint32_t video_format;
215 uint32_t video_full_range_flag;
216 uint32_t colour_description_present_flag;
217 uint32_t colour_primaries;
218 uint32_t transfer_characteristics;
219 uint32_t matrix_coefficients;
222 uint32_t chroma_loc_info_present_flag;
223 uint32_t chroma_sample_loc_type_top_field;
224 uint32_t chroma_sample_loc_type_bottom_field;
226 uint32_t neutral_chroma_indication_flag;
227 uint32_t field_seq_flag;
228 uint32_t frame_field_info_present_flag;
231 uint32_t default_display_window_flag;
232 uint32_t def_disp_win_left_offset;
233 uint32_t def_disp_win_right_offset;
234 uint32_t def_disp_win_top_offset;
235 uint32_t def_disp_win_bottom_offset;
238 uint32_t vui_timing_info_present_flag;
239 uint32_t vui_num_units_in_tick;
240 uint32_t vui_time_scale;
241 uint32_t vui_poc_proportional_to_timing_flag;
242 uint32_t vui_num_ticks_poc_diff_one_minus1;
243 uint32_t vui_hrd_parameters_present_flag;
247 uint32_t bitstream_restriction_flag;
248 uint32_t tiles_fixed_structure_flag;
249 uint32_t motion_vectors_over_pic_boundaries_flag;
250 uint32_t restricted_ref_pic_lists_flag;
251 uint32_t min_spatial_segmentation_idc;
252 uint32_t max_bytes_per_pic_denom;
253 uint32_t max_bits_per_min_cu_denom;
254 uint32_t log2_max_mv_length_horizontal;
255 uint32_t log2_max_mv_length_vertical;
257 void COGSCORE_DLL_API print();
268void COGSCORE_DLL_API video_parameter_set_nalu(
H265ParseData &parse,
const uint8_t *vps,
size_t vps_size);
269void COGSCORE_DLL_API seq_parameter_set_nalu(
H265ParseData &parse,
const uint8_t *sps,
size_t sps_size);
270void COGSCORE_DLL_API pic_parameter_set_nalu(
H265ParseData &parse,
const uint8_t *pps,
size_t pps_size);
272void COGSCORE_DLL_API byte_stream_nal_unit(
H265ParseData &parse,
const uint8_t *data,
size_t size);
274void COGSCORE_DLL_API extract_spspps(
const uint8_t *data,
size_t size, std::string &vps, std::string &sps, std::string &pps);
276bool COGSCORE_DLL_API extract_nalu_header(
H265NALheader &header,
const uint8_t *data,
size_t );
Contains the Engine, Renderer, resource managers and other systems needed to run Cogs....