H.264 picture parameter sets member value meaning learning notes

Source: Internet
Author: User
-Picture parameter sets
1. pic_parameter_set_id
Pic_parameter_set_id indicates that the value of PSP. pic_parameter_set_id corresponding to the slice header should be between 0 and 255, including 0 and 255.
2. seq_parameter_set_id
Set_parameter_set_id indicates that the active SPS. seq_parameter_set_id should be between 0 and 31, including the boundary value.
3. entropy_coding_mode_flag
Entropy_coding_mode_flag determines the method used for decoding.
If entropy_coding_mode_flag is 0, use the exp-golomb encoding method.
If entropy_coding_mode_flag is 1, use the cabac method.
4. pic_order_present_flag
Pic_order_present_flag is equal to 1, indicating that the image sequence value exists in the slice header, and pic_order_present_flag is 0, indicating that the Image Sequence Value in the slice header does not exist.
5. num_slice_groups_minus1
Num_slice_groups_minus1 and 1 indicate the number of slice groups in an image. When num_slice_groups_minus1 is 0, all slice groups belong to the same group.
6. slice_group_map_type
Slice_group_map_type indicates the ing method from the slice_group_map_type to the slice group. The value of slice_group_map_type can be 0 to 6.
Slice_group_map_type = 0 indicates the interpolation slice group.
Slice_group_map_type = 1 indicates discrete slice group ing
Slice_group_map_type = 2 indicates one or more "foreground" slices and one "remaining" slice.
Slice_group_map_type = 3, 4, 5 indicates that the slice group is changed. When num_slice_groups_minus1 is not 1, slice_group_map_type should not be 3, 4, 5.
When slice_group_map_type = 6, it indicates that each slice group unit is assigned an external slice value from the external.
If frame_mbs_only_flag is 0 and mb_adaptive_frame_field_flag is 1 and the encoded image is one frame, the ING unit of the slice group is a macro block pair.
If frame_mbs_only_flag is 1 and mb_adaptive_frame_field_flag is 1 and the encoded image is one field, the ING unit of the slice group is a macro block.
In other cases, the slice group unit is two macro blocks, which are vertical and continuous in a frame of Macro Block pairs.
7. run_length_minus1 [I] is used to assign to the I-th slice group in Grating Scan to specify the number of continuous slice group units. run_length_minus1 [I] should be 0 to PicSizeInMapUnits-1.
Top_left [I] And bottom_right [I] specify the top-left and bottom-right corners of a rectangle, respectively. top_left [I] And bottom_right [I] are Slice Group map Unit positions in a raster scan of the picture for the Slice Group map units. for each rectangle I, all of the following constraints shall be obeyed by the values of the syntax elements top_left [I] And bottom_right [I]
8. top_left [I] And bottom_right [I]
Top_left [I] And bottom_right [I] indicate the upper left corner and lower right corner of the rectangle area. top_left [I] And bottom_right [I] is the position of the grating scan for an image in a slice group. for each rectangle I, top_left [I] And bottom_right [I] must meet all of the following constraints:
A) The value of top_left [I] should be smaller or equal to that of bottom_right [I] and smaller than that of picsizeinmapunits.
B) (top_left [I] % picwidthinmbs) should be smaller than (bottom_right [I] % picwidthinmbs) or equal.
9. In slice_group_change_direction_flag, when slice_group_map_type is 3, 4, and 5, the ing type is extracted along with slice_group_map_type,
10. slice_group_change_rate_minus1
Delimiter is used to specify the value of the slicegroupchangerate variable. slicegroupchangerate indicates the multiplier for the number of slices when the slice group size is different for each image. slice_group_change_rate_minus1 value range is 0 to PicSizeInMapUnits-1:
Slicegroupchangerate = slice_group_change_rate_minus1 + 1;
11. pic_size_in_map_units_minus1
Pic_size_in_map_units_minus1 indicates the number of cell ing units used in an image. pic_size_in_map_units_minus1 should be equal to the PicSizeInMapUnits-1.
12. slice_group_id [I]
Slice_group_id [I] indicates the slice group I specified by the grating scan sequence in the slice group unit. slice_group_id [I] should be 0 to num_slice_groups_minus1.
13. num_ref_idx_l0_active_minus1 indicates the maximum reference index value in reference image list 0. It is used to decode each slice of the image. list 0 is used when num_ref_idx_active_override_flag is 0. when the mbaffframeflag value is 1, num_ref_idx_l0_active_minus1 is the maximum index value of the decoded frame macro block, and 2 * num_ref_idx_10_active_minus1 + 1 is the maximum index value of the decoded macro block. the value of num_ref_idx_l0_active_minus1 is 0 to 31.
14. num_ref_idx_l1_active_minus1 has the same semantics as num_ref_idx_l0_active_minus1, but it is for list 1.
15. weighted_pred_flag
Weighted_pred_flag = 0 indicates that the weighted prediction is not used in P and SP slices.
Weighted_pred_flag = 1 indicates that weighted prediction is used in P and SP slices.
16. weighted_bipred_idc
Weighted_bipred_idc = 0 indicates that the default weighted prediction is applied to B slices.
Weighted_bipred_idc = 1 indicates that external weighted prediction is applied to B slices.
Weighted_bipred_idc = 2 indicates that the internal weighted prediction is applied to B slices.
The value of weighted_bipred_idc is 0, 1, 2.
17. pic_init_qp_minus26 indicates that the initial value of sliceqpy for each slice is reduced by 26. the initial value changes when the non-0 slice_qp_delta is decoded in the slice layer and the non-0 mb_qp_delta value is decoded in the macro block layer. pic_init_qp_minus26 should be rounded to-26 to + 25.
18. pic_init_qs_minus26
Pic_init_qs_minus26 indicates that the starting value of sliceqsy in the SP or Si slice is reduced by 26. this initial value is modified when a non-0 slice_qs_delta is decoded in the slice layer. the value of pic_init_qs_minus26 is-26 to 25.
19. chroma_qp_index_offset
Chroma_qp_index_offset indicates the offset that should be added to qpy and qsy when querying the qpc table. The value of chroma_qp_index_offset is-12 to 12.
20. deblocking_filter_control_present_flag
Deblocking_filter_control_present_flag = 1 indicates that the feature value used to control block filtering at the slice header exists.
Deblocking_filter_control_present_flag = 0 indicates that the feature value used to control block filtering at the slice header does not exist.
21. constrained_intra_pred_flag
Constrained_intra_pred_flag = 0 indicates that residual data and adjacent Macro Block decoding sampling are allowed during intra-frame prediction.
Constrained_intra_pred_flag = 1 indicates prediction within a restricted frame. in Macro Block prediction, the intra-frame Macro Block prediction mode only uses the remaining data and decodes the sampled values from the I and Si macro blocks.
22. redundant_pic_cnt_present_flag
Redundant_pic_cnt_present_flag = 0 indicates that redundant_pic_cnt does not exist in the shard header.
Redundant_pic_cnt_present_flag = 1 indicates that redundant_pic_cnt exists in Data Partition B and Data Partition C in all slice headers. (dynasty network wangchao.net.cn)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.