Rialto
0.1
Rialto media pipeline API
|
#include <limits>
#include <optional>
#include <stddef.h>
#include <stdint.h>
#include <utility>
#include <vector>
Go to the source code of this file.
Classes | |
struct | firebolt::rialto::AudioConfig |
Audio specific configuration. More... | |
struct | firebolt::rialto::SubSamplePair |
A pair describing the clear and encrypted bytes in a sub-sample. More... | |
struct | firebolt::rialto::VideoRequirements |
Video decoder requirements used to allocate a suitable decoder for a MediaPipeline session. More... | |
struct | firebolt::rialto::MediaPlayerShmInfo |
Information about the shared memory required for writting data. More... | |
struct | firebolt::rialto::QosInfo |
The information provided in a QOS update. More... | |
struct | firebolt::rialto::WebAudioShmInfo |
Information about the shared memory required for writting data for the web audio playback. More... | |
struct | firebolt::rialto::WebAudioPcmConfig |
Pcm config information. More... | |
union | firebolt::rialto::WebAudioConfig |
Type dependent configuration data. More... | |
struct | firebolt::rialto::Fraction |
Fraction type. More... | |
struct | firebolt::rialto::CodecData |
Codec data with type. More... | |
Typedefs | |
typedef std::vector< std::pair< std::vector< unsigned char >, KeyStatus > > | firebolt::rialto::KeyStatusVector |
A vector of key ID/key status pairs. | |
Enumerations | |
enum | firebolt::rialto::MediaSourceType { UNKNOWN, AUDIO, VIDEO, SUBTITLE } |
The supported types of media source. | |
enum | firebolt::rialto::SourceConfigType { UNKNOWN, AUDIO, VIDEO, VIDEO_DOLBY_VISION, SUBTITLE } |
Shows the types of source configuration. | |
enum | firebolt::rialto::AudioEaseType { LINEAR = 0, INCUBIC, OUTCUBIC } |
The supported audio ease types. | |
enum | firebolt::rialto::MediaType { firebolt::rialto::MediaType::UNKNOWN, firebolt::rialto::MediaType::MSE } |
The media type of media to be played. | |
enum | firebolt::rialto::MediaSourceStatus { firebolt::rialto::MediaSourceStatus::OK, firebolt::rialto::MediaSourceStatus::EOS, firebolt::rialto::MediaSourceStatus::ERROR, firebolt::rialto::MediaSourceStatus::CODEC_CHANGED, firebolt::rialto::MediaSourceStatus::NO_AVAILABLE_SAMPLES } |
The media source status. This is the status of the source after a read. | |
enum | firebolt::rialto::NetworkState { firebolt::rialto::NetworkState::UNKNOWN, firebolt::rialto::NetworkState::IDLE, firebolt::rialto::NetworkState::BUFFERING, firebolt::rialto::NetworkState::BUFFERING_PROGRESS, firebolt::rialto::NetworkState::BUFFERED, firebolt::rialto::NetworkState::STALLED, firebolt::rialto::NetworkState::FORMAT_ERROR, firebolt::rialto::NetworkState::NETWORK_ERROR, firebolt::rialto::NetworkState::DECODE_ERROR } |
The Network State. More... | |
enum | firebolt::rialto::PlaybackState { firebolt::rialto::PlaybackState::UNKNOWN, firebolt::rialto::PlaybackState::IDLE, firebolt::rialto::PlaybackState::PLAYING, firebolt::rialto::PlaybackState::PAUSED, firebolt::rialto::PlaybackState::SEEKING, firebolt::rialto::PlaybackState::SEEK_DONE, firebolt::rialto::PlaybackState::STOPPED, firebolt::rialto::PlaybackState::END_OF_STREAM, firebolt::rialto::PlaybackState::FAILURE } |
The Playback State. More... | |
enum | firebolt::rialto::Format { S8, U8, S16LE, S16BE, U16LE, U16BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S32LE, S32BE, U32LE, U32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, F32LE, F32BE, F64LE, F64BE } |
The Format of the audio samples. Used by the raw audio media types. | |
enum | firebolt::rialto::Layout { INTERLEAVED, NON_INTERLEAVED } |
The layout of channels within a buffer. Used by the raw audio media types. | |
enum | firebolt::rialto::AddSegmentStatus { firebolt::rialto::AddSegmentStatus::OK, firebolt::rialto::AddSegmentStatus::NO_SPACE, firebolt::rialto::AddSegmentStatus::ERROR } |
AddSegmentStatus. More... | |
enum | firebolt::rialto::MediaKeyErrorStatus { firebolt::rialto::MediaKeyErrorStatus::OK, firebolt::rialto::MediaKeyErrorStatus::FAIL, firebolt::rialto::MediaKeyErrorStatus::BAD_SESSION_ID, firebolt::rialto::MediaKeyErrorStatus::NOT_SUPPORTED, firebolt::rialto::MediaKeyErrorStatus::INVALID_STATE } |
The error return status for session management methods. | |
enum | firebolt::rialto::KeySessionType { firebolt::rialto::KeySessionType::UNKNOWN, firebolt::rialto::KeySessionType::TEMPORARY, firebolt::rialto::KeySessionType::PERSISTENT_LICENCE, firebolt::rialto::KeySessionType::PERSISTENT_RELEASE_MESSAGE } |
The media key session type. | |
enum | firebolt::rialto::InitDataType { firebolt::rialto::InitDataType::UNKNOWN, firebolt::rialto::InitDataType::CENC, firebolt::rialto::InitDataType::KEY_IDS, firebolt::rialto::InitDataType::WEBM, firebolt::rialto::InitDataType::DRMHEADER } |
The init data type. | |
enum | firebolt::rialto::KeyStatus { USABLE, EXPIRED, OUTPUT_RESTRICTED, PENDING, INTERNAL_ERROR, RELEASED } |
The key status. | |
enum | firebolt::rialto::SegmentAlignment { UNDEFINED, NAL, AU } |
The alignment of media segment. | |
enum | firebolt::rialto::StreamFormat { UNDEFINED, RAW, AVC, BYTE_STREAM, HVC1, HEV1 } |
The Stream Format of media segment. | |
enum | firebolt::rialto::WebAudioPlayerState { firebolt::rialto::WebAudioPlayerState::UNKNOWN, firebolt::rialto::WebAudioPlayerState::IDLE, firebolt::rialto::WebAudioPlayerState::PLAYING, firebolt::rialto::WebAudioPlayerState::PAUSED, firebolt::rialto::WebAudioPlayerState::END_OF_STREAM, firebolt::rialto::WebAudioPlayerState::FAILURE } |
The Web Audio Player State. | |
enum | firebolt::rialto::CipherMode { UNKNOWN, CENC, CBC1, CENS, CBCS } |
Cipher mode for common encryption, see https://www.iso.org/obp/ui/#iso:std:iso-iec:23001:-7:ed-3:v1:en. | |
enum | firebolt::rialto::CodecDataType { BUFFER, STRING } |
Codec data type. | |
enum | firebolt::rialto::PlaybackError { UNKNOWN, DECRYPTION } |
None fatal asynchronous errors reported by the player. | |
enum | firebolt::rialto::EaseType { EASE_LINEAR, EASE_IN_CUBIC, EASE_OUT_CUBIC } |
Ease type for audio volume changes. | |
Variables | |
constexpr int32_t | firebolt::rialto::kInvalidSessionId {-1} |
The value of an invalid key session. | |
constexpr uint32_t | firebolt::rialto::kInvalidAudioChannels {0} |
The value of an invalid audio channels number. | |
constexpr uint32_t | firebolt::rialto::kInvalidAudioSampleRate {0} |
The value of an invalid audio sampling rate. | |
constexpr int32_t | firebolt::rialto::kUndefinedSize {0} |
The value of an undefined size. | |
constexpr uint32_t | firebolt::rialto::kInvalidLimitBuffering {std::numeric_limits<uint32_t>::max()} |
The value of an invalid limitBuffering. | |
constexpr uint64_t | firebolt::rialto::kUndefinedPosition {std::numeric_limits<uint64_t>::max()} |
The value of undefined position. | |
The definition of the Rialto Common types
|
strong |
AddSegmentStatus.
The add segment status. This is the status adding new segment to Rialto
|
strong |
The Network State.
The network state reflects the state of the network. For backend streaming, say using MediaPipelineURLDelegate, this is important as the backend uses the network to obtain the media data directly.
For streaming that uses the browser to obtain data, say Media Source Extensions playback, only the states NetworkState::IDLE, NetworkState::BUFFERED and NetworkState::DECODE_ERROR should be indicated by the backend.
|
strong |
The Playback State.
The player will start IDLE. Once play() has been called the player will be PLAYING, or once pause() has been called the player will be PAUSED. A seek() request will result in SEEKING and once the seek is complete SEEK_DONE will be issued followed by PLAYING. The STOPPED state will be issued after a stop() request.