View Source MPEG.TS.Demuxer (MPEG.TS v2.0.0)

Responsible for demultiplexing a stream of MPEG.TS.Packet into the elemetary streams listed in the stream's Program Map Table. Does not yet handle PAT.

Summary

Types

@type t() :: %MPEG.TS.Demuxer{
  buffered_bytes: binary(),
  demuxed_queues: %{required(MPEG.TS.PMT.stream_id_t()) => StreamBuffer.t()},
  packet_filter: (MPEG.TS.PMT.stream_id_t() -> boolean()),
  pat: MPEG.TS.PAT.t() | nil,
  pmt: MPEG.TS.PMT.t() | nil,
  waiting_random_access_indicator: term()
}

Functions

@spec new() :: t()
Link to this function

push_buffer(state, buffer, discontinuity \\ false)

View Source
Link to this function

push_packets(state, packets)

View Source
Link to this function

size(demuxer, stream_id)

View Source
Link to this function

take(state, stream_id, size \\ 1)

View Source