You.i Engine
YiVLCVideoPlayer.h
Go to the documentation of this file.
1 // © You i Labs Inc. 2000-2020. All rights reserved.
2 #ifndef _YI_VLC_VIDEO_PLAYER_H_
3 #define _YI_VLC_VIDEO_PLAYER_H_
4 
6 
7 class CYIVLCVideoPlayerPriv;
8 
14 class CYIAssetTextureRaw;
15 
17 {
18  friend class CYIVLCVideoPlayerPriv;
19 
20 public:
22  virtual ~CYIVLCVideoPlayer();
23 
24  virtual CYIString GetName_() const override;
25  virtual Statistics GetStatistics_() const override;
26  virtual std::unique_ptr<CYIVideoSurface> CreateSurface_() override;
27  virtual void Prepare_(const CYIUrl &videoURI, StreamingFormat format) override;
28  virtual void Play_() override;
29  virtual void Pause_() override;
30  virtual uint64_t GetDurationMs_() const override;
31  virtual uint64_t GetCurrentTimeMs_() const override;
32  virtual void Stop_() override;
33  virtual std::vector<SeekableRange> GetLiveSeekableRanges_() const override;
34  virtual void Seek_(uint64_t seekPositionMs) override;
35  virtual bool SupportsFormat_(StreamingFormat format, DRMScheme drmScheme) const override;
36  virtual bool IsMuted_() const override;
37  virtual void Mute_(bool mute) override;
38  virtual bool SelectAudioTrack_(uint32_t id) override;
40  virtual std::vector<CYIAbstractVideoPlayer::AudioTrackInfo> GetAudioTracks_() const override;
41  virtual void DisableClosedCaptions_() override;
42  virtual bool SelectClosedCaptionsTrack_(uint32_t id) override;
43  virtual std::vector<ClosedCaptionsTrackInfo> GetClosedCaptionsTracks_() const override;
45  virtual void SetUserAgent_(const CYIString &userAgent) override;
46 
47 private:
48  std::shared_ptr<CYIAssetTextureRaw> m_pVideoTexture;
49  std::unique_ptr<CYIVLCVideoPlayerPriv> m_pPriv;
50  StreamingFormat m_formatHint;
51  virtual bool HasNativeStartTimeHandling_() const override;
53 
55 };
56 
61 #endif
virtual bool SelectAudioTrack_(uint32_t id) override
#define YI_DISALLOW_COPY_AND_ASSIGN(TypeName)
Delete the copy constructor and assignment operator (and consequently the move constructor as well) ...
Definition: YiPredef.h:122
Definition: YiAbstractVideoPlayer.h:210
virtual CYIAbstractVideoPlayer::ClosedCaptionsTrackInfo GetActiveClosedCaptionsTrack_() const override
Container class for Unicode strings. Conceptually, a CYIString object is a sequence of Unicode charac...
Definition: YiString.h:36
virtual void Stop_() override
virtual CYIString GetName_() const override
Definition: YiVLCVideoPlayer.h:16
virtual uint64_t GetDurationMs_() const override
virtual ~CYIVLCVideoPlayer()
An abstract video player that provides a basic interface that all subclasses must implement...
Definition: YiAbstractVideoPlayer.h:56
virtual std::vector< SeekableRange > GetLiveSeekableRanges_() const override
virtual void Pause_() override
virtual std::vector< ClosedCaptionsTrackInfo > GetClosedCaptionsTracks_() const override
A texture asset representing an image which will be loaded into the GPU.
Definition: YiAssetTextureRaw.h:21
virtual CYIAbstractVideoPlayer::AudioTrackInfo GetActiveAudioTrack_() const override
virtual void Play_() override
virtual bool SelectClosedCaptionsTrack_(uint32_t id) override
A class used to encapsulate an URL.
Definition: YiUrl.h:24
virtual Statistics GetStatistics_() const override
virtual void Mute_(bool mute) override
StreamingFormat
Definition: YiAbstractVideoPlayer.h:110
Definition: YiAbstractVideoPlayer.h:581
friend class CYIVLCVideoPlayerPriv
Definition: YiVLCVideoPlayer.h:18
virtual std::vector< CYIAbstractVideoPlayer::AudioTrackInfo > GetAudioTracks_() const override
#define YI_TYPE_BASES(CLASS, BASES...)
Definition: YiRtti.h:257
virtual std::unique_ptr< CYIVideoSurface > CreateSurface_() override
virtual bool IsMuted_() const override
virtual void SetUserAgent_(const CYIString &userAgent) override
virtual void Seek_(uint64_t seekPositionMs) override
virtual void DisableClosedCaptions_() override
DRMScheme
Definition: YiAbstractVideoPlayer.h:123
virtual void Prepare_(const CYIUrl &videoURI, StreamingFormat format) override
virtual bool SupportsFormat_(StreamingFormat format, DRMScheme drmScheme) const override
virtual uint64_t GetCurrentTimeMs_() const override
Definition: YiAbstractVideoPlayer.h:234