Home | History | Annotate | Download | only in omx

Lines Matching defs:rbsp

215 static void vui_parameters(struct vl_rbsp *rbsp)
220 static void scaling_list(struct vl_rbsp *rbsp, uint8_t *scalingList, unsigned sizeOfScalingList,
228 if (!vl_rbsp_u(rbsp, 1)) {
238 signed delta_scale = vl_rbsp_se(rbsp);
250 static struct pipe_h264_sps *seq_parameter_set_id(vid_dec_PrivateType *priv, struct vl_rbsp *rbsp)
252 unsigned id = vl_rbsp_ue(rbsp);
259 static void seq_parameter_set(vid_dec_PrivateType *priv, struct vl_rbsp *rbsp)
266 profile_idc = vl_rbsp_u(rbsp, 8);
269 vl_rbsp_u(rbsp, 1);
272 vl_rbsp_u(rbsp, 1);
275 vl_rbsp_u(rbsp, 1);
278 vl_rbsp_u(rbsp, 1);
281 vl_rbsp_u(rbsp, 1);
284 vl_rbsp_u(rbsp, 1);
287 vl_rbsp_u(rbsp, 2);
290 level_idc = vl_rbsp_u(rbsp, 8);
292 sps = seq_parameter_set_id(priv, rbsp);
306 sps->chroma_format_idc = vl_rbsp_ue(rbsp);
309 sps->separate_colour_plane_flag = vl_rbsp_u(rbsp, 1);
311 sps->bit_depth_luma_minus8 = vl_rbsp_ue(rbsp);
313 sps->bit_depth_chroma_minus8 = vl_rbsp_ue(rbsp);
316 vl_rbsp_u(rbsp, 1);
318 sps->seq_scaling_matrix_present_flag = vl_rbsp_u(rbsp, 1);
321 scaling_list(rbsp, sps->ScalingList4x4[0], 16, Default_4x4_Intra, Default_4x4_Intra);
322 scaling_list(rbsp, sps->ScalingList4x4[1], 16, Default_4x4_Intra, sps->ScalingList4x4[0]);
323 scaling_list(rbsp, sps->ScalingList4x4[2], 16, Default_4x4_Intra, sps->ScalingList4x4[1]);
324 scaling_list(rbsp, sps->ScalingList4x4[3], 16, Default_4x4_Inter, Default_4x4_Inter);
325 scaling_list(rbsp, sps->ScalingList4x4[4], 16, Default_4x4_Inter, sps->ScalingList4x4[3]);
326 scaling_list(rbsp, sps->ScalingList4x4[5], 16, Default_4x4_Inter, sps->ScalingList4x4[4]);
328 scaling_list(rbsp, sps->ScalingList8x8[0], 64, Default_8x8_Intra, Default_8x8_Intra);
329 scaling_list(rbsp, sps->ScalingList8x8[1], 64, Default_8x8_Inter, Default_8x8_Inter);
331 scaling_list(rbsp, sps->ScalingList8x8[2], 64, Default_8x8_Intra, sps->ScalingList8x8[0]);
332 scaling_list(rbsp, sps->ScalingList8x8[3], 64, Default_8x8_Inter, sps->ScalingList8x8[1]);
333 scaling_list(rbsp, sps->ScalingList8x8[4], 64, Default_8x8_Intra, sps->ScalingList8x8[2]);
334 scaling_list(rbsp, sps->ScalingList8x8[5], 64, Default_8x8_Inter, sps->ScalingList8x8[3]);
342 sps->log2_max_frame_num_minus4 = vl_rbsp_ue(rbsp);
344 sps->pic_order_cnt_type = vl_rbsp_ue(rbsp);
347 sps->log2_max_pic_order_cnt_lsb_minus4 = vl_rbsp_ue(rbsp);
349 sps->delta_pic_order_always_zero_flag = vl_rbsp_u(rbsp, 1);
351 sps->offset_for_non_ref_pic = vl_rbsp_se(rbsp);
353 sps->offset_for_top_to_bottom_field = vl_rbsp_se(rbsp);
355 sps->num_ref_frames_in_pic_order_cnt_cycle = vl_rbsp_ue(rbsp);
358 sps->offset_for_ref_frame[i] = vl_rbsp_se(rbsp);
361 sps->max_num_ref_frames = vl_rbsp_ue(rbsp);
364 vl_rbsp_u(rbsp, 1);
367 vl_rbsp_ue(rbsp);
370 vl_rbsp_ue(rbsp);
372 sps->frame_mbs_only_flag = vl_rbsp_u(rbsp, 1);
374 sps->mb_adaptive_frame_field_flag = vl_rbsp_u(rbsp, 1);
376 sps->direct_8x8_inference_flag = vl_rbsp_u(rbsp, 1);
379 if (vl_rbsp_u(rbsp, 1)) {
381 vl_rbsp_ue(rbsp);
384 vl_rbsp_ue(rbsp);
387 vl_rbsp_ue(rbsp);
390 vl_rbsp_ue(rbsp);
394 if (vl_rbsp_u(rbsp, 1))
395 vui_parameters(rbsp);
398 static struct pipe_h264_pps *pic_parameter_set_id(vid_dec_PrivateType *priv, struct vl_rbsp *rbsp)
400 unsigned id = vl_rbsp_ue(rbsp);
407 static void picture_parameter_set(vid_dec_PrivateType *priv, struct vl_rbsp *rbsp)
413 pps = pic_parameter_set_id(priv, rbsp);
419 sps = pps->sps = seq_parameter_set_id(priv, rbsp);
426 pps->entropy_coding_mode_flag = vl_rbsp_u(rbsp, 1);
428 pps->bottom_field_pic_order_in_frame_present_flag = vl_rbsp_u(rbsp, 1);
430 pps->num_slice_groups_minus1 = vl_rbsp_ue(rbsp);
432 pps->slice_group_map_type = vl_rbsp_ue(rbsp);
438 vl_rbsp_ue(rbsp);
444 vl_rbsp_ue(rbsp);
447 vl_rbsp_ue(rbsp);
453 vl_rbsp_u(rbsp, 1);
455 pps->slice_group_change_rate_minus1 = vl_rbsp_ue(rbsp);
461 pic_size_in_map_units_minus1 = vl_rbsp_ue(rbsp);
465 vl_rbsp_u(rbsp, log2(pps->num_slice_groups_minus1 + 1));
469 pps->num_ref_idx_l0_default_active_minus1 = vl_rbsp_ue(rbsp);
471 pps->num_ref_idx_l1_default_active_minus1 = vl_rbsp_ue(rbsp);
473 pps->weighted_pred_flag = vl_rbsp_u(rbsp, 1);
475 pps->weighted_bipred_idc = vl_rbsp_u(rbsp, 2);
477 pps->pic_init_qp_minus26 = vl_rbsp_se(rbsp);
480 vl_rbsp_se(rbsp);
482 pps->chroma_qp_index_offset = vl_rbsp_se(rbsp);
484 pps->deblocking_filter_control_present_flag = vl_rbsp_u(rbsp, 1);
486 pps->constrained_intra_pred_flag = vl_rbsp_u(rbsp, 1);
488 pps->redundant_pic_cnt_present_flag = vl_rbsp_u(rbsp, 1);
490 if (vl_rbsp_more_data(rbsp)) {
491 pps->transform_8x8_mode_flag = vl_rbsp_u(rbsp, 1);
494 if (vl_rbsp_u(rbsp, 1)) {
496 scaling_list(rbsp, pps->ScalingList4x4[0], 16, Default_4x4_Intra,
498 scaling_list(rbsp, pps->ScalingList4x4[1], 16, Default_4x4_Intra, pps->ScalingList4x4[0]);
499 scaling_list(rbsp, pps->ScalingList4x4[2], 16, Default_4x4_Intra, pps->ScalingList4x4[1]);
500 scaling_list(rbsp, pps->ScalingList4x4[3], 16, Default_4x4_Inter,
502 scaling_list(rbsp, pps->ScalingList4x4[4], 16, Default_4x4_Inter, pps->ScalingList4x4[3]);
503 scaling_list(rbsp, pps->ScalingList4x4[5], 16, Default_4x4_Inter, pps->ScalingList4x4[4]);
506 scaling_list(rbsp, pps->ScalingList8x8[0], 64, Default_8x8_Intra,
508 scaling_list(rbsp, pps->ScalingList8x8[1], 64, Default_8x8_Inter,
511 scaling_list(rbsp, pps->ScalingList8x8[2], 64, Default_8x8_Intra, pps->ScalingList8x8[0]);
512 scaling_list(rbsp, pps->ScalingList8x8[3], 64, Default_8x8_Inter, pps->ScalingList8x8[1]);
513 scaling_list(rbsp, pps->ScalingList8x8[4], 64, Default_8x8_Intra, pps->ScalingList8x8[2]);
514 scaling_list(rbsp, pps->ScalingList8x8[5], 64, Default_8x8_Inter, pps->ScalingList8x8[3]);
519 pps->second_chroma_qp_index_offset = vl_rbsp_se(rbsp);
523 static void ref_pic_list_mvc_modification(vid_dec_PrivateType *priv, struct vl_rbsp *rbsp)
529 static void ref_pic_list_modification(vid_dec_PrivateType *priv, struct vl_rbsp *rbsp,
536 if (vl_rbsp_u(rbsp, 1)) {
538 modification_of_pic_nums_idc = vl_rbsp_ue(rbsp);
542 vl_rbsp_ue(rbsp);
545 vl_rbsp_ue(rbsp);
552 if (vl_rbsp_u(rbsp, 1)) {
554 modification_of_pic_nums_idc = vl_rbsp_ue(rbsp);
558 vl_rbsp_ue(rbsp);
561 vl_rbsp_ue(rbsp);
567 static void pred_weight_table(vid_dec_PrivateType *priv, struct vl_rbsp *rbsp,
574 vl_rbsp_ue(rbsp);
578 vl_rbsp_ue(rbsp);
582 if (vl_rbsp_u(rbsp, 1)) {
584 vl_rbsp_se(rbsp);
586 vl_rbsp_se(rbsp);
590 if (vl_rbsp_u(rbsp, 1)) {
593 vl_rbsp_se(rbsp);
595 vl_rbsp_se(rbsp);
604 if (vl_rbsp_u(rbsp, 1)) {
606 vl_rbsp_se(rbsp);
608 vl_rbsp_se(rbsp);
612 if (vl_rbsp_u(rbsp, 1)) {
615 vl_rbsp_se(rbsp);
617 vl_rbsp_se(rbsp);
625 static void dec_ref_pic_marking(vid_dec_PrivateType *priv, struct vl_rbsp *rbsp,
632 vl_rbsp_u(rbsp, 1);
634 vl_rbsp_u(rbsp, 1);
637 if (vl_rbsp_u(rbsp, 1)) {
639 memory_management_control_operation = vl_rbsp_ue(rbsp);
644 vl_rbsp_ue(rbsp);
648 vl_rbsp_ue(rbsp);
653 vl_rbsp_ue(rbsp);
657 vl_rbsp_ue(rbsp);
663 static void slice_header(vid_dec_PrivateType *priv, struct vl_rbsp *rbsp,
678 vl_rbsp_ue(rbsp);
680 slice_type = vl_rbsp_ue(rbsp) % 5;
682 pps = pic_parameter_set_id(priv, rbsp);
697 vl_rbsp_u(rbsp, 2);
699 frame_num = vl_rbsp_u(rbsp, sps->log2_max_frame_num_minus4 + 4);
711 unsigned field_pic_flag = vl_rbsp_u(rbsp, 1);
719 unsigned bottom_field_flag = vl_rbsp_u(rbsp, 1);
729 unsigned idr_pic_id = vl_rbsp_ue(rbsp);
740 int pic_order_cnt_lsb = vl_rbsp_u(rbsp, log2_max_pic_order_cnt_lsb);
766 unsigned delta_pic_order_cnt_bottom = vl_rbsp_se(rbsp);
790 delta_pic_order_cnt[0] = vl_rbsp_se(rbsp);
798 delta_pic_order_cnt[1] = vl_rbsp_se(rbsp);
886 vl_rbsp_ue(rbsp);
890 vl_rbsp_u(rbsp, 1);
900 if (vl_rbsp_u(rbsp, 1)) {
901 priv->picture.h264.num_ref_idx_l0_active_minus1 = vl_rbsp_ue(rbsp);
904 priv->picture.h264.num_ref_idx_l1_active_minus1 = vl_rbsp_ue(rbsp);
909 ref_pic_list_mvc_modification(priv, rbsp);
911 ref_pic_list_modification(priv, rbsp, slice_type);
915 pred_weight_table(priv, rbsp, sps, slice_type);
918 dec_ref_pic_marking(priv, rbsp, IdrPicFlag);
922 vl_rbsp_ue(rbsp);
925 vl_rbsp_se(rbsp);
930 vl_rbsp_u(rbsp, 1);
933 vl_rbsp_se(rbsp);
937 unsigned disable_deblocking_filter_idc = vl_rbsp_ue(rbsp);
941 vl_rbsp_se(rbsp);
944 vl_rbsp_se(rbsp);
950 vl_rbsp_u(rbsp, 2);
992 struct vl_rbsp rbsp;
993 vl_rbsp_init(&rbsp, vlc, ~0);
994 seq_parameter_set(priv, &rbsp);
997 struct vl_rbsp rbsp;
998 vl_rbsp_init(&rbsp, vlc, ~0);
999 picture_parameter_set(priv, &rbsp);
1005 struct vl_rbsp rbsp;
1020 vl_rbsp_init(&rbsp, vlc, 128);
1021 slice_header(priv, &rbsp, nal_ref_idc, nal_unit_type);