Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
CProcessInfo Class Reference

#include <ProcessInfo.h>

Inheritance diagram for CProcessInfo:
VIDEOPLAYER::CProcessInfoAndroid VIDEOPLAYER::CProcessInfoGBM VIDEOPLAYER::CProcessInfoIOS VIDEOPLAYER::CProcessInfoOSX VIDEOPLAYER::CProcessInfoWayland VIDEOPLAYER::CProcessInfoWin VIDEOPLAYER::CProcessInfoWin10 VIDEOPLAYER::CProcessInfoX11

Public Member Functions

virtual ~CProcessInfo ()=default
 
void SetDataCache (CDataCacheCore *cache)
 
void ResetVideoCodecInfo ()
 
void SetVideoDecoderName (const std::string &name, bool isHw)
 
std::string GetVideoDecoderName ()
 
bool IsVideoHwDecoder ()
 
void SetVideoDeintMethod (const std::string &method)
 
std::string GetVideoDeintMethod ()
 
void SetVideoPixelFormat (const std::string &pixFormat)
 
std::string GetVideoPixelFormat ()
 
void SetVideoStereoMode (const std::string &mode)
 
std::string GetVideoStereoMode ()
 
void SetVideoDimensions (int width, int height)
 
void GetVideoDimensions (int &width, int &height)
 
void SetVideoFps (float fps)
 
float GetVideoFps ()
 
void SetVideoDAR (float dar)
 
float GetVideoDAR ()
 
void SetVideoInterlaced (bool interlaced)
 
bool GetVideoInterlaced ()
 
virtual EINTERLACEMETHOD GetFallbackDeintMethod ()
 
virtual void SetSwDeinterlacingMethods ()
 
void UpdateDeinterlacingMethods (std::list< EINTERLACEMETHOD > &methods)
 
bool Supports (EINTERLACEMETHOD method) const
 
void SetDeinterlacingMethodDefault (EINTERLACEMETHOD method)
 
EINTERLACEMETHOD GetDeinterlacingMethodDefault () const
 
CVideoBufferManagerGetVideoBufferManager ()
 
std::vector< AVPixelFormat > GetPixFormats ()
 
void SetPixFormats (std::vector< AVPixelFormat > &formats)
 
void ResetAudioCodecInfo ()
 
void SetAudioDecoderName (const std::string &name)
 
std::string GetAudioDecoderName ()
 
void SetAudioChannels (const std::string &channels)
 
std::string GetAudioChannels ()
 
void SetAudioSampleRate (int sampleRate)
 
int GetAudioSampleRate ()
 
void SetAudioBitsPerSample (int bitsPerSample)
 
int GetAudioBitsPerSample ()
 
virtual bool AllowDTSHDDecode ()
 
virtual bool WantsRawPassthrough ()
 
void SetRenderClockSync (bool enabled)
 
bool IsRenderClockSync ()
 
void UpdateRenderInfo (CRenderInfo &info)
 
void UpdateRenderBuffers (int queued, int discard, int free)
 
void GetRenderBuffers (int &queued, int &discard, int &free)
 
virtual std::vector< AVPixelFormat > GetRenderFormats ()
 
void SeekFinished (int64_t offset)
 Notifies that a seek operation has finished.
 
void SetStateSeeking (bool active)
 
bool IsSeeking ()
 
void SetStateRealtime (bool state)
 
bool IsRealtimeStream ()
 
void SetSpeed (float speed)
 
void SetNewSpeed (float speed)
 
float GetNewSpeed ()
 
void SetFrameAdvance (bool fa)
 
bool IsFrameAdvance ()
 
void SetTempo (float tempo)
 
void SetNewTempo (float tempo)
 
float GetNewTempo ()
 
bool IsTempoAllowed (float tempo)
 
virtual float MinTempoPlatform ()
 
virtual float MaxTempoPlatform ()
 
void SetLevelVQ (int level)
 
int GetLevelVQ ()
 
void SetGuiRender (bool gui)
 
bool GetGuiRender ()
 
void SetVideoRender (bool video)
 
bool GetVideoRender ()
 
unsigned int GetMaxPassthroughOffSyncDuration () const
 
void SetPlayTimes (time_t start, int64_t current, int64_t min, int64_t max)
 
int64_t GetMaxTime ()
 
CVideoSettings GetVideoSettings ()
 
void SetVideoSettings (CVideoSettings &settings)
 
CVideoSettingsLockedGetVideoSettingsLocked ()
 

Static Public Member Functions

static CProcessInfoCreateInstance ()
 
static void RegisterProcessControl (const std::string &id, CreateProcessControl createFunc)
 

Protected Member Functions

 CProcessInfo ()
 

Protected Attributes

CDataCacheCorem_dataCache = nullptr
 
bool m_videoIsHWDecoder
 
