![]() |
TSDuck v3.43-4480
MPEG Transport Stream Toolkit
|
Representation of an HEVC sequence parameter set access unit. More...
#include <tsHEVCSequenceParameterSet.h>


Classes | |
| class | LongTermRef |
| < An entry for lt_ref values More... | |
| class | SPSMax |
| < An entry for sps_max values More... | |
Public Types | |
| using | SuperClass = AbstractHEVCAccessUnit |
| Reference to the superclass. | |
Public Member Functions | |
| HEVCSequenceParameterSet (const uint8_t *data=nullptr, size_t size=0) | |
| Constructor from a binary area. | |
| uint8_t | chroma () const |
| Get chroma_format_idc, applying default value (see H.264 7.4.2.1.1). | |
| virtual void | clear () override |
| Clear all values. | |
| virtual std::ostream & | display (std::ostream &strm=std::cout, const UString &margin=UString(), int level=Severity::Info) const override |
| Display the content of this object to a stream. | |
| uint32_t | frameHeight () const |
| Frame height in pixels. | |
| uint32_t | frameWidth () const |
| Frame width in pixels. | |
| virtual bool | parse (const uint8_t *, size_t, std::initializer_list< uint32_t >=std::initializer_list< uint32_t >()) override |
| Parse a memory area containing binary video data of the expected type. | |
Public Attributes | |
| uint8_t | amp_enabled_flag = 0 |
| amp_enabled_flag | |
| uint32_t | bit_depth_chroma_minus8 = 0 |
| bit_depth_chroma_minus8 | |
| uint32_t | bit_depth_luma_minus8 = 0 |
| bit_depth_luma_minus8 | |
| uint32_t | chroma_format_idc = 0 |
| chroma_format_idc | |
| uint32_t | conf_win_bottom_offset = 0 |
| conf_win_bottom_offset | |
| uint32_t | conf_win_left_offset = 0 |
| conf_win_left_offset | |
| uint32_t | conf_win_right_offset = 0 |
| conf_win_right_offset | |
| uint32_t | conf_win_top_offset = 0 |
| conf_win_top_offset | |
| uint8_t | conformance_window_flag = 0 |
| conformance_window_flag | |
| uint8_t | forbidden_zero_bit = 0 |
| 1 bit | |
| uint32_t | log2_diff_max_min_luma_coding_block_size = 0 |
| log2_diff_max_min_luma_coding_block_size | |
| uint32_t | log2_diff_max_min_luma_transform_block_size = 0 |
| log2_diff_max_min_luma_transform_block_size | |
| uint32_t | log2_diff_max_min_pcm_luma_coding_block_size = 0 |
| log2_diff_max_min_pcm_luma_coding_block_size | |
| uint32_t | log2_max_pic_order_cnt_lsb_minus4 = 0 |
| log2_max_pic_order_cnt_lsb_minus4 | |
| uint32_t | log2_min_luma_coding_block_size_minus3 = 0 |
| log2_min_luma_coding_block_size_minus3 | |
| uint32_t | log2_min_luma_transform_block_size_minus2 = 0 |
| log2_min_luma_transform_block_size_minus2 | |
| uint32_t | log2_min_pcm_luma_coding_block_size_minus3 = 0 |
| log2_min_pcm_luma_coding_block_size_minus3 | |
| uint8_t | long_term_ref_pics_present_flag = 0 |
| long_term_ref_pics_present_flag | |
| std::vector< LongTermRef > | lt_ref {} |
| lt_ref values | |
| uint32_t | max_transform_hierarchy_depth_inter = 0 |
| max_transform_hierarchy_depth_inter | |
| uint32_t | max_transform_hierarchy_depth_intra = 0 |
| max_transform_hierarchy_depth_intra | |
| uint8_t | nal_unit_type = 0 |
| 6 bits | |
| uint8_t | nuh_layer_id = 0 |
| 6 bits | |
| uint8_t | nuh_temporal_id_plus1 = 0 |
| 3 bits | |
| uint32_t | num_long_term_ref_pics_sps = 0 |
| num_long_term_ref_pics_sps | |
| uint32_t | num_short_term_ref_pic_sets = 0 |
| num_short_term_ref_pic_sets | |
| uint8_t | pcm_enabled_flag = 0 |
| pcm_enabled_flag | |
| uint8_t | pcm_loop_filter_disabled_flag = 0 |
| pcm_loop_filter_disabled_flag | |
| uint8_t | pcm_sample_bit_depth_chroma_minus1 = 0 |
| pcm_sample_bit_depth_chroma_minus1 | |
| uint8_t | pcm_sample_bit_depth_luma_minus1 = 0 |
| pcm_sample_bit_depth_luma_minus1 | |
| uint32_t | pic_height_in_luma_samples = 0 |
| pic_height_in_luma_samples | |
| uint32_t | pic_width_in_luma_samples = 0 |
| pic_width_in_luma_samples | |
| HEVCProfileTierLevel | profile_tier_level {} |
| profile_tier_level | |
| size_t | rbsp_trailing_bits_count = 0 |
| rbsp_trailing_bits_count | |
| bool | rbsp_trailing_bits_valid = false |
| rbsp_trailing_bits_valid | |
| uint8_t | sample_adaptive_offset_enabled_flag = 0 |
| sample_adaptive_offset_enabled_flag | |
| HEVCScalingListData | scaling_list_data {} |
| scaling_list_data | |
| uint8_t | scaling_list_enabled_flag = 0 |
| scaling_list_enabled_flag | |
| uint8_t | separate_colour_plane_flag = 0 |
| separate_colour_plane_flag | |
| uint8_t | sps_3d_extension_flag = 0 |
| sps_3d_extension_flag | |
| uint8_t | sps_extension_4bits = 0 |
| sps_extension_4bits | |
| uint8_t | sps_extension_present_flag = 0 |
| sps_extension_present_flag | |
| std::vector< SPSMax > | sps_max {} |
| sps_max values | |
| uint8_t | sps_max_sub_layers_minus1 = 0 |
| sps_max_sub_layers_minus1 | |
| uint8_t | sps_multilayer_extension_flag = 0 |
| sps_multilayer_extension_flag | |
| uint8_t | sps_range_extension_flag = 0 |
| sps_range_extension_flag | |
| uint8_t | sps_scaling_list_data_present_flag = 0 |
| sps_scaling_list_data_present_flag | |
| uint8_t | sps_scc_extension_flag = 0 |
| sps_scc_extension_flag | |
| uint32_t | sps_seq_parameter_set_id = 0 |
| sps_seq_parameter_set_id | |
| uint8_t | sps_sub_layer_ordering_info_present_flag = 0 |
| sps_sub_layer_ordering_info_present_flag | |
| uint8_t | sps_temporal_id_nesting_flag = 0 |
| sps_temporal_id_nesting_flag | |
| uint8_t | sps_temporal_mvp_enabled_flag = 0 |
| sps_temporal_mvp_enabled_flag | |
| uint8_t | sps_video_parameter_set_id = 0 |
| sps_video_parameter_set_id | |
| HEVCShortTermReferencePictureSetList | st_ref_pic_set {} |
| st_ref_pic_set | |
| uint8_t | strong_intra_smoothing_enabled_flag = 0 |
| strong_intra_smoothing_enabled_flag | |
| bool | valid = false |
| Valid flag. | |
| HEVCVUIParameters | vui {} |
| vui | |
| uint8_t | vui_parameters_present_flag = 0 |
| vui_parameters_present_flag | |
Protected Member Functions | |
| template<typename INT > requires std::integral<INT> | |
| void | disp (std::ostream &out, const UString &margin, const UChar *name, INT n) const |
| Display helper for subclasses. | |
| template<typename INT > requires std::integral<INT> | |
| void | disp (std::ostream &out, const UString &margin, const UChar *name, std::vector< INT > n) const |
| Display helper for subclasses. | |
| virtual bool | parseBody (AVCParser &, std::initializer_list< uint32_t >) override |
| Parse the body of the access unit up to but not including the rbsp_trailing_bits. | |
| virtual bool | parseHeader (const uint8_t *&, size_t &, std::initializer_list< uint32_t >=std::initializer_list< uint32_t >()) override |
| Parse the header of the access unit. | |
Representation of an HEVC sequence parameter set access unit.
| ts::HEVCSequenceParameterSet::HEVCSequenceParameterSet | ( | const uint8_t * | data = nullptr, |
| size_t | size = 0 |
||
| ) |
Constructor from a binary area.
| [in] | data | Address of binary data to analyze. |
| [in] | size | Size in bytes of binary data to analyze. |
|
overridevirtual |
Clear all values.
Should be reimplemented by subclasses. The data are marked invalid.
Reimplemented from ts::AbstractHEVCAccessUnit.
|
overridevirtual |
Display the content of this object to a stream.
| [in,out] | stream | The stream where to print the content. Standard output by default. |
| [in] | margin | The prefix string on each line, empty by default. |
| [in] | level | Severity level (for instance, Severity::Info or Severity::Debug may display more information). |
Implements ts::DisplayInterface.
| uint8_t ts::HEVCSequenceParameterSet::chroma | ( | ) | const |
Get chroma_format_idc, applying default value (see H.264 7.4.2.1.1).
| uint32_t ts::HEVCSequenceParameterSet::frameWidth | ( | ) | const |
Frame width in pixels.
| uint32_t ts::HEVCSequenceParameterSet::frameHeight | ( | ) | const |
Frame height in pixels.
|
overrideprotectedvirtual |
Parse the body of the access unit up to but not including the rbsp_trailing_bits.
Must be reimplemented by subclasses. The data are marked as valid or invalid.
| [in,out] | parser | The parser of an AVC-like video stream. |
| [in] | params | Additional parameters. May be needed by some structures. |
Implements ts::AbstractVideoAccessUnit.
|
overrideprotectedvirtualinherited |
Parse the header of the access unit.
Must be reimplemented by subclasses. The data are marked as valid or invalid.
| [in,out] | addr | Address of the binary data to parse. Adjusted after header. |
| [in,out] | size | Size in bytes of the binary data to parse. Adjusted as remaining size after header. |
| [in] | params | Additional parameters. May be needed by some structures. |
Implements ts::AbstractVideoAccessUnit.
|
overridevirtualinherited |
Parse a memory area containing binary video data of the expected type.
Must be reimplemented by subclasses. The data are marked as valid or invalid.
| [in] | addr | Address of the binary data to parse. |
| [in] | size | Size in bytes of the binary data to parse. |
| [in] | params | Additional parameters. May be needed by some structures. |
Implements ts::AbstractVideoData.
|
inlineprotectedinherited |
Display helper for subclasses.
Display an integer value.
| INT | An integer type. |
| [in,out] | out | The stream where to print the content. |
| [in] | margin | The prefix string on each line. |
| [in] | name | A name to display for the value. |
| [in] | n | The integer value to display. |
|
inlineprotectedinherited |
Display helper for subclasses.
Display a vector of integer value.
| INT | An integer type. |
| [in,out] | out | The stream where to print the content. |
| [in] | margin | The prefix string on each line. |
| [in] | name | A name to display for the value. |
| [in] | n | The integer values to display. |
|
inherited |
Valid flag.
Other fields are significant only if valid is true.