class Evostream::Commands::CreateHLS
Create
flux HLS
Constants
- MANDATORY
Public Class Methods
Call default command for create DASH Stream
Evostream::Commands::Create::new
# File lib/evostream/event/commands/create/hls.rb, line 12 def initialize(commands = { local_stream_names: 'null', target_folder: 'null' }) super(commands) end
Public Instance Methods
Evostream::Commands::Command#cmd
# File lib/evostream/event/commands/create/hls.rb, line 18 def cmd super "createHLSStream?params=#{encode64}" end
Private Instance Methods
Specifies the number of keys that will be automatically generated and rotated over while encrypting this HLS stream
# File lib/evostream/event/commands/create/hls.rb, line 57 def aes_key_count(param = 5) "AESKeyCount=#{param}" end
Specifies if the resulting stream will be audio only. A value of 1(true) will result in a stream without video
# File lib/evostream/event/commands/create/hls.rb, line 63 def audio_only(param = 0) "audioOnly=#{param}" end
The base name used to generate the *.ts chunks
# File lib/evostream/event/commands/create/hls.rb, line 43 def chunk_base_name(param = 'segment') "chunkBaseName=#{param}" end
If true, corresponding hls files to a stream will be deleted if the said stream is removed or shut down or disconnected
# File lib/evostream/event/commands/create/hls.rb, line 75 def cleanup_on_close(param = 0) "cleanupOnClose=#{param}" end
# File lib/evostream/event/commands/create/hls.rb, line 25 def create_master_playlist(param = 1) "createMasterPlaylist=#{param}" end
Sets the type of DRM encryption to use. Options are: none (no encryption), evo (AES Encryption), SAMPLE-AES (Sample-AES), verimatrix (Verimatrix DRM). For Verimatrix DRM, the 'drm' section of the config.lua file must be active and properly configured
# File lib/evostream/event/commands/create/hls.rb, line 51 def drm_type(param = 'none') "drmType=#{param}" end
When using useByteRange=1, this parameter needs to be set too. This will be the size of file before chunking it to another file, this replace the chunkLength in case of EXT-X-BYTERANGE, since chunkLength will be the byte range chunk
# File lib/evostream/event/commands/create/hls.rb, line 88 def file_length(param = 0) "fileLength=#{param}" end
If true, HLS will resume in appending segments to previously created childplaylist even in cases of EMS shutdown or cut off stream source
# File lib/evostream/event/commands/create/hls.rb, line 69 def hls_resume(param = 0) "hlsResume=#{param}" end
This parameter represents the maximum length, in seconds, the EMS will allow anysingle chunk to be. This is primarily in the case of chunkOnIDR=true where the EMS will wait for the next key-frame. If the maxChunkLength is less than chunkLength, the parameter shall be ignored
# File lib/evostream/event/commands/create/hls.rb, line 38 def max_chunk_length(param = 0) "maxChunkLength=#{param}" end
# File lib/evostream/event/commands/create/hls.rb, line 98 def offset_time(param = 0) "offsetTime=#{param}" end
The manifest file name
# File lib/evostream/event/commands/create/hls.rb, line 30 def playlist_name(param = 'playlist.m3u8') "playlistName=#{param}" end
A parameter valid only for HLS v.6 onwards. This will indicate the start offset time (in seconds) for the playback of the playlist
# File lib/evostream/event/commands/create/hls.rb, line 104 def start_offset(param = 0) "startOffset=#{param}" end
If true, will use the EXT-X-BYTERANGE feature of HLS (version 4 and up)
# File lib/evostream/event/commands/create/hls.rb, line 80 def use_byte_range(param = 0) "useByteRange=#{param}" end
If true, uses UTC in playlist time stamp otherwise will use the local server time
# File lib/evostream/event/commands/create/hls.rb, line 94 def use_system_time(param = 0) "useSystemTime=#{param}" end