Shaka Packager SDK
|
Classes | |
class | CallbackFile |
class | File |
Define an abstract file interface. More... | |
struct | FileCloser |
class | IoCache |
Declaration of class which implements a thread-safe circular buffer. More... | |
class | LocalFile |
Implement LocalFile which deals with local storage. More... | |
class | MemoryFile |
struct | BufferCallbackParams |
Buffer callback params. More... | |
class | ThreadedIoFile |
Declaration of class which implements a thread-safe circular buffer. More... | |
class | UdpFile |
Implements UdpFile, which receives UDP unicast and multicast streams. More... | |
class | UdpOptions |
Options parsed from UDP url string of the form: udp://ip:port[?options]. More... | |
struct | HlsParams |
HLS related parameters. More... | |
struct | ChunkingParams |
Chunking (segmentation) related parameters. More... | |
struct | WidevineSigner |
Signer credential for Widevine license server. More... | |
struct | WidevineEncryptionParams |
Widevine encryption parameters. More... | |
struct | PlayreadyEncryptionParams |
struct | RawKeyEncryptionParams |
Raw key encryption parameters, i.e. with key parameters provided. More... | |
struct | EncryptionParams |
Encryption parameters. More... | |
struct | WidevineDecryptionParams |
Widevine decryption parameters. More... | |
struct | RawKeyDecryptionParams |
Raw key decryption parameters, i.e. with key parameters provided. More... | |
struct | DecryptionParams |
Decryption parameters. More... | |
struct | Mp4OutputParams |
MP4 (ISO-BMFF) output related parameters. More... | |
struct | Element |
struct | ContentProtectionElement |
class | DashIopMpdNotifier |
class | MockMpdBuilder |
class | MockAdaptationSet |
class | MockRepresentation |
class | MockMpdNotifier |
class | MpdBuilder |
This class generates DASH MPDs (Media Presentation Descriptions). More... | |
class | AdaptationSet |
class | RepresentationStateChangeListener |
class | Representation |
class | MpdNotifier |
struct | MpdOptions |
Defines Mpd Options. More... | |
struct | SegmentInfo |
class | SimpleMpdNotifier |
struct | MpdParams |
DASH MPD related parameters. More... | |
class | MpdNotifierFactory |
class | MpdWriter |
struct | TestParams |
Parameters used for testing. More... | |
struct | PackagingParams |
Packaging parameters. More... | |
struct | StreamDescriptor |
Defines a single input/output stream. More... | |
class | Packager |
class | Status |
Typedefs | |
typedef MediaInfo::AudioInfo | AudioInfo |
typedef MediaInfo::VideoInfo | VideoInfo |
Enumerations | |
enum | HlsPlaylistType { kVod, kEvent, kLive } |
enum | KeyProvider { kNone = 0, kWidevine = 1, kPlayready = 2, kRawKey = 3 } |
Encryption / decryption key providers. | |
enum | ContentType { kContentTypeUnknown, kContentTypeVideo, kContentTypeAudio, kContentTypeText } |
enum | DashProfile { kUnknown, kOnDemand, kLive } |
enum | MpdType { kStatic, kDynamic } |
Functions | |
bool | ValidateFixedCryptoFlags () |
bool | ValidateHexString (const char *flagname, const std::string &value, std::vector< uint8_t > *value_bytes) |
bool | ValidatePRCryptoFlags () |
base::Optional< StreamDescriptor > | ParseStreamDescriptor (const std::string &descriptor_string) |
void | PrintError (const std::string &error_message) |
template<class FlagType > | |
bool | ValidateFlag (const char *flag_name, const FlagType &flag_value, bool condition, bool optional, const char *label) |
bool | ValidateWidevineCryptoFlags () |
bool | TempFilePath (const std::string &temp_dir, std::string *temp_file_path) |
std::string | LanguageToShortestForm (const std::string &language) |
std::string | LanguageToISO_639_2 (const std::string &language) |
bool | WriteMpdToFile (const std::string &output_path, MpdBuilder *mpd_builder) |
ContentType | GetContentType (const MediaInfo &media_info) |
std::string | Uint8VectorToBase64 (const std::vector< uint8_t > &input) |
Converts uint8 vector into base64 encoded string. | |
bool | HasVODOnlyFields (const MediaInfo &media_info) |
bool | HasLiveOnlyFields (const MediaInfo &media_info) |
void | RemoveDuplicateAttributes (ContentProtectionElement *content_protection_element) |
std::string | GetLanguage (const MediaInfo &media_info) |
std::string | GetCodecs (const MediaInfo &media_info) |
std::string | GetBaseCodec (const MediaInfo &media_info) |
std::string | GetAdaptationSetKey (const MediaInfo &media_info) |
std::string | SecondsToXmlDuration (double seconds) |
bool | GetDurationAttribute (xmlNodePtr node, float *duration) |
bool | MoreThanOneTrue (bool b1, bool b2, bool b3) |
bool | AtLeastOneTrue (bool b1, bool b2, bool b3) |
bool | OnlyOneTrue (bool b1, bool b2, bool b3) |
std::string | DoubleToString (double value) |
bool | HexToUUID (const std::string &data, std::string *uuid_format) |
void | UpdateContentProtectionPsshHelper (const std::string &drm_uuid, const std::string &pssh, std::list< ContentProtectionElement > *content_protection_elements) |
void | AddContentProtectionElements (const MediaInfo &media_info, Representation *parent) |
void | AddContentProtectionElements (const MediaInfo &media_info, AdaptationSet *parent) |
std::ostream & | operator<< (std::ostream &os, const Status &x) |
NOTE: Inclusion of this module will cause curl_global_init and curl_global_cleanup to be called at static initialization / deinitialization time.
All the methods that are virtual are virtual for mocking. NOTE: Inclusion of this module will cause xmlInitParser and xmlCleanupParser to be called at static initialization / deinitialization time.
This file contains helper functions and enums for MpdNotifier implementations.
|
strong |
Defines the EXT-X-PLAYLIST-TYPE in the HLS specification. For HlsPlaylistType of kLive, EXT-X-PLAYLIST-TYPE tag is omitted.
Definition at line 16 of file hls_params.h.
void shaka::AddContentProtectionElements | ( | const MediaInfo & | media_info, |
Representation * | parent | ||
) |
Adds <ContentProtection> elements specified by media_info to adaptation_set. Note that this will add the elements as direct chlidren of AdaptationSet.
media_info | may or may not have protected_content field. |
adaptation_set | is the parent element that owns the ContentProtection elements. |
Definition at line 363 of file mpd_utils.cc.
void shaka::AddContentProtectionElements | ( | const MediaInfo & | media_info, |
AdaptationSet * | parent | ||
) |
Adds <ContentProtection> elements specified by media_info to representation.
media_info | may or may not have protected_content field. |
representation | is the parent element that owns the ContentProtection elements. |
Definition at line 368 of file mpd_utils.cc.
std::string shaka::DoubleToString | ( | double | value | ) |
Converts double to string.
value | is the input double data. |
Definition at line 192 of file mpd_utils.cc.
ContentType shaka::GetContentType | ( | const MediaInfo & | media_info | ) |
Determines the content type of |media_info|.
media_info | is the information about the media. |
Definition at line 32 of file mpd_notifier_util.cc.
bool shaka::HexToUUID | ( | const std::string & | data, |
std::string * | uuid_format | ||
) |
Converts hex data to UUID format. Hex data must be size 16.
data | input hex data. |
uuid_format | is the UUID format of the input. |
Definition at line 199 of file mpd_utils.cc.
std::string shaka::LanguageToISO_639_2 | ( | const std::string & | language | ) |
Convert a language tag to a 3-letter ISO-639-2 code, as required by the ISO BMFF spec. The input is assumed to be a valid ISO-639-2 or ISO-639-1 language code. Regions and variants are not supported.
Definition at line 117 of file language_utils.cc.
std::string shaka::LanguageToShortestForm | ( | const std::string & | language | ) |
Convert a language tag to its shortest form, as required by RFC 5646 indicated in the MPD and HLS specs. Assumes the input is a valid ISO-639-2 or ISO-639-1 language tag, or an empty string. Regions and variants are preserved in the conversion.
Definition at line 89 of file language_utils.cc.
base::Optional< StreamDescriptor > shaka::ParseStreamDescriptor | ( | const std::string & | descriptor_string | ) |
Parses a descriptor string, and inserts into sorted list of stream descriptors.
descriptor_string | contains comma separate name-value pairs describing the stream. |
descriptor_list | is a pointer to the sorted descriptor list into which the new descriptor should be inserted. |
Definition at line 74 of file stream_descriptor.cc.
void shaka::PrintError | ( | const std::string & | error_message | ) |
Format and print error message.
error_message | specifies the error message. |
Definition at line 15 of file validate_flag.cc.
bool shaka::TempFilePath | ( | const std::string & | temp_dir, |
std::string * | temp_file_path | ||
) |
Create a temp file name in directory temp_dir. Generate the temp file in os specific temporary directory if temp_dir is empty.
temp_dir | specifies the directory where the file should go. |
temp_file_path | is the result temp file path on success. |
Definition at line 30 of file file_util.cc.
bool shaka::ValidateFixedCryptoFlags | ( | ) |
Validate fixed encryption/decryption flags.
Definition at line 35 of file fixed_key_encryption_flags.cc.
bool shaka::ValidateFlag | ( | const char * | flag_name, |
const FlagType & | flag_value, | ||
bool | condition, | ||
bool | optional, | ||
const char * | label | ||
) |
Validate a flag against the given condition.
flag_name | is the name of the flag. |
flag_value | is the value of the flag. |
condition,optional | determines how the flag should be validated. If condition is true and optional is false, then this flag is required |
label | specifies the label associated with the condition. It is used to generate the error message on validation failure. |
Definition at line 33 of file validate_flag.h.
bool shaka::ValidatePRCryptoFlags | ( | ) |
Validate PlayReady encryption flags.
Definition at line 33 of file playready_key_encryption_flags.cc.
bool shaka::ValidateWidevineCryptoFlags | ( | ) |
Validate widevine encryption/decryption flags.
Definition at line 73 of file widevine_encryption_flags.cc.
bool shaka::WriteMpdToFile | ( | const std::string & | output_path, |
MpdBuilder * | mpd_builder | ||
) |
Outputs MPD to output_path.
output_path | is the path to the MPD output location. |
mpd_builder | is the MPD builder instance. |
Definition at line 16 of file mpd_notifier_util.cc.