Elecard DASH Sink¶
Elecard DASH Sink is a GStreamer plugin intended for content preparation via the MPEG-DASH (Dynamic Adaptive Streaming over HTTP, ISO/IEC 23009-1) protocol.
Features¶
Elecard DASH Sink has the following features:
Enables ordering of audio tracks;
Supports the SMPTE_TT and WebVTT (OCR) subtitles;
Works with Kaltura uDRM and Verimatrix servers.
Parameter Description¶
Below is the table describing Elecard DASH Sink parameters and their values.
Pad Properties¶
Parameter Name |
Description |
Value Type |
Available Values [range] |
Default |
Flags |
|---|---|---|---|---|---|
adaptation-set-id |
Specifies an ID that relates the profile with |
Integer |
[-1 – 2147483647] |
-1 |
readable, writable |
bandwidth |
Specifies stream bandwidth in bit/s. |
Integer |
[0 – 2147483647] |
0 |
readable, writable |
buffer-fullness |
Specifies buffer occupancy in %. As of now, it remains unchanged and always equals zero. |
Integer |
[0 – 100] |
0 |
readable, writable |
enable-encryption |
Enables or disables segment encryption. |
Boolean |
true, false |
true |
readable, writable |
hls-autoselect |
Enables or disables HLS. |
Boolean |
true, false |
true |
readable, writable |
hls-default |
Enables or disables HLS. |
Boolean |
true, false |
false |
readable, writable |
hls-forced |
Enables or disables HLS. |
Boolean |
true, false |
false |
readable, writable |
hls-group |
Specifies the |
String |
null |
readable, writable |
|
stream-label |
Specifies label element in |
String |
null |
readable, writable |
|
stream-language |
Specifies the stream language. |
String |
null |
readable, writable |
|
stream-name |
Specifies the unique stream identifier. |
String |
null |
readable, writable |
|
stream-role |
Specifies |
Enum |
0 — No
1 — caption
2 — subtitle
3 — Main
4 — alternate
5 — supplementary
6 — commentary
7 — dub
8 — description
9 — sign
10 — metadata
11 — enhance audio intelligibility
12 — emergency
|
0 |
readable, writable |
stream-teletext-page |
Specifies the stream teletext page. |
String |
null |
readable, writable |
|
stream-timescale |
Specifies the timescale of a stream. |
Integer |
[0 – 2147483647] |
0 |
readable, writable |
Element Properties¶
Parameter Name |
Description |
Value Type |
Available Values [range] |
Default |
Flags |
|---|---|---|---|---|---|
atomic-write-playlist |
Enables or disables the atomic playlist recording. During recording, a playlist is guaranteed to be received in an inconsistent state. |
Boolean |
true, false |
false |
readable, writable |
audio-priority |
Specifies the order of audio tracks. This is useful for prioritizing a certain audio track, which is indicated by a 3-letter descriptor. |
String |
“” |
readable, writable |
|
aws-scte-dash-element-type |
Specifies the |
Enum |
0 — ClearXML
1 — Base64Binary
|
0 |
readable, writable |
channel-name |
Specifies the unique channel identifier. |
String |
Default |
readable, writable |
|
correction-timeout |
Specifies OTT correction timeout in sec. |
Unsigned Integer |
[0 – 4294967295] |
0 |
readable, writable |
dvb-subtitles-mode |
Specifies the output format for DVB subtitles. Available formats:
|
Enum |
0 — SMPTE_TT
1 — WebVTT (OCR)
|
0 |
readable, writable |
encryption-iv |
Specifies the initial encryption vector in |
String |
“” |
readable, writable |
|
encryption-jwt-token-config |
JWT token configuration in a JSON format meant for signing a CPIX document when requesting an encryption key. Used along with the {“header”:{“alg”:“RS256”,}, “payload”:{},“private_key”:private_key_in_base64_format}
|
String |
“” |
readable, writable |
|
encryption-key-update-interval |
Specifies the interval between requests for a new encryption key from the Verimatrix and DRMnow key servers. |
Integer |
[0 – 2147483647] |
1800 |
readable, writable |
encryption-key-update-timeout |
Specifies the timeout for getting an encryption key from the DRM server (sec). If the value is set to |
Unsigned Integer |
[0 – 4294967295] |
2 |
readable, writable |
encryption-mode |
Specifies the segment encryption mode. If the value is set to |
Enum |
0 — None
3 — Vmx4.1
4 — Vmx4.2
5 — Kaltura
7 — Drmnow
|
0 |
readable, writable |
encryption-private-key |
Specifies the private key for Kaltura uDRM servers. |
String |
“” |
readable, writable |
|
encryption-session-id |
Specifies the content ID for Verimatrix 4.x servers. |
String |
dash_$Name$ |
readable, writable |
|
encryption-site-id |
Specifies the site ID for Verimatrix 4.x servers. |
Unsigned Integer |
[0 – 4294967295] |
1 |
readable, writable |
encryption-url |
Specifies the encryption key address. |
String |
“” |
readable, writable |
|
event-handler |
Specifies the pointer to the handler for events signalled by DASH Sink. |
Pointer |
readable, writable |
||
file-extension |
Specifies the file extension. |
String |
“” |
readable, writable |
|
hls-dvb-subtitles-mode |
Specifies the output format for DVB subtitles in the HLS mode. Available formats:
|
Enum |
0 — SMPTE_TT
1 — WebVTT (OCR)
|
0 |
readable, writable |
hls-master-playlist-filename |
Specifies the master playlist file name for the HLS mode. |
String |
$Name$/$Name$.m3u8 |
readable, writable |
|
hls-media-playlist-filename |
Specifies the media playlist file name for the HLS mode. |
String |
$Name$/$StreamName$.m3u8 |
readable, writable |
|
hls-scte-format |
Specifies the SCTE-35 format for the HLS mode. |
Enum |
0 — ANSI
1 — AWS
2 — Daterange
|
0 |
readable, writable |
init-segment-filename |
Specifies the file name of the initialization segment. |
String |
$Name$/$StreamName$/$StreamName$_init |
readable, writable |
|
internal-state |
Specifies the internal state. |
String |
“” |
readable, writable |
|
license-state |
Indicates the license state. |
String |
evaluation |
readable |
|
live-mode |
Enables or disables the live content mode. |
Boolean |
true, false |
true |
readable, writable |
mpd-mode |
Specifies the MPD period mode. |
Enum |
0 — Single-Period
1 — Multi-Period
|
0 |
readable, writable |
name |
Specifies the name of the object. |
String |
elecarddashsink0 |
readable, writable |
|
oem-name |
Indicates the OEM name. |
String |
readable |
||
ott-correction |
Enables or disables the correction of deviation between the actual and calculated segment numbers. It functions in combination with the |
Boolean |
true, false |
true |
readable, writable |
output-path |
Specifies the output directory for the playlists and media segments to be saved in. |
String |
“/” |
readable, writable |
|
parent |
Specifies the parent of the object. |
Object of type GstObject |
readable, writable |
||
playlist-duration |
Specifies the playlist duration for live content in seconds. |
Unsigned Integer |
[1 – 4294967295] |
60 |
readable, writable |
playlist-filename |
Specifies the playlist file name. |
String |
$Name$/$Name$.mpd |
readable, writable |
|
playlist-type |
Specifies the playlist type. |
Enum |
0 — DASH
1 — HLS
2 — DASH and HLS
|
0 |
readable, writable |
playlist-update-period |
Specifies the playlist update period (ms). |
Unsigned Integer |
[0 – 4294967295] |
0 |
readable, writable |
scte-splice-removal-mode |
Specifies a mode for removing SCTE splices from the manifest. Available modes:
|
Enum |
0 — After stop time
1 — After start time
|
0 |
readable, writable |
segment-duration |
Specifies the media segment duration in ms. |
Unsigned Integer |
[1 – 4294967295] |
10000 |
readable, writable |
segment-duration-gop |
Specifies the media segment duration in groups of pictures (GOP). |
Unsigned Integer |
[0 – 4294967295] |
0 |
readable, writable |
segment-filename |
Specifies the media segment file name. |
String |
$Name$/$StreamName$/$Number$ |
readable, writable |
|
segments-generate-max-depth |
Specifies the segment generation time if the input stream is interrupted. This is necessary to avoid breaks in broadcasting. |
Integer |
[0 – 2147483647] |
30 |
readable, writable |
status-info |
Indicates status information. |
String |
“” |
readable |
|
target-period-duration |
Specifies the target period duration (sec). Used along with the |
Integer |
[0 – 2147483647] |
0 |
readable, writable |
teletext-subtitles-mode |
Specifies the output format for teletext subtitles. Available modes:
|
Enum |
0 — TTML
1 — WebVTT
|
0 |
readable, writable |
timeline-mode |
Specifies the timeline mode. Available modes:
|
Enum |
0 — SegmentTimeline
1 — Template@Duration
|
0 |
readable, writable |
webdav-allow-delete |
Enables or disables the |
Boolean |
true, false |
false |
readable, writable |
webdav-current-bitrate |
Indicates the current WebDAV bitrate. |
String |
“” |
readable |
|
webdav-error |
Indicates the WebDAV error. |
String |
“” |
readable |
|
webdav-reupload-attempts |
Specifies the number of attempts to resend a chunk or another file to the WebDAV server if an error or a timeout is received. |
Unsigned Integer |
[0 – 4294967295] |
2 |
readable, writable |
webdav-segment-upload-confirmation-timeout |
Specifies the timeout for confirming the upload from the WebDAV server (ms). |
Unsigned Integer |
[0 – 4294967295] |
0 |
readable, writable |
webdav-server-response-timeout |
Specifies the timeout for getting the WebDAV server response (ms). Setting the value to |
Integer |
[0 – 2147483647] |
0 |
readable, writable |
webdav-uploading-timeout |
Specifies the WebDAV uploading timeout (sec). |
Unsigned Integer |
[1 – 60] |
10 |
readable, writable |
webdav-url |
Specifies the output WebDAV URL. |
String |
“” |
readable, writable |
- 1
Header and payload structures may contain other fields required by the CAS.