Current section

Files

Jump to
membrane_rtp_opus_plugin lib membrane_rtp_opus plugin_app.ex
Raw

lib/membrane_rtp_opus/plugin_app.ex

defmodule Membrane.RTP.Opus.Plugin.App do
@moduledoc false
use Application
alias Membrane.RTP.{Opus, PayloadFormat}
@spec start(atom, list) ::
{:ok, pid} | {:error, {:already_started, pid} | {:shutdown, term} | term}
def start(_type, _args) do
PayloadFormat.register(%PayloadFormat{
encoding_name: :opus,
payload_type: 120,
payloader: Opus.Payloader,
depayloader: Opus.Depayloader,
frame_detector: fn _payload -> true end
})
PayloadFormat.register_payload_type_mapping(120, :opus, 48_000)
Supervisor.start_link([], strategy: :one_for_one, name: __MODULE__)
end
end