MediaCodecs.AV1.OBU.Header (MediCodecs v0.10.0)
View SourceModule describing an AV1 OBU (Open Bitstream Unit) header.
Summary
Functions
Parses an OBU header.
Types
@type obu_type() ::
:sequence_header
| :temporal_delimiter
| :frame_header
| :tile_group
| :metadata
| :frame
| :redudant_frame_header
| :tile_list
| :padding
| :reserved
@type t() :: %MediaCodecs.AV1.OBU.Header{ extension_flag: boolean(), extension_header: obu_extension_header() | nil, has_size: boolean(), type: obu_type() }
Functions
Parses an OBU header.
iex> MediaCodecs.AV1.OBU.Header.parse(<<18, 0>>)
{:ok, %MediaCodecs.AV1.OBU.Header{
type: :temporal_delimiter,
extension_flag: false,
has_size: true,
extension_header: nil
}, <<0>>}
iex> MediaCodecs.AV1.OBU.Header.parse(<<10, 10, 0, 0, 0, 3, 54, 57>>)
{:ok, %MediaCodecs.AV1.OBU.Header{
type: :sequence_header,
extension_flag: false,
has_size: true,
extension_header: nil
}, <<10, 0, 0, 0, 3, 54, 57>>}
iex> MediaCodecs.AV1.OBU.Header.parse(<<31, 200, 0, 0, 0, 3, 54, 57>>)
{:ok, %MediaCodecs.AV1.OBU.Header{
type: :frame_header,
extension_flag: true,
has_size: true,
extension_header: %{spatial_id: 1, temporal_id: 6}
}, <<0, 0, 0, 3, 54, 57>>}
iex> MediaCodecs.AV1.OBU.Header.parse(<<31>>)
{:error, :invalid_header}