std::string m_videoDecoderName
 
std::string m_videoDeintMethod
 
std::string m_videoPixelFormat
 
std::string m_videoStereoMode
 
int m_videoWidth
 
int m_videoHeight
 
float m_videoFPS
 
float m_videoDAR
 
bool m_videoIsInterlaced
 
std::list< EINTERLACEMETHODm_deintMethods
 
EINTERLACEMETHOD m_deintMethodDefault
 
CCriticalSection m_videoCodecSection
 
CVideoBufferManager m_videoBufferManager
 
std::vector< AVPixelFormat > m_pixFormats
 
std::string m_audioDecoderName
 
std::string m_audioChannels
 
int m_audioSampleRate
 
int m_audioBitsPerSample
 
CCriticalSection m_audioCodecSection
 
CCriticalSection m_renderSection
 
bool m_isClockSync
 
CRenderInfo m_renderInfo
 
int m_renderBufQueued = 0
 
int m_renderBufFree = 0
 
int m_renderBufDiscard = 0
 
CCriticalSection m_stateSection
 
bool m_stateSeeking
 
std::atomic_int m_levelVQ
 
std::atomic_bool m_renderGuiLayer
 
std::atomic_bool m_renderVideoLayer
 
float m_tempo
 
float m_newTempo
 
float m_speed
 
float m_newSpeed
 
bool m_frameAdvance
 
time_t m_startTime
 
int64_t m_time
 
int64_t m_timeMax
 
int64_t m_timeMin
 
bool m_realTimeStream
 
CCriticalSection m_settingsSection
 
CVideoSettings m_videoSettings
 
std::unique_ptr< CVideoSettingsLockedm_videoSettingsLocked
 

Static Protected Attributes

static std::map< std::string, CreateProcessControlm_processControls
 

Constructor & Destructor Documentation

◆ ~CProcessInfo()

virtual CProcessInfo::~CProcessInfo ( )
virtualdefault

◆ CProcessInfo()

CProcessInfo::CProcessInfo ( )
protected

Member Function Documentation

◆ AllowDTSHDDecode()

bool CProcessInfo::AllowDTSHDDecode ( )
virtual

◆ CreateInstance()

CProcessInfo * CProcessInfo::CreateInstance ( )
static

◆ GetAudioBitsPerSample()

int CProcessInfo::GetAudioBitsPerSample ( )

◆ GetAudioChannels()

std::string CProcessInfo::GetAudioChannels ( )

◆ GetAudioDecoderName()

std::string CProcessInfo::GetAudioDecoderName ( )

◆ GetAudioSampleRate()

int CProcessInfo::GetAudioSampleRate ( )

◆ GetDeinterlacingMethodDefault()

EINTERLACEMETHOD CProcessInfo::GetDeinterlacingMethodDefault ( ) const

◆ GetFallbackDeintMethod()

◆ GetGuiRender()

bool CProcessInfo::GetGuiRender ( )

◆ GetLevelVQ()

int CProcessInfo::GetLevelVQ ( )

◆ GetMaxPassthroughOffSyncDuration()

unsigned int CProcessInfo::GetMaxPassthroughOffSyncDuration ( ) const

◆ GetMaxTime()

int64_t CProcessInfo::GetMaxTime ( )

◆ GetNewSpeed()

float CProcessInfo::GetNewSpeed ( )

◆ GetNewTempo()

float CProcessInfo::GetNewTempo ( )

◆ GetPixFormats()

std::vector< AVPixelFormat > CProcessInfo::GetPixFormats ( )

◆ GetRenderBuffers()

void CProcessInfo::GetRenderBuffers ( int & queued,
int & discard,
int & free )

◆ GetRenderFormats()

std::vector< AVPixelFormat > CProcessInfo::GetRenderFormats ( )
virtual

◆ GetVideoBufferManager()

CVideoBufferManager & CProcessInfo::GetVideoBufferManager ( )

◆ GetVideoDAR()

float CProcessInfo::GetVideoDAR ( )

◆ GetVideoDecoderName()

std::string CProcessInfo::GetVideoDecoderName ( )

◆ GetVideoDeintMethod()

std::string CProcessInfo::GetVideoDeintMethod ( )

◆ GetVideoDimensions()

void CProcessInfo::GetVideoDimensions ( int & width,
int & height )

◆ GetVideoFps()

float CProcessInfo::GetVideoFps ( )

◆ GetVideoInterlaced()

bool CProcessInfo::GetVideoInterlaced ( )

◆ GetVideoPixelFormat()

std::string CProcessInfo::GetVideoPixelFormat ( )

◆ GetVideoRender()

bool CProcessInfo::GetVideoRender ( )

◆ GetVideoSettings()

CVideoSettings CProcessInfo::GetVideoSettings ( )

◆ GetVideoSettingsLocked()

CVideoSettingsLocked & CProcessInfo::GetVideoSettingsLocked ( )

◆ GetVideoStereoMode()

std::string CProcessInfo::GetVideoStereoMode ( )

◆ IsFrameAdvance()

bool CProcessInfo::IsFrameAdvance ( )

◆ IsRealtimeStream()

bool CProcessInfo::IsRealtimeStream ( )

◆ IsRenderClockSync()

bool CProcessInfo::IsRenderClockSync ( )

◆ IsSeeking()

bool CProcessInfo::IsSeeking ( )

◆ IsTempoAllowed()

bool CProcessInfo::IsTempoAllowed ( float tempo)

◆ IsVideoHwDecoder()

bool CProcessInfo::IsVideoHwDecoder ( )

◆ MaxTempoPlatform()

float CProcessInfo::MaxTempoPlatform ( )
virtual

◆ MinTempoPlatform()

float CProcessInfo::MinTempoPlatform ( )
virtual

◆ RegisterProcessControl()

void CProcessInfo::RegisterProcessControl ( const std::string & id,
CreateProcessControl createFunc )
static

◆ ResetAudioCodecInfo()

void CProcessInfo::ResetAudioCodecInfo ( )

◆ ResetVideoCodecInfo()

void CProcessInfo::ResetVideoCodecInfo ( )

◆ SeekFinished()

void CProcessInfo::SeekFinished ( int64_t offset)

Notifies that a seek operation has finished.

Parameters
offset- the seek offset

◆ SetAudioBitsPerSample()

void CProcessInfo::SetAudioBitsPerSample ( int bitsPerSample)

◆ SetAudioChannels()

void CProcessInfo::SetAudioChannels ( const std::string & channels)

◆ SetAudioDecoderName()

void CProcessInfo::SetAudioDecoderName ( const std::string & name)

◆ SetAudioSampleRate()

void CProcessInfo::SetAudioSampleRate ( int sampleRate)

◆ SetDataCache()

void CProcessInfo::SetDataCache ( CDataCacheCore * cache)

◆ SetDeinterlacingMethodDefault()

void CProcessInfo::SetDeinterlacingMethodDefault ( EINTERLACEMETHOD method)

◆ SetFrameAdvance()

void CProcessInfo::SetFrameAdvance ( bool fa)

◆ SetGuiRender()

void CProcessInfo::SetGuiRender ( bool gui)

◆ SetLevelVQ()

void CProcessInfo::SetLevelVQ ( int level)

◆ SetNewSpeed()

void CProcessInfo::SetNewSpeed ( float speed)

◆ SetNewTempo()

void CProcessInfo::SetNewTempo ( float tempo)

◆ SetPixFormats()

void CProcessInfo::SetPixFormats ( std::vector< AVPixelFormat > & formats)

◆ SetPlayTimes()

void CProcessInfo::SetPlayTimes ( time_t start,
int64_t current,
int64_t min,
int64_t max )

◆ SetRenderClockSync()

void CProcessInfo::SetRenderClockSync ( bool enabled)

◆ SetSpeed()

void CProcessInfo::SetSpeed ( float speed)

◆ SetStateRealtime()

void CProcessInfo::SetStateRealtime ( bool state)

◆ SetStateSeeking()

void CProcessInfo::SetStateSeeking ( bool active)

◆ SetSwDeinterlacingMethods()

void CProcessInfo::SetSwDeinterlacingMethods ( )
virtual

◆ SetTempo()

void CProcessInfo::SetTempo ( float tempo)

◆ SetVideoDAR()

void CProcessInfo::SetVideoDAR ( float dar)

◆ SetVideoDecoderName()

void CProcessInfo::SetVideoDecoderName ( const std::string & name,
bool isHw )

◆ SetVideoDeintMethod()

void CProcessInfo::SetVideoDeintMethod ( const std::string & method)

◆ SetVideoDimensions()

void CProcessInfo::SetVideoDimensions ( int width,
int height )

◆ SetVideoFps()

void CProcessInfo::SetVideoFps ( float fps)

◆ SetVideoInterlaced()

void CProcessInfo::SetVideoInterlaced ( bool interlaced)

◆ SetVideoPixelFormat()

void CProcessInfo::SetVideoPixelFormat ( const std::string & pixFormat)

◆ SetVideoRender()

void CProcessInfo::SetVideoRender ( bool video)

◆ SetVideoSettings()

void CProcessInfo::SetVideoSettings ( CVideoSettings & settings)

◆ SetVideoStereoMode()

void CProcessInfo::SetVideoStereoMode ( const std::string & mode)

◆ Supports()

bool CProcessInfo::Supports ( EINTERLACEMETHOD method) const

◆ UpdateDeinterlacingMethods()

void CProcessInfo::UpdateDeinterlacingMethods ( std::list< EINTERLACEMETHOD > & methods)

◆ UpdateRenderBuffers()

void CProcessInfo::UpdateRenderBuffers ( int queued,
int discard,
int free )

◆ UpdateRenderInfo()

void CProcessInfo::UpdateRenderInfo ( CRenderInfo & info)

◆ WantsRawPassthrough()

virtual bool CProcessInfo::WantsRawPassthrough ( )
inlinevirtual

Member Data Documentation

◆ m_audioBitsPerSample

int CProcessInfo::m_audioBitsPerSample
protected

◆ m_audioChannels

std::string CProcessInfo::m_audioChannels
protected

◆ m_audioCodecSection

CCriticalSection CProcessInfo::m_audioCodecSection
protected

◆ m_audioDecoderName

std::string CProcessInfo::m_audioDecoderName
protected

◆ m_audioSampleRate

int CProcessInfo::m_audioSampleRate
protected

◆ m_dataCache

CDataCacheCore* CProcessInfo::m_dataCache = nullptr
protected

◆ m_deintMethodDefault

EINTERLACEMETHOD CProcessInfo::m_deintMethodDefault
protected

◆ m_deintMethods

std::list<EINTERLACEMETHOD> CProcessInfo::m_deintMethods
protected

◆ m_frameAdvance

bool CProcessInfo::m_frameAdvance
protected

◆ m_isClockSync

bool CProcessInfo::m_isClockSync
protected

◆ m_levelVQ

std::atomic_int CProcessInfo::m_levelVQ
protected

◆ m_newSpeed

float CProcessInfo::m_newSpeed
protected

◆ m_newTempo

float CProcessInfo::m_newTempo
protected

◆ m_pixFormats

std::vector<AVPixelFormat> CProcessInfo::m_pixFormats
protected

◆ m_processControls

std::map< std::string, CreateProcessControl > CProcessInfo::m_processControls
staticprotected

◆ m_realTimeStream

bool CProcessInfo::m_realTimeStream
protected

◆ m_renderBufDiscard

int CProcessInfo::m_renderBufDiscard = 0
protected

◆ m_renderBufFree

int CProcessInfo::m_renderBufFree = 0
protected

◆ m_renderBufQueued

int CProcessInfo::m_renderBufQueued = 0
protected

◆ m_renderGuiLayer

std::atomic_bool CProcessInfo::m_renderGuiLayer
protected

◆ m_renderInfo

CRenderInfo CProcessInfo::m_renderInfo
protected

◆ m_renderSection

CCriticalSection CProcessInfo::m_renderSection
protected

◆ m_renderVideoLayer

std::atomic_bool CProcessInfo::m_renderVideoLayer
protected

◆ m_settingsSection

CCriticalSection CProcessInfo::m_settingsSection
protected

◆ m_speed

float CProcessInfo::m_speed
protected

◆ m_startTime

time_t CProcessInfo::m_startTime
protected

◆ m_stateSection

CCriticalSection CProcessInfo::m_stateSection
protected

◆ m_stateSeeking

bool CProcessInfo::m_stateSeeking
protected

◆ m_tempo

float CProcessInfo::m_tempo
protected

◆ m_time

int64_t CProcessInfo::m_time
protected

◆ m_timeMax

int64_t CProcessInfo::m_timeMax
protected

◆ m_timeMin

int64_t CProcessInfo::m_timeMin
protected

◆ m_videoBufferManager

CVideoBufferManager CProcessInfo::m_videoBufferManager
protected

◆ m_videoCodecSection

CCriticalSection CProcessInfo::m_videoCodecSection
mutableprotected

◆ m_videoDAR

float CProcessInfo::m_videoDAR
protected

◆ m_videoDecoderName

std::string CProcessInfo::m_videoDecoderName
protected

◆ m_videoDeintMethod

std::string CProcessInfo::m_videoDeintMethod
protected

◆ m_videoFPS

float CProcessInfo::m_videoFPS
protected

◆ m_videoHeight

int CProcessInfo::m_videoHeight
protected

◆ m_videoIsHWDecoder

bool CProcessInfo::m_videoIsHWDecoder
protected

◆ m_videoIsInterlaced

bool CProcessInfo::m_videoIsInterlaced
protected

◆ m_videoPixelFormat

std::string CProcessInfo::m_videoPixelFormat
protected

◆ m_videoSettings

CVideoSettings CProcessInfo::m_videoSettings
protected

◆ m_videoSettingsLocked

std::unique_ptr<CVideoSettingsLocked> CProcessInfo::m_videoSettingsLocked
protected

◆ m_videoStereoMode

std::string CProcessInfo::m_videoStereoMode
protected

◆ m_videoWidth

int CProcessInfo::m_videoWidth
protected

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