Membrane.MPEG.TS.Muxer (Membrane MPEG.TS Plugin v1.3.1)

View Source

Experimental MPEG-TS Muxer. Supports 1 program with AAC and H264 in it only for now.

Inputs must be attached before the element enters the playing state. Audio&Video are going to be interleaved by their timing.

Each buffer is going to end in its own PES packet, hence NALu units must be grouped accordingly, as well as ADTS AAC frames.

Pads

:input

Accepted formats:

%Membrane.RemoteStream{}
Direction::input
Availability::on_request
Flow control::auto

Pad options:

  • stream_type

    atom()

    Default value: nil
    Each input is going to become a stream in the PMT with this assigned type. See MPEG.TS.PMT.

:output

Accepted formats:

Membrane.RemoteStream
Direction::output
Availability::always
Flow control::auto

Summary

Types

Options for pad :input

Types

input_pad_opts()

@type input_pad_opts() :: [{:stream_type, atom()}]

Options for pad :input

Functions

do_marshal_ts(payload, pid, state, opts)

do_marshal_ts(payload, pid, state, opts, acc)

marshal_pat(pat)

marshal_ts(payload, pid, state, opts \\ [])

pat_buffer(state)

pcr_buffer(state)

pes_buffers(pid, buffer, state)

pmt_buffer(state)