kodi
Public Member Functions | Public Attributes | Protected Attributes | List of all members
IPlayer Class Referenceabstract
Inheritance diagram for IPlayer:
Inheritance graph
[legend]
Collaboration diagram for IPlayer:
Collaboration graph
[legend]

Public Member Functions

 IPlayer (IPlayerCallback &callback)
 
virtual bool Initialize (TiXmlElement *pConfig)
 
virtual bool OpenFile (const CFileItem &file, const CPlayerOptions &options)
 
virtual bool QueueNextFile (const CFileItem &file)
 
virtual void OnNothingToQueueNotify ()
 
virtual bool CloseFile (bool reopen=false)=0
 
virtual bool IsPlaying () const
 
virtual bool CanPause () const
 
virtual void Pause ()=0
 
virtual bool HasVideo () const =0
 
virtual bool HasAudio () const =0
 
virtual bool HasGame () const
 
virtual bool HasRDS () const
 
virtual bool HasID3 () const
 
virtual bool IsPassthrough () const
 
virtual bool CanSeek () const
 
virtual void Seek (bool bPlus=true, bool bLargeStep=false, bool bChapterOverride=false)=0
 
virtual bool SeekScene (bool bPlus=true)
 
virtual void SeekPercentage (float fPercent=0)
 
virtual float GetCachePercentage () const
 
virtual void SetMute (bool bOnOff)
 
virtual void SetVolume (float volume)
 
virtual void SetDynamicRangeCompression (long drc)
 
virtual void SetAVDelay (float fValue=0.0f)
 
virtual float GetAVDelay ()
 
virtual void SetSubTitleDelay (float fValue=0.0f)
 
virtual float GetSubTitleDelay ()
 
virtual int GetSubtitleCount () const
 
virtual int GetSubtitle ()
 
virtual void GetSubtitleStreamInfo (int index, SubtitleStreamInfo &info) const
 
virtual void SetSubtitle (int iStream)
 
virtual bool GetSubtitleVisible () const
 
virtual void SetSubtitleVisible (bool bVisible)
 
virtual void SetSubtitleVerticalPosition (int value, bool save)
 Set the subtitle vertical position, it depends on current screen resolution. More...
 
virtual void AddSubtitle (const std::string &strSubPath)
 Adds the subtitle(s) provided by the given file to the available player streams and actives the first of the added stream(s). More...
 
virtual int GetAudioStreamCount () const
 
virtual int GetAudioStream ()
 
virtual void SetAudioStream (int iStream)
 
virtual void GetAudioStreamInfo (int index, AudioStreamInfo &info) const
 
virtual int GetVideoStream () const
 
virtual int GetVideoStreamCount () const
 
virtual void GetVideoStreamInfo (int streamId, VideoStreamInfo &info) const
 
virtual void SetVideoStream (int iStream)
 
virtual int GetPrograms (std::vector< ProgramInfo > &programs)
 
virtual void SetProgram (int progId)
 
virtual int GetProgramsCount () const
 
virtual bool HasTeletextCache () const
 
virtual std::shared_ptr< TextCacheStruct_tGetTeletextCache ()
 
virtual void LoadPage (int p, int sp, unsigned char *buffer)
 
virtual int GetChapterCount () const
 
virtual int GetChapter () const
 
virtual void GetChapterName (std::string &strChapterName, int chapterIdx=-1) const
 
virtual int64_t GetChapterPos (int chapterIdx=-1) const
 
virtual int SeekChapter (int iChapter)
 
virtual void SeekTime (int64_t iTime=0)
 
virtual bool SeekTimeRelative (int64_t iTime)
 
virtual void SetTime (int64_t time)
 Sets the current time. This can be used for injecting the current time. This is not to be confused with a seek. It just can be used if endless streams contain multiple tracks in reality (like with airtunes)
 
virtual void SetTotalTime (int64_t time)
 Set the total time in milliseconds this can be used for injecting the duration in case its not available in the underlaying decoder (airtunes for example)
 
virtual void SetSpeed (float speed)=0
 
virtual void SetTempo (float tempo)
 
virtual bool SupportsTempo () const
 
virtual void FrameAdvance (int frames)
 
virtual bool IsCaching () const
 
virtual int GetCacheLevel () const
 
virtual bool IsInMenu () const
 
virtual MenuType GetSupportedMenuType () const
 Get the supported menu type. More...
 
virtual bool OnAction (const CAction &action)
 
virtual std::string GetPlayerState ()
 
virtual bool SetPlayerState (const std::string &state)
 
virtual void GetAudioCapabilities (std::vector< int > &audioCaps) const
 
virtual void GetSubtitleCapabilities (std::vector< int > &subCaps) const
 define the subtitle capabilities of the player
 
virtual void Render (bool clear, uint32_t alpha=255, bool gui=true)
 hook into render loop of render thread
 
virtual void FlushRenderer ()
 
virtual void SetRenderViewMode (int mode, float zoom, float par, float shift, bool stretch)
 
virtual float GetRenderAspectRatio () const
 
virtual void TriggerUpdateResolution ()
 
virtual bool IsRenderingVideo () const
 
virtual void GetRects (CRect &source, CRect &dest, CRect &view) const
 
virtual unsigned int GetOrientation () const
 
virtual bool Supports (EINTERLACEMETHOD method) const
 
virtual EINTERLACEMETHOD GetDeinterlacingMethodDefault () const
 
virtual bool Supports (ESCALINGMETHOD method) const
 
virtual bool Supports (ERENDERFEATURE feature) const
 
virtual unsigned int RenderCaptureAlloc ()
 
virtual void RenderCaptureRelease (unsigned int captureId)
 
virtual void RenderCapture (unsigned int captureId, unsigned int width, unsigned int height, int flags)
 
virtual bool RenderCaptureGetPixels (unsigned int captureId, unsigned int millis, uint8_t *buffer, unsigned int size)
 
virtual CVideoSettings GetVideoSettings () const
 
virtual void SetVideoSettings (CVideoSettings &settings)
 
virtual bool HasGameAgent () const
 Check if any players are playing a game. More...
 

Public Attributes

std::string m_name
 
std::string m_type
 

Protected Attributes

IPlayerCallbackm_callback
 

Member Function Documentation

◆ AddSubtitle()

virtual void IPlayer::AddSubtitle ( const std::string &  strSubPath)
inlinevirtual

Adds the subtitle(s) provided by the given file to the available player streams and actives the first of the added stream(s).

E.g., vob subs can contain multiple streams.

Parameters
[in]strSubPathThe full path of the subtitle file.

Reimplemented in CVideoPlayer.

◆ GetSupportedMenuType()

virtual MenuType IPlayer::GetSupportedMenuType ( ) const
inlinevirtual

Get the supported menu type.

Returns
The supported menu type

Reimplemented in CVideoPlayer.

◆ HasGameAgent()

virtual bool IPlayer::HasGameAgent ( ) const
inlinevirtual

Check if any players are playing a game.

Returns
True if at least one player has an input device attached to the game, false otherwise

Reimplemented in KODI::RETRO::CRetroPlayer.

◆ SetSubtitleVerticalPosition()

virtual void IPlayer::SetSubtitleVerticalPosition ( int  value,
bool  save 
)
inlinevirtual

Set the subtitle vertical position, it depends on current screen resolution.

Parameters
valueThe subtitle position in pixels
saveIf true, the value will be saved to resolution info

Reimplemented in CVideoPlayer.


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