Lines Matching defs:sps

198 static void nal_h264_rbsp_sps(struct rbsp *rbsp, struct nal_h264_sps *sps)
202 if (!sps) {
207 rbsp_bits(rbsp, 8, &sps->profile_idc);
208 rbsp_bit(rbsp, &sps->constraint_set0_flag);
209 rbsp_bit(rbsp, &sps->constraint_set1_flag);
210 rbsp_bit(rbsp, &sps->constraint_set2_flag);
211 rbsp_bit(rbsp, &sps->constraint_set3_flag);
212 rbsp_bit(rbsp, &sps->constraint_set4_flag);
213 rbsp_bit(rbsp, &sps->constraint_set5_flag);
214 rbsp_bits(rbsp, 2, &sps->reserved_zero_2bits);
215 rbsp_bits(rbsp, 8, &sps->level_idc);
217 rbsp_uev(rbsp, &sps->seq_parameter_set_id);
219 if (sps->profile_idc == 100 || sps->profile_idc == 110 ||
220 sps->profile_idc == 122 || sps->profile_idc == 244 ||
221 sps->profile_idc == 44 || sps->profile_idc == 83 ||
222 sps->profile_idc == 86 || sps->profile_idc == 118 ||
223 sps->profile_idc == 128 || sps->profile_idc == 138 ||
224 sps->profile_idc == 139 || sps->profile_idc == 134 ||
225 sps->profile_idc == 135) {
226 rbsp_uev(rbsp, &sps->chroma_format_idc);
228 if (sps->chroma_format_idc == 3)
229 rbsp_bit(rbsp, &sps->separate_colour_plane_flag);
230 rbsp_uev(rbsp, &sps->bit_depth_luma_minus8);
231 rbsp_uev(rbsp, &sps->bit_depth_chroma_minus8);
232 rbsp_bit(rbsp, &sps->qpprime_y_zero_transform_bypass_flag);
233 rbsp_bit(rbsp, &sps->seq_scaling_matrix_present_flag);
234 if (sps->seq_scaling_matrix_present_flag)
238 rbsp_uev(rbsp, &sps->log2_max_frame_num_minus4);
240 rbsp_uev(rbsp, &sps->pic_order_cnt_type);
241 switch (sps->pic_order_cnt_type) {
243 rbsp_uev(rbsp, &sps->log2_max_pic_order_cnt_lsb_minus4);
246 rbsp_bit(rbsp, &sps->delta_pic_order_always_zero_flag);
247 rbsp_sev(rbsp, &sps->offset_for_non_ref_pic);
248 rbsp_sev(rbsp, &sps->offset_for_top_to_bottom_field);
250 rbsp_uev(rbsp, &sps->num_ref_frames_in_pic_order_cnt_cycle);
251 for (i = 0; i < sps->num_ref_frames_in_pic_order_cnt_cycle; i++)
252 rbsp_sev(rbsp, &sps->offset_for_ref_frame[i]);
259 rbsp_uev(rbsp, &sps->max_num_ref_frames);
260 rbsp_bit(rbsp, &sps->gaps_in_frame_num_value_allowed_flag);
261 rbsp_uev(rbsp, &sps->pic_width_in_mbs_minus1);
262 rbsp_uev(rbsp, &sps->pic_height_in_map_units_minus1);
264 rbsp_bit(rbsp, &sps->frame_mbs_only_flag);
265 if (!sps->frame_mbs_only_flag)
266 rbsp_bit(rbsp, &sps->mb_adaptive_frame_field_flag);
268 rbsp_bit(rbsp, &sps->direct_8x8_inference_flag);
270 rbsp_bit(rbsp, &sps->frame_cropping_flag);
271 if (sps->frame_cropping_flag) {
272 rbsp_uev(rbsp, &sps->crop_left);
273 rbsp_uev(rbsp, &sps->crop_right);
274 rbsp_uev(rbsp, &sps->crop_top);
275 rbsp_uev(rbsp, &sps->crop_bottom);
278 rbsp_bit(rbsp, &sps->vui_parameters_present_flag);
279 if (sps->vui_parameters_present_flag)
280 nal_h264_rbsp_vui_parameters(rbsp, &sps->vui);
344 * @sps: &struct nal_h264_sps to convert to RBSP
346 * Convert @sps to RBSP data and write it into @dest.
354 void *dest, size_t n, struct nal_h264_sps *sps)
372 nal_h264_rbsp_sps(&rbsp, sps);
386 * @sps: the &struct nal_h264_sps to fill from the RBSP data
390 * Read RBSP data from @src and use it to fill @sps.
395 struct nal_h264_sps *sps, void *src, size_t n)
419 nal_h264_rbsp_sps(&rbsp, sps);