Mux v1.9.0 Mux.Video.LiveStreams View Source
This module provides functions for managing live streams in Mux Video. API Documentation
Link to this section Summary
Functions
Create a new live stream. API Documentation
Create a live stream playback ID. API Documentation
Create a live stream simulcast target. API Documentation
Delete a live stream. API Documentation
Delete a live stream playback ID. API Documentation
Delete a live stream simulcast target. API Documentation
Disable a live stream is finished. API Documentation
Enable a live stream is finished. API Documentation
Retrieve a live stream by ID. API Documentation
Retrieve a live stream simulcast target. API Documentation
List all live streams. API Documentation
Reset a live stream key if you want to immediately stop the current stream key from working and create a new stream key that can be used for future broadcasts. API Documentation
Signal a live stream is finished. API Documentation
Link to this section Functions
Create a new live stream. API Documentation
Returns {:ok, live_stream, %Tesla.Env{}}
.
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {:ok, live_stream, _env} = Mux.Video.LiveStreams.create(client, %{playback_policy: "public", new_asset_settings: %{playback_policy: "public"}})
iex> live_stream
%{"created_at" => "1557338261", "id" => "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "new_asset_settings" => %{"playback_policies" => ["public"]}, "playback_ids" => [%{"id" => "iOkfIGstt4u1eYdFcPKGTWKz75Acpv3w", "policy" => "public"}], "reconnect_window" => 60, "status" => "idle", "stream_key" => "54676b58-6b19-5acb-f5bf-3aa35222efc6"}
Create a live stream playback ID. API Documentation
Returns a tuple such as {:ok, playback_ids, %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {:ok, playback_id, _env} = Mux.Video.LiveStreams.create_playback_id(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", %{policy: "public"})
iex> playback_id
%{id: "FRDDXsjcNgD013rx1M4CDunZ86xkq8A02hfF3b6XAa7iE", policy: "public"}
Create a live stream simulcast target. API Documentation
Returns a tuple such as {:ok, simulcast_target, %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {:ok, simulcast_target, _env} = Mux.Video.LiveStreams.create_simulcast_target(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", %{url: "rtmp://live.example.com/app", stream_key: "abcdefgh"})
iex> simulcast_target
%{id: "vuOfW021mz5QA500wYEQ9SeUYvuYnpFz011mqSvski5T8claN02JN9ve2g", passthrough: "Example 1", stream_key: "abcdefgh", url: "rtmp://live.example1.com/app"}
Delete a live stream. API Documentation
Returns a tuple such as {:ok, "", %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {status, _data, _env} = Mux.Video.LiveStreams.delete(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY")
iex> status
:ok
Delete a live stream playback ID. API Documentation
Returns a tuple such as {:ok, "", %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {status, _, _env} = Mux.Video.LiveStreams.delete_playback_id(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "FRDDXsjcNgD013rx1M4CDunZ86xkq8A02hfF3b6XAa7iE")
iex> status
:ok
delete_simulcast_target(client, live_stream_id, simulcast_target_id)
View SourceDelete a live stream simulcast target. API Documentation
Returns a tuple such as {:ok, "", %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {status, _, _env} = Mux.Video.LiveStreams.delete_simulcast_target(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "vuOfW021mz5QA500wYEQ9SeUYvuYnpFz011mqSvski5T8claN02JN9ve2g")
iex> status
:ok
Disable a live stream is finished. API Documentation
Returns a tuple such as {:ok, "", %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {status, _, _env} = Mux.Video.LiveStreams.disable(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY")
iex> status
:ok
Enable a live stream is finished. API Documentation
Returns a tuple such as {:ok, "", %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {status, _, _env} = Mux.Video.LiveStreams.enable(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY")
iex> status
:ok
Retrieve a live stream by ID. API Documentation
Returns a tuple such as {:ok, live_stream, %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {:ok, live_stream, _env} = Mux.Video.LiveStreams.get(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY")
iex> live_stream
%{"created_at" => "1557338261", "id" => "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "new_asset_settings" => %{"playback_policies" => ["public"]}, "playback_ids" => [%{"id" => "iOkfIGstt4u1eYdFcPKGTWKz75Acpv3w", "policy" => "public"}], "reconnect_window" => 60, "status" => "idle", "stream_key" => "54676b58-6b19-5acb-f5bf-3aa35222efc6"}
Retrieve a live stream simulcast target. API Documentation
Returns a tuple such as {:ok, simulcast_target, %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {:ok, simulcast_target, _env} = Mux.Video.LiveStreams.get_simulcast_target(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "vuOfW021mz5QA500wYEQ9SeUYvuYnpFz011mqSvski5T8claN02JN9ve2g")
iex> simulcast_target
%{id: "vuOfW021mz5QA500wYEQ9SeUYvuYnpFz011mqSvski5T8claN02JN9ve2g", passthrough: "Example 1", stream_key: "abcdefgh", url: "rtmp://live.example1.com/app"}
List all live streams. API Documentation
Returns a tuple such as {:ok, live_streams, %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {:ok, live_streams, _env} = Mux.Video.LiveStreams.list(client)
iex> live_streams
[%{"created_at" => "1557338261", "id" => "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "new_asset_settings" => %{"playback_policies" => ["public"]}, "playback_ids" => [%{"id" => "iOkfIGstt4u1eYdFcPKGTWKz75Acpv3w", "policy" => "public"}], "reconnect_window" => 60, "status" => "idle", "stream_key" => "54676b58-6b19-5acb-f5bf-3aa35222efc6"}, %{"created_at" => "1557338261", "id" => "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "new_asset_settings" => %{"playback_policies" => ["public"]}, "playback_ids" => [%{"id" => "iOkfIGstt4u1eYdFcPKGTWKz75Acpv3w", "policy" => "public"}], "reconnect_window" => 60, "status" => "idle", "stream_key" => "54676b58-6b19-5acb-f5bf-3aa35222efc6"}]
Reset a live stream key if you want to immediately stop the current stream key from working and create a new stream key that can be used for future broadcasts. API Documentation
Returns a tuple such as {:ok, "", %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {:ok, live_stream, _env} = Mux.Video.LiveStreams.reset_stream_key(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY")
iex> live_stream
%{"created_at" => "1557338261", "id" => "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "new_asset_settings" => %{"playback_policies" => ["public"]}, "playback_ids" => [%{"id" => "iOkfIGstt4u1eYdFcPKGTWKz75Acpv3w", "policy" => "public"}], "reconnect_window" => 60, "status" => "idle", "stream_key" => "54676b58-6b19-5acb-f5bf-3aa35222efc6"}
Signal a live stream is finished. API Documentation
Returns a tuple such as {:ok, "", %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {status, _, _env} = Mux.Video.LiveStreams.signal_complete(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY")
iex> status
:ok