View Source Membrane.AAC.FDK.Encoder (Membrane AAC FDK plugin v0.13.0)

Element encoding raw audio into AAC format

element-options

Element options

Passed via struct Membrane.AAC.FDK.Encoder.t/0

  • aot

    allowed_aots()

    Default value: :mpeg4_lc
    Audio object type. See: https://github.com/mstorsjo/fdk-aac/blob/master/libAACenc/include/aacenc_lib.h#L1280 2: MPEG-4 AAC Low Complexity. 5: MPEG-4 AAC Low Complexity with Spectral Band Replication (HE-AAC). 29: MPEG-4 AAC Low Complexity with Spectral Band Replication and Parametric Stereo (HE-AAC v2). This configuration can be used only with stereo input audio data. 129: MPEG-2 AAC Low Complexity. 132: MPEG-2 AAC Low Complexity with Spectral Band Replication (HE-AAC).

  • bitrate_mode

    allowed_bitrate_modes()

    Default value: 0
    Bitrate Mode. See: http://wiki.hydrogenaud.io/index.php?title=Fraunhofer_FDK_AAC#Bitrate_Modes 0 - Constant Bitrate (default). 1-5 - Variable Bitrate

  • bitrate

    pos_integer() | nil

    Default value: nil
    Bitrate in bits/s for CBR. If set to nil (default value), the bitrate will be estimated based on the number of channels and sample rate. See: https://trac.ffmpeg.org/wiki/Encode/AAC#fdk_cbr Note that for VBR this parameter is ignored.

  • input_caps

    RawAudio.t() | nil

    Default value: nil
    Caps for the input pad. If set to nil (default value), caps are assumed to be received through the pad. If explicitly set to some caps, they cannot be changed by caps received through the pad.

pads

Pads

input

:input

Availability :always
Caps Membrane.RawAudio, restrictions:
  sample_format: :s16le,
  channels: one_of([1, 2]),
  sample_rate: one_of([96000, 88200, 64000, 48000, 44100, 32000, 24000, 22050, 16000, 12000, 11025, 8000])
Demand mode :auto
Demand unit :bytes
Direction :input
Mode :pull
Name :input

output

:output

Availability :always
Caps :any
Demand mode :auto
Demand unit :buffers
Direction :output
Mode :pull
Name :output

Link to this section Summary

Functions

Returns pads descriptions for Membrane.AAC.FDK.Encoder

Returns description of options available for this module

Link to this section Types

@type allowed_aots() :: :mpeg2_he | :mpeg2_lc | :mpeg4_he_v2 | :mpeg4_he | :mpeg4_lc
Link to this type

allowed_bitrate_modes()

View Source
@type allowed_bitrate_modes() :: 5 | 4 | 3 | 2 | 1 | 0
@type allowed_channels() :: 2 | 1
Link to this type

allowed_sample_rates()

View Source
@type allowed_sample_rates() ::
  8000
  | 11025
  | 12000
  | 16000
  | 22050
  | 24000
  | 32000
  | 44100
  | 48000
  | 64000
  | 88200
  | 96000
@type t() :: %Membrane.AAC.FDK.Encoder{
  aot: allowed_aots(),
  bitrate: pos_integer() | nil,
  bitrate_mode: allowed_bitrate_modes(),
  input_caps: Membrane.RawAudio.t() | nil
}

Struct containing options for Membrane.AAC.FDK.Encoder

Link to this section Functions

@spec membrane_pads() :: [{Membrane.Pad.name_t(), Membrane.Pad.description_t()}]

Returns pads descriptions for Membrane.AAC.FDK.Encoder

@spec options() :: keyword()

Returns description of options available for this module