Skip to main content

elv-stream

Eluvio Live Stream CLI

Usage: elv-stream <command>

Global options​

OptionTypeRequiredDescription
-m, --mainSets ELV_NET=main
-d, --dv3, --demov3Sets ELV_NET=demov3
--testSets ELV_NET=test
--devSets ELV_NET=dev
--verbose, -vbooleanVerbose mode
--urlstringOptional node endpoint (eg. https://host-x-x-x-x.contentfabric.io)
--tokenstringExternally provided access token

Commands​

CommandDescription
createCreate a single new live stream object
create_batchCreate a batch of new live stream objects.
configApply user configuration based on stream info
initInitialize media and DRM configuration for the stream object.
start_recordingCreate a new edge write token for this stream object.
terminateEnd the current live stream for this object.
startStart or resume current live stream if not running.
statusStatus of the currently active live stream.
resetReset the currently active live stream.
stopPauses the currently active live stream.
insertionAdd or remove (with --remove) a content insertion in the live stream at the given time.
downloadDownload the live stream recording and create an mp4 file.
copy_as_vodCopy the stream to a new VoD object.
watermark_setSet watermark for this stream.
watermark_removeRemove watermark from the stream.
listList stream urls and their status.
switchSwitch the live stream to the primary or alternate

Command reference​

create​

elv-stream create

Create a single new live stream object

Options

OptionTypeRequiredDescription
--object_idstringobject ID for updating an existing stream object
--librarystring✓Library ID containing the stream object
--stream_urlstring✓Ingest URL for the live stream
--live_recording_configstringLive recording configuration: path to a JSON file, or the name of a profile to look up from the site
--finalizebooleanFinalize the object after creation
Default: true
--namestringName for the new stream object
--permissionstringAccess permission level for the stream object
Choices: owner, editable, viewable, listable, public
Default: editable
--link_to_sitebooleanAutomatically link the new stream to the site object after creation
Default: true

create_batch​

elv-stream create_batch

Create a batch of new live stream objects.

Options

OptionTypeRequiredDescription
--batch_filestringPath to .json, .yaml, or .yml file
--yaml_batch_file_examplebooleanPrint out an example of a yaml/yml bulk file
--json_batch_file_examplebooleanPrint out an example of a json bulk file

config​

elv-stream config <stream>

Apply user configuration based on stream info

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID). Stream must be stopped.

init​

elv-stream init <stream>

Initialize media and DRM configuration for the stream object.

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID)

Options

OptionTypeRequiredDescription
--drmbooleanSpecify if playout should be DRM protected (default: false)
--formatsstringSpecify the list of playout formats and DRM to support, comma-separated (hls-clear, hls-aes128, hls-sample-aes, hls-fairplay)

start_recording​

elv-stream start_recording <stream>

Create a new edge write token for this stream object.

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID)

Options

OptionTypeRequiredDescription
--startbooleanOptionally start the new stream (equivalent to calling 'start')
--show_curlbooleanShow 'curl' commands for inspecting metadata, LRO status, etc.

terminate​

elv-stream terminate <stream>

End the current live stream for this object.

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID)

start​

elv-stream start <stream>

Start or resume current live stream if not running.

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID)

status​

elv-stream status <stream>

Status of the currently active live stream.

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID)

Options

OptionTypeRequiredDescription
--show_paramsboolShow recording parameters (can be large)
--latencyboolCalculate stream latency (may take a few minutes)
--save-metabooleanSave edge write token metadata to a local JSON file
Default: true

reset​

elv-stream reset <stream>

Reset the currently active live stream.

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID)

stop​

elv-stream stop <stream>

Pauses the currently active live stream.

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID)

insertion​

elv-stream insertion <stream> <time> <target_hash>

Add or remove (with --remove) a content insertion in the live stream at the given time.

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID)
timestring✓Insertion time since stream start (seconds with 6 decimals), since epoch (if 'from_now') or ISO time
target_hashstring✓Target content object hash (playable)

Options

OptionTypeRequiredDescription
--removeboolFlag indicating the insertion is to be deleted
--from_nowboolFlag indicating insertion time is relative to 'now'
--durationfloatDuration of the content insertion (seconds with 6 decimal precisions)

download​

elv-stream download <stream>

Download the live stream recording and create an mp4 file.

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID)

Options

OptionTypeRequiredDescription
--periodintDownload a specific recording period (instead of the last one)
--offsetintStart downloading at this offset (seconds).
--framesboolCreate a frame JPG for each video part
--mpegtsboolDownload the MPEGTS copy instead of the MP4 mezzanine

copy_as_vod​

elv-stream copy_as_vod <stream>

Copy the stream to a new VoD object.

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID)

Options

OptionTypeRequiredDescription
--objectstringCopy to an existing object instead of creating a new one
--librarystringCopy to a new object in this library
--namestringObject name (used for management)
--titlestringObject title (used for playout)
--drmboolUse DRM or clear (default 'true')
Default: true
--include-tagsbooleanCopy video tags from the live stream
Default: false
--default-dashbooleanAdd a default_dash offering for chromecasting (clear DASH)
Default: false
--keep-existing-streamsbooleanKeep existing stream info including thumbnails
Default: false
--event_idstringOptional SCTE35 program or chapter event ID
--end_timestringEnd at the specified time in the stream
--recording_periodintUse only the specified recording period
--streamsstringList specific streams to be copied (eg. 'video:0,audio:1,audio_spa:2')

watermark_set​

elv-stream watermark_set <stream> <file>

Set watermark for this stream.

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID)
filestring✓File containing JSON watermark spec

watermark_remove​

elv-stream watermark_remove <stream>

Remove watermark from the stream.

Arguments

NameTypeRequiredDescription
streamstring✓Stream name or QID (content ID)

list​

elv-stream list

List stream urls and their status.

Options

OptionTypeRequiredDescription
--sitestringSite ID

switch​

elv-stream switch <stream> <source>

Switch the live stream to the primary or alternate

Arguments

NameTypeRequiredDescription
streamstring✓Stream content ID
sourcestring✓Stream source: primary | backup

Options

OptionTypeRequiredDescription
--backup_hashstringObject hash of the backup stream