View Source Membrane.Opus.Parser (Membrane Opus plugin v0.16.0)
Parses a raw incoming Opus stream and adds stream_format information, as well as metadata.
Adds the following metadata:
duration :: non_neg_integer() Number of nanoseconds encoded in this packet
element-options
Element options
Passed via struct Membrane.Opus.Parser.t/0
delimitationdelimitation_t()Default value:
:keep
If input is delimitted? (as indicated by theself_delimiting?field in %Opus) and:undelimitis selected, will remove delimiting.If input is not delimitted? and
:delimitis selected, will add delimiting.If
:keepis selected, will not change delimiting.Otherwise will act like
:keep.See https://tools.ietf.org/html/rfc6716#appendix-B for details on the self-delimiting Opus format.
input_delimitted?boolean()Default value:
false
If you know that the input is self-delimitted? but you're reading from some element that isn't sending the correct structure, you can set this to true to force the Parser to assume the input is self-delimitted? and ignore upstream stream_format information on self-delimitation.
pads
Pads
input
:input
Accepted formats:
Opus%RemoteStream{content_format: format} when format in [Opus, nil]| Direction: | :input |
| Availability: | :always |
| Mode: | :pull |
| Demand mode: | :auto |
| Demand unit: | :buffers |
output
:output
Accepted formats:
Opus| Direction: | :output |
| Availability: | :always |
| Mode: | :pull |
| Demand mode: | :auto |
Link to this section Summary
Link to this section Types
@type delimitation_t() :: :delimit | :undelimit | :keep
@type t() :: %Membrane.Opus.Parser{ delimitation: delimitation_t(), input_delimitted?: boolean() }
Struct containing options for Membrane.Opus.Parser
Link to this section Functions
@spec options() :: keyword()
Returns description of options available for this module