Packages

Behaviour to make it easy to create custom RTMP servers

Current section

Files

Jump to
eml_gen_rtmp_server lib gen_rtmp_server rtmp_options.ex
Raw

lib/gen_rtmp_server/rtmp_options.ex

defmodule GenRtmpServer.RtmpOptions do
@moduledoc """
Represents options that are available for starting an RTMP server
"""
@type t :: %__MODULE__{
port: pos_integer(),
fms_version: String.t,
chunk_size: pos_integer(),
log_mode: :none | :raw_io
}
@type options_list :: [port: pos_integer, fms_version: String.t, chunk_size: pos_integer]
defstruct port: 1935,
fms_version: "FMS/3,0,1,1233",
chunk_size: 4096,
log_mode: :none
@spec to_keyword_list(%GenRtmpServer.RtmpOptions{}) :: options_list
def to_keyword_list(options = %GenRtmpServer.RtmpOptions{}) do
[
port: options.port,
fms_version: options.fms_version,
chunk_size: options.chunk_size,
log_mode: options.log_mode
]
end
end