Membrane element that decodes video in H264 format. It is backed by decoder from FFmpeg.
The element expects the data for each frame (Access Unit) to be received in a separate buffer,
so the parser (Membrane.H264.Parser) may be required in a pipeline before
decoder (e.g. when input is read from Membrane.File.Source).
Element options
Passed via struct Membrane.H264.FFmpeg.Decoder.t/0
use_shm?boolean()Default value:
false
If true, native decoder will use shared memory (viaShmex.t/0) for storing frames
Pads
:input
Accepted formats:
%H264{alignment: :au, stream_structure: :annexb}| Direction: | :input |
| Availability: | :always |
| Flow control: | :auto |
:output
Accepted formats:
%RawVideo{pixel_format: format, aligned: true} when format in [:I420, :I422]| Direction: | :output |
| Availability: | :always |
| Flow control: | :auto |
Summary
Types
Struct containing options for Membrane.H264.FFmpeg.Decoder
Types
@type t() :: %Membrane.H264.FFmpeg.Decoder{use_shm?: boolean()}
Struct containing options for Membrane.H264.FFmpeg.Decoder
Functions
@spec options() :: keyword()
Returns description of options available for this module