View Source Membrane.MP4.Demuxer.ISOM (Membrane MP4 plugin v0.25.0)

A Membrane Element for demuxing an MP4.

The MP4 must have fast start enabled, i.e. the moov box must precede the mdat box. Once the Demuxer identifies the tracks in the MP4, new_tracks_t/0 notification is sent for each of the tracks.

All the tracks in the MP4 must have a corresponding output pad linked (Pad.ref(:output, track_id)).

pads

Pads

input

:input

Accepted formats:

%RemoteStream{type: :bytestream, content_format: content_format} when content_format in [nil, MP4]
Direction::input
Availability::always
Flow control::manual
Demand unit::buffers

output

:output

Accepted formats:

Membrane.MP4.Payload
Direction::output
Availability::on_request
Flow control::manual
Demand unit:nil

Link to this section Summary

Types

Notification sent when the tracks are identified in the MP4.

Link to this section Types

@type new_tracks_t() :: {:new_tracks, [{track_id :: integer(), content :: struct()}]}

Notification sent when the tracks are identified in the MP4.

Upon receiving the notification, Pad.ref(:output, track_id) pads should be linked for all the track_id in the list. The content field describes the kind of Membrane.MP4.Payload which is contained in the track.