You.i Engine
CYIExoPlayerVideoPlayer Class Reference

Detailed Description

The ExoPlayer video player object.

#include <player/YiExoPlayerVideoPlayer.h>

Inheritance diagram for CYIExoPlayerVideoPlayer:

Public Member Functions

 CYIExoPlayerVideoPlayer ()
 
virtual ~CYIExoPlayerVideoPlayer ()
 
- Public Member Functions inherited from CYIAbstractVideoPlayer
virtual ~CYIAbstractVideoPlayer ()
 
CYIString GetName () const
 
CYIString GetVersion () const
 
Statistics GetStatistics () const
 
void Init ()
 
void Prepare (const CYIUrl &videoURI, StreamingFormat formatHint, CYIAbstractVideoPlayer::PlaybackState initialState=CYIAbstractVideoPlayer::PlaybackState::Paused, std::unique_ptr< DRMConfiguration > pDRMConfiguration=nullptr, uint64_t startTimeMs=0)
 
void Prepare (const std::shared_ptr< CYIAssetVideo > &videoAsset, StreamingFormat formatHint, CYIAbstractVideoPlayer::PlaybackState initialState=CYIAbstractVideoPlayer::PlaybackState::Paused, std::unique_ptr< DRMConfiguration > pDRMConfiguration=nullptr, uint64_t startTimeMs=0)
 
void Play ()
 
void Pause ()
 
void Stop ()
 
std::vector< SeekableRangeGetLiveSeekableRanges () const
 
void Seek (uint64_t seekPositionMs)
 
bool SupportsFormat (StreamingFormat streamingFormat, DRMScheme drmScheme=DRMScheme::None)
 
uint64_t GetDurationMs () const
 
uint64_t GetCurrentTimeMs () const
 
CYIAbstractVideoPlayer::PlayerState GetPlayerState () const
 
std::shared_ptr< CYIPlatformPlayerHandleGetPlatformPlayerHandle () const
 
std::shared_ptr< CYIPlatformViewHandleGetPlatformPlayerContainerViewHandle () const
 
void SetClosedCaptionsEnabled (bool enabled)
 
bool AreClosedCaptionsTracksAvailable () const
 
bool SelectClosedCaptionsTrack (uint32_t id)
 
std::vector< ClosedCaptionsTrackInfoGetClosedCaptionsTracks () const
 
ClosedCaptionsTrackInfo GetActiveClosedCaptionsTrack () const
 
CYIClosedCaptionsDispatcherGetClosedCaptionsDispatcher () const
 
CYIClosedCaptionsStyleManagerGetClosedCaptionsStyleManager () const
 
CYIVideoSurfaceGetSurface () const
 
bool AreAudioTracksAvailable () const
 
bool SelectAudioTrack (uint32_t id)
 
std::vector< AudioTrackInfoGetAudioTracks () const
 
AudioTrackInfo GetActiveAudioTrack () const
 
bool IsMuted () const
 
void Mute (bool mute)
 
uint64_t GetMinimumTimeUpdateIntervalMs () const
 
void SetMinimumTimeUpdateIntervalMs (uint64_t minimumTimeUpdateIntervalMs)
 
void SetMaxBitrate (uint64_t maxBitrate)
 
void SetInitialBandwidthHint (uint64_t initialBandwidthHint)
 
void SetUserAgent (const CYIString &userAgent)
 
const DRMConfigurationGetDRMConfiguration () const
 
DRMConfigurationGetDRMConfiguration ()
 
BackgroundPlaybackInterfaceGetBackgroundPlaybackInterface ()
 
const BackgroundPlaybackInterfaceGetBackgroundPlaybackInterface () const
 
HeadphoneJackInterfaceGetHeadphoneJackInterface ()
 
const HeadphoneJackInterfaceGetHeadphoneJackInterface () const
 
BufferingInterfaceGetBufferingInterface ()
 
const BufferingInterfaceGetBufferingInterface () const
 
TimedMetadataInterfaceGetTimedMetadataInterface ()
 
const TimedMetadataInterfaceGetTimedMetadataInterface () const
 
VideoRequestHTTPHeadersInterfaceGetVideoRequestHTTPHeadersInterface ()
 
const VideoRequestHTTPHeadersInterfaceGetVideoRequestHTTPHeadersInterface () const
 
MediaPlaybackControlsInterfaceGetMediaPlaybackControlsInterface ()
 
const MediaPlaybackControlsInterfaceGetMediaPlaybackControlsInterface () const
 
NetworkTimeoutInterfaceGetNetworkTimeoutInterface ()
 
const NetworkTimeoutInterfaceGetNetworkTimeoutInterface () const
 
LiveSessionInterfaceGetLiveSessionInterface ()
 
const LiveSessionInterfaceGetLiveSessionInterface () const
 
AdaptiveResolutionInterfaceGetAdaptiveResolutionInterface ()
 
const AdaptiveResolutionInterfaceGetAdaptiveResolutionInterface () const
 
void SetRefreshDRMConfigurationCallback (RefreshDRMConfigurationCallback callback)
 
- Public Member Functions inherited from CYISignalHandler
 CYISignalHandler ()
 
 CYISignalHandler (const CYISignalHandler &signalHandler)
 
virtual ~CYISignalHandler ()
 
CYISignalHandleroperator= (const CYISignalHandler &signalHandler)
 
void MoveToThread (CYIThread *pThread)
 This function allows the user to override the default thread affinity to any CYIThread that may or may not be running. More...
 
CYIThreadHandle GetThreadAffinity () const
 
void SetThreadAffinity (const CYIThreadHandle &threadAffinity)
 
virtual bool IsConnected () const
 
virtual bool IsConnected (const CYISignalBase &signal) const
 
void Disconnect (CYISignalBase &signal)
 
void DisconnectFromAllSignals ()
 
- Public Member Functions inherited from CYIThread::Listener
 Listener ()
 
virtual ~Listener ()
 
virtual void OnThreadStarted (CYIThread *)
 
virtual void OnThreadTerminated (CYIThread *)
 
virtual void OnThreadFinished (CYIThread *)
 

Friends

class CYIExoPlayerVideoPlayerPriv
 

Additional Inherited Members

- Public Types inherited from CYIAbstractVideoPlayer
enum  MediaState {
  MediaState::Unloaded,
  MediaState::Preparing,
  MediaState::Ready
}
 
enum  PlaybackState {
  PlaybackState::Playing,
  PlaybackState::Paused,
  PlaybackState::Buffering
}
 
enum  StreamingFormat {
  StreamingFormat::HLS = 0,
  StreamingFormat::Smooth,
  StreamingFormat::DASH,
  StreamingFormat::MP4
}
 
enum  DRMScheme {
  DRMScheme::None = 0,
  DRMScheme::FairPlay,
  DRMScheme::PlayReady,
  DRMScheme::WidevineModular,
  DRMScheme::WidevineModularCustomRequest
}
 
enum  ErrorCode {
  ErrorCode::PlaybackError,
  ErrorCode::UnsupportedFormat,
  ErrorCode::StateTransitionError,
  ErrorCode::DRMError,
  ErrorCode::InitializationError,
  ErrorCode::Unknown
}
 
using RTTIInstantiatability = CYIRuntimeTypeInfo::NonInstantiableTag
 
using RefreshDRMConfigurationCallback = std::function< std::unique_ptr< CYIAbstractVideoPlayer::DRMConfiguration >(std::unique_ptr< CYIAbstractVideoPlayer::DRMConfiguration >)>
 
- Public Attributes inherited from CYIAbstractVideoPlayer
CYISignal< std::shared_ptr< CYIPlatformPlayerHandle >, std::shared_ptr< CYIPlatformPlayerHandle > > PlatformPlayerHandleChanged
 
CYISignal< std::shared_ptr< CYIPlatformViewHandle >, std::shared_ptr< CYIPlatformViewHandle > > PlatformPlayerContainerViewHandleChanged
 
CYISignal BufferingStarted
 
CYISignal BufferingEnded
 
CYISignal< ErrorErrorOccurred
 
CYISignal Preparing
 
CYISignal Ready
 
CYISignal Playing
 
CYISignal Paused
 
CYISignal PlaybackComplete
 
CYISignal Finalized
 
CYISignal< uint64_t > CurrentTimeUpdated
 
CYISignal< uint64_t > DurationChanged
 
CYISignal< bool, uint64_t > SeekCompleted
 
CYISignal< const CYIAbstractVideoPlayer::PlayerState & > PlayerStateChanged
 
CYISignal< std::vector< AudioTrackInfo > > AvailableAudioTracksChanged
 
CYISignal< std::vector< ClosedCaptionsTrackInfo > > AvailableClosedCaptionsTracksChanged
 
CYISignal< float > TotalBitrateChanged
 
CYISignal< float > VideoBitrateChanged
 
CYISignal< float > AudioBitrateChanged
 
- Protected Member Functions inherited from CYIAbstractVideoPlayer
 CYIAbstractVideoPlayer ()
 
const std::shared_ptr< CYIMaterial > & GetVideoMaterial () const
 
void SetPlatformPlayerHandle (std::shared_ptr< CYIPlatformPlayerHandle > pPlatformPlayerHandle)
 
void SetPlatformPlayerContainerViewHandle (std::shared_ptr< CYIPlatformViewHandle > pPlatformPlayerContainerViewHandle)
 
void SetVideoSurfaceSize (const glm::ivec2 &size)
 
void ChangeInitialPlaybackState (CYIAbstractVideoPlayer::PlaybackState initialState)
 
CYIAbstractVideoPlayer::PlaybackState GetRequestedInitialPlaybackState () const
 
void CheckAndNotifyMediaTracksChanged ()
 
void UpdateCurrentTime ()
 
void OnRefreshDRMConfiguration ()
 
virtual void Init_ ()
 
virtual void GetClosedCaptionsDispatcher_ () const
 
virtual const VideoRequestHTTPHeadersInterfaceGetVideoRequestHTTPHeadersInterface_ () const
 
virtual const NetworkTimeoutInterfaceGetNetworkTimeoutInterface_ () const
 
virtual const AdaptiveResolutionInterfaceGetAdaptiveResolutionInterface_ () const
 
- Protected Attributes inherited from CYIAbstractVideoPlayer
CYISignal< ErrorNotifyErrorOccurred
 
CYISignal NotifyPlaybackComplete
 
CYISignal< uint64_t > NotifyDurationChanged
 
CYISignal< bool, uint64_t > NotifySeekCompleted
 
std::unique_ptr< CYIVideoPlayerStateManagerm_pStateManager
 
std::unique_ptr< CYIClosedCaptionsDispatcherm_pClosedCaptionsDispatcher
 
std::unique_ptr< CYIClosedCaptionsStyleManagerm_pStyleManager
 
std::unique_ptr< DRMConfigurationm_pDRMConfiguration
 
uint64_t m_maxBitrate
 
uint64_t m_initialBandwidthHint
 
uint64_t m_initialStartTimeMs
 
RefreshDRMConfigurationCallback m_refreshDRMConfigurationCallback
 

Constructor & Destructor Documentation

◆ CYIExoPlayerVideoPlayer()

CYIExoPlayerVideoPlayer::CYIExoPlayerVideoPlayer ( )

◆ ~CYIExoPlayerVideoPlayer()

virtual CYIExoPlayerVideoPlayer::~CYIExoPlayerVideoPlayer ( )
virtual

Friends And Related Function Documentation

◆ CYIExoPlayerVideoPlayerPriv

friend class CYIExoPlayerVideoPlayerPriv
friend

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