Shaka Packager SDK
Public Attributes | List of all members
shaka::StreamDescriptor Struct Reference

Defines a single input/output stream. More...

#include <packager.h>

Public Attributes

std::string input
 Input/source media file path or network stream URL. Required.
 
std::string stream_selector
 
std::string output
 
std::string segment_template
 Specifies segment template. Can be empty.
 
std::string output_format
 
bool skip_encryption = false
 
std::string drm_label
 
uint32_t trick_play_factor = 0
 
uint32_t bandwidth = 0
 
std::string language
 
int32_t cc_index = -1
 
std::string hls_name
 
std::string hls_group_id
 
std::string hls_playlist_name
 
std::string hls_iframe_playlist_name
 
std::vector< std::string > hls_characteristics
 
std::vector< std::string > dash_accessiblities
 Optional for DASH output. It defines Accessibility elements of the stream.
 
std::vector< std::string > dash_roles
 Optional for DASH output. It defines Role elements of the stream.
 
bool dash_only = false
 Set to true to indicate that the stream is for dash only.
 
bool hls_only = false
 Set to true to indicate that the stream is for hls only.
 

Detailed Description

Defines a single input/output stream.

Definition at line 76 of file packager.h.

Member Data Documentation

◆ bandwidth

uint32_t shaka::StreamDescriptor::bandwidth = 0

Optional user-specified content bit rate for the stream, in bits/sec. If specified, this value is propagated to the $Bandwidth$ template parameter for segment names. If not specified, its value may be estimated.

Definition at line 108 of file packager.h.

◆ cc_index

int32_t shaka::StreamDescriptor::cc_index = -1

Optional value for the index of the sub-stream to use. For some text formats, there are multiple "channels" in a single stream. This allows selecting only one channel.

Definition at line 115 of file packager.h.

◆ drm_label

std::string shaka::StreamDescriptor::drm_label

Specifies a custom DRM stream label, which can be a DRM label defined by the DRM system. Typically values include AUDIO, SD, HD, UHD1, UHD2. If not provided, the DRM stream label is derived from stream type (video, audio), resolutions etc.

Definition at line 100 of file packager.h.

◆ hls_characteristics

std::vector<std::string> shaka::StreamDescriptor::hls_characteristics

Optional for HLS output. It defines the CHARACTERISTICS attribute of the stream.

Definition at line 132 of file packager.h.

◆ hls_group_id

std::string shaka::StreamDescriptor::hls_group_id

Required for audio when outputting HLS. It defines the group ID for the output stream. This is used as the GROUP-ID attribute for EXT-X-MEDIA.

Definition at line 123 of file packager.h.

◆ hls_iframe_playlist_name

std::string shaka::StreamDescriptor::hls_iframe_playlist_name

Optional for HLS output. It defines the name of the I-Frames only playlist for the stream. For Video only. Usually ends with .m3u8.

Definition at line 129 of file packager.h.

◆ hls_name

std::string shaka::StreamDescriptor::hls_name

Required for audio when outputting HLS. It defines the name of the output stream, which is not necessarily the same as output. This is used as the NAME attribute for EXT-X-MEDIA.

Definition at line 120 of file packager.h.

◆ hls_playlist_name

std::string shaka::StreamDescriptor::hls_playlist_name

Required for HLS output. It defines the name of the playlist for the stream. Usually ends with .m3u8.

Definition at line 126 of file packager.h.

◆ language

std::string shaka::StreamDescriptor::language

Optional value which contains a user-specified language tag. If specified, this value overrides any language metadata in the input stream.

Definition at line 111 of file packager.h.

◆ output

std::string shaka::StreamDescriptor::output

Specifies output file path or init segment path (if segment template is specified). Can be empty for self initialization media segments.

Definition at line 86 of file packager.h.

◆ output_format

std::string shaka::StreamDescriptor::output_format

Optional value which specifies output container format, e.g. "mp4". If not specified, will detect from output / segment template name.

Definition at line 92 of file packager.h.

◆ skip_encryption

bool shaka::StreamDescriptor::skip_encryption = false

If set to true, the stream will not be encrypted. This is useful, e.g. to encrypt only video streams.

Definition at line 95 of file packager.h.

◆ stream_selector

std::string shaka::StreamDescriptor::stream_selector

Stream selector, can be audio, video, text or a zero based stream index. Required.

Definition at line 82 of file packager.h.

◆ trick_play_factor

uint32_t shaka::StreamDescriptor::trick_play_factor = 0

If set to a non-zero value, will generate a trick play / trick mode stream with frames sampled from the key frames in the original stream. trick_play_factor defines the sampling rate.

Definition at line 104 of file packager.h.


The documentation for this struct was generated from the following file: