MediaCodecs.H265.SPS (MediCodecs v0.3.0)

View Source

Struct describing an H.265 Sequence Parameter Set (SPS).

Summary

Functions

Gets the height.

Builds the MIME type from the SPS.

Parses a SPS NALU from a binary string.

Gets the stream profile.

Gets the width.

Types

profile()

@type profile() :: :main | :main_10 | :main_still_picture | :rext

t()

@type t() :: %MediaCodecs.H265.SPS{
  bit_depth_chroma_minus8: non_neg_integer(),
  bit_depth_luma_minus8: non_neg_integer(),
  chroma_format_idc: non_neg_integer(),
  conformance_window: [non_neg_integer()] | nil,
  frame_only_constraint_flag: 0 | 1,
  interlaced_source_flag: 0 | 1,
  level_idc: non_neg_integer(),
  log2_diff_max_min_luma_coding_block_size: non_neg_integer(),
  log2_max_pic_order_cnt_lsb_minus4: non_neg_integer(),
  log2_min_luma_coding_block_size_minus3: non_neg_integer(),
  max_dec_pic_buffering_minus1: [non_neg_integer()],
  max_latency_increase_plus1: [non_neg_integer()],
  max_num_reorder_pics: [non_neg_integer()],
  max_sub_layers_minus1: non_neg_integer(),
  non_packed_constraint_flag: 0 | 1,
  pic_height_in_luma_samples: non_neg_integer(),
  pic_width_in_luma_samples: non_neg_integer(),
  profile_compatibility_flag: non_neg_integer(),
  profile_idc: non_neg_integer(),
  profile_space: non_neg_integer(),
  progressive_source_flag: 0 | 1,
  separate_colour_plane_flag: 0 | 1,
  seq_parameter_set_id: non_neg_integer(),
  sub_layer_ordering_info_present_flag: 0 | 1,
  temporal_id_nesting_flag: 0 | 1,
  tier_flag: 0 | 1,
  video_parameter_set_id: non_neg_integer()
}

Functions

height(sps)

@spec height(t()) :: non_neg_integer()

Gets the height.

mime_type(sps, tag)

@spec mime_type(t(), String.t()) :: String.t()

Builds the MIME type from the SPS.

The tag is the first part of the MIME type (e.g. hvc1).

parse(nalu)

@spec parse(nalu :: binary()) :: t()

Parses a SPS NALU from a binary string.

profile(sps)

@spec profile(t()) :: profile()

Gets the stream profile.

width(sps)

@spec width(t()) :: non_neg_integer()

Gets the width.