Packages
membrane_rtmp_plugin
0.16.0
0.29.5
0.29.4
0.29.3
0.29.2
0.29.1
0.29.0
0.28.1
0.28.0
0.27.3
0.27.2
0.27.0
0.26.0
0.25.0
0.24.0
0.23.3
0.23.2
0.23.1
0.23.0
0.22.1
0.22.0
0.21.0
0.20.2
0.20.1
0.20.0
0.19.3
0.19.2
retired
0.19.1
0.19.0
0.18.0
0.17.3
0.17.2
0.17.1
0.17.0
0.16.0
0.15.0
0.14.0
0.13.2
0.13.1
0.13.0
0.12.1
0.12.0
0.11.3
0.11.2
0.11.1
0.11.0
0.10.0
0.9.1
0.9.0
0.8.1
0.8.0
0.7.0
0.6.1
0.6.0
0.5.0
0.4.1
0.4.0
0.3.0
0.2.1
0.2.0
0.1.1
0.1.0
RTMP Plugin for Membrane Multimedia Framework
Current section
Files
Jump to
Current section
Files
c_src/membrane_rtmp_plugin/sink/rtmp_sink.spec.exs
module Membrane.RTMP.Sink.Native
state_type "State"
interface [NIF]
spec create(rtmp_url :: string, audio_present :: bool, video_present :: bool) ::
{:ok :: label, state} | {:error :: label, reason :: string}
# WARN: connect will conflict with POSIX function name
spec try_connect(state) ::
(:ok :: label)
| {:error :: label, :econnrefused :: label}
| {:error :: label, :etimedout :: label}
| {:error :: label, reason :: string}
spec finalize_stream(state) :: :ok :: label
spec init_video_stream(state, width :: int, height :: int, avc_config :: payload) ::
{:ok :: label, ready :: bool, state} | {:error :: label, :stream_format_resent :: label}
spec write_video_frame(state, frame :: payload, dts :: int64, pts :: int64, is_key_frame :: bool) ::
{:ok :: label, state} | {:error :: label, reason :: string}
spec init_audio_stream(state, channels :: int, sample_rate :: int, aac_config :: payload) ::
{:ok :: label, ready :: bool, state} | {:error :: label, :stream_format_resent :: label}
spec write_audio_frame(state, frame :: payload, pts :: int64) ::
{:ok :: label, state} | {:error :: label, reason :: string}
dirty :io, write_video_frame: 4, write_audio_frame: 3