View Source Membrane.PortAudio.Source (Membrane PortAudio plugin v0.19.2)

Audio source that captures sound via multi-platform PortAudio library.

Element options

Passed via struct Membrane.PortAudio.Source.t/0

  • device_id

    integer() | :default

    Default value: :default
    PortAudio device id. Defaults to the default input device.

    You can list available devices with mix pa_devices or Membrane.PortAudio.print_devices/0.

  • endpoint_id

    nil

    Default value: nil
    Deprecated. Please use device_id instead.

  • portaudio_buffer_size

    pos_integer()

    Default value: 256
    Size of the PortAudio buffer (in frames)

  • latency

    :low | :high

    Default value: :high
    Latency of the input device

  • sample_format

    sample_format()

    Default value: :s16le
    Sample format to output.

  • sample_rate

    non_neg_integer()

    Default value: nil
    Sample rate to output.

    If not set, device's default sample rate will be used.

  • channels

    1..2

    Default value: nil
    Number of channels to output.

    If not set, device's default will be used.

Pads

:output

Accepted formats:

%RawAudio{sample_format: format} when format in @sample_formats
Direction::output
Availability::always
Flow control::push

Summary

Types

t()

Struct containing options for Membrane.PortAudio.Source

Functions

Returns description of options available for this module

Types

@type sample_format() :: :u8le | :s8le | :s16le | :s24le | :s32le | :f32le
@type t() :: %Membrane.PortAudio.Source{
  channels: 1..2,
  device_id: integer() | :default,
  endpoint_id: nil,
  latency: :low | :high,
  portaudio_buffer_size: pos_integer(),
  sample_format: sample_format(),
  sample_rate: non_neg_integer()
}

Struct containing options for Membrane.PortAudio.Source

Functions

@spec options() :: keyword()

Returns description of options available for this module