adaptivedemux2

What is an adaptive demuxer? Adaptive demuxers are special demuxers in the sense that they don't actually demux data received from upstream but download the data themselves.

Adaptive formats (HLS, DASH, MSS) are composed of a manifest file and a set of fragments. The manifest describes the available media and the sequence of fragments to use. Each fragment contains a small part of the media (typically only a few seconds). It is possible for the manifest to have the same media available in different configurations (bitrates for example) so that the client can select the one that best suits its scenario (network fluctuation, hardware requirements...).

Furthermore, that manifest can also specify alternative medias (such as audio or subtitle tracks in different languages). Only the fragments for the requested selection will be download.

These elements can therefore "adapt" themselves to the network conditions (as opposed to the server doing that adaptation) and user choices, which is why they are called "adaptive" demuxers.

Note: These elements require a "streams-aware" container to work (i.e. urisourcebin, decodebin3, playbin3, or any bin/pipeline with the GST_BIN_FLAG_STREAMS_AWARE flag set).

Subclasses: While GstAdaptiveDemux is responsible for the workflow, it knows nothing about the intrinsics of the subclass formats, so the subclasses are responsible for maintaining the manifest data structures and stream information.

(from GStreamer Good Plug-ins)
Name Classification Description
dashdemux2 Codec/Demuxer/Adaptive Dynamic Adaptive Streaming over HTTP demuxer
hlsdemux2 Codec/Demuxer/Adaptive HTTP Live Streaming demuxer
mssdemux2 Codec/Demuxer/Adaptive Parse and demultiplex a Smooth Streaming manifest into audio and video streams

Subpages:

dashdemux2 – Dynamic Adaptive Streaming over HTTP demuxer

GstAdaptiveDemux2

hlsdemux2 – HTTP Live Streaming demuxer

mssdemux2 – Parse and demultiplex a Smooth Streaming manifest into audio and video streams

The results of the search are