Kodi Documentation 18.0
Kodi is an open source media player and entertainment hub.
CVideoPlayerAudio Class Reference

#include <VideoPlayerAudio.h>

Inheritance diagram for CVideoPlayerAudio:
CThread IDVDStreamPlayerAudio IDVDStreamPlayer

Classes

struct  SInfo
 

Public Member Functions

 CVideoPlayerAudio (CDVDClock *pClock, CDVDMessageQueue &parent, CProcessInfo &processInfo)
 
 ~CVideoPlayerAudio () override
 
bool OpenStream (CDVDStreamInfo hints) override
 
void CloseStream (bool bWaitForBuffers) override
 
void SetSpeed (int speed) override
 
void Flush (bool sync) override
 
bool AcceptsData () const override
 
bool HasData () const override
 
int GetLevel () const override
 
bool IsInited () const override
 
void SendMessage (CDVDMsg *pMsg, int priority=0) override
 
void FlushMessages () override
 
void SetDynamicRangeCompression (long drc) override
 
float GetDynamicRangeAmplification () const override
 
std::string GetPlayerInfo () override
 
int GetAudioChannels () override
 
double GetCurrentPts () override
 
bool IsStalled () const override
 
bool IsPassthrough () const override
 
- Public Member Functions inherited from CThread
 CThread (IRunnable *pRunnable, const char *ThreadName)
 
virtual ~CThread ()
 
void Create (bool bAutoDelete=false, unsigned stacksize=0)
 
void Sleep (unsigned int milliseconds)
 
int GetSchedRRPriority (void)
 
bool SetPrioritySched_RR (int iPriority)
 
bool IsAutoDelete () const
 
virtual void StopThread (bool bWait=true)
 
bool IsRunning () const
 
bool IsCurrentThread () const
 
int GetMinPriority (void)
 
int GetMaxPriority (void)
 
int GetNormalPriority (void)
 
int GetPriority (void)
 
bool SetPriority (const int iPriority)
 
bool WaitForThreadExit (unsigned int milliseconds)
 
float GetRelativeUsage ()
 
int64_t GetAbsoluteUsage ()
 
virtual void OnException ()
 
- Public Member Functions inherited from IDVDStreamPlayerAudio
 IDVDStreamPlayerAudio (CProcessInfo &processInfo)
 
 ~IDVDStreamPlayerAudio () override=default
 
virtual void SetVolume (float fVolume)
 
virtual void SetMute (bool bOnOff)
 
virtual bool IsEOS ()
 
- Public Member Functions inherited from IDVDStreamPlayer
 IDVDStreamPlayer (CProcessInfo &processInfo)
 
virtual ~IDVDStreamPlayer ()=default
 

Protected Member Functions

void OnStartup () override
 
void OnExit () override
 
void Process () override
 
bool ProcessDecoderOutput (DVDAudioFrame &audioframe)
 
void UpdatePlayerInfo ()
 
void OpenStream (CDVDStreamInfo &hints, CDVDAudioCodec *codec)
 
bool SwitchCodecIfNeeded ()
 
void SetSyncType (bool passthrough)
 
- Protected Member Functions inherited from CThread
 CThread (const char *ThreadName)
 
WaitResponse AbortableWait (CEvent &event, int timeoutMillis=-1)
 

Protected Attributes

CDVDMessageQueue m_messageQueue
 
CDVDMessageQueuem_messageParent
 
CDVDStreamInfo m_streaminfo
 
double m_audioClock
 
CAudioSinkAE m_audioSink
 
CDVDClockm_pClock
 
CDVDAudioCodecm_pAudioCodec
 
BitstreamStats m_audioStats
 
int m_speed
 
bool m_stalled
 
bool m_paused
 
IDVDStreamPlayer::ESyncState m_syncState
 
XbmcThreads::EndTime m_syncTimer
 
int m_synctype
 
int m_prevsynctype
 
bool m_prevskipped
 
double m_maxspeedadjust
 
CCriticalSection m_info_section
 
SInfo m_info
 
- Protected Attributes inherited from CThread
std::atomic< bool > m_bStop
 
- Protected Attributes inherited from IDVDStreamPlayer
CProcessInfom_processInfo
 

Additional Inherited Members

- Public Types inherited from IDVDStreamPlayer
enum  ESyncState { SYNC_STARTING , SYNC_WAITSYNC , SYNC_INSYNC }
 
- Static Public Member Functions inherited from CThread
static bool IsCurrentThread (const ThreadIdentifier tid)
 
static ThreadIdentifier GetCurrentThreadId ()
 
static ThreadIdentifier GetDisplayThreadId (const ThreadIdentifier tid)
 
static CThreadGetCurrentThread ()
 
- Protected Types inherited from CThread
enum  WaitResponse { WAIT_INTERRUPTED = -1 , WAIT_SIGNALED = 0 , WAIT_TIMEDOUT = 1 }
 

Constructor & Destructor Documentation

◆ CVideoPlayerAudio()

CVideoPlayerAudio::CVideoPlayerAudio ( CDVDClock pClock,
CDVDMessageQueue parent,
CProcessInfo processInfo 
)

◆ ~CVideoPlayerAudio()

CVideoPlayerAudio::~CVideoPlayerAudio ( )
override

Member Function Documentation

◆ AcceptsData()

bool CVideoPlayerAudio::AcceptsData ( ) const
overridevirtual

Implements IDVDStreamPlayerAudio.

◆ CloseStream()

void CVideoPlayerAudio::CloseStream ( bool  bWaitForBuffers)
overridevirtual

Implements IDVDStreamPlayerAudio.

◆ Flush()

void CVideoPlayerAudio::Flush ( bool  sync)
overridevirtual

Implements IDVDStreamPlayerAudio.

◆ FlushMessages()

void CVideoPlayerAudio::FlushMessages ( )
inlineoverridevirtual

Implements IDVDStreamPlayer.

◆ GetAudioChannels()

int CVideoPlayerAudio::GetAudioChannels ( )
overridevirtual

Implements IDVDStreamPlayerAudio.

◆ GetCurrentPts()

double CVideoPlayerAudio::GetCurrentPts ( )
inlineoverridevirtual

Implements IDVDStreamPlayerAudio.

◆ GetDynamicRangeAmplification()

float CVideoPlayerAudio::GetDynamicRangeAmplification ( ) const
inlineoverridevirtual

Implements IDVDStreamPlayerAudio.

◆ GetLevel()

int CVideoPlayerAudio::GetLevel ( ) const
inlineoverridevirtual

Implements IDVDStreamPlayerAudio.

◆ GetPlayerInfo()

std::string CVideoPlayerAudio::GetPlayerInfo ( )
overridevirtual

Implements IDVDStreamPlayerAudio.

◆ HasData()

bool CVideoPlayerAudio::HasData ( ) const
inlineoverridevirtual

Implements IDVDStreamPlayerAudio.

◆ IsInited()

bool CVideoPlayerAudio::IsInited ( ) const
inlineoverridevirtual

Implements IDVDStreamPlayerAudio.

◆ IsPassthrough()

bool CVideoPlayerAudio::IsPassthrough ( ) const
overridevirtual

Implements IDVDStreamPlayerAudio.

◆ IsStalled()

bool CVideoPlayerAudio::IsStalled ( ) const
inlineoverridevirtual

Implements IDVDStreamPlayerAudio.

◆ OnExit()

void CVideoPlayerAudio::OnExit ( )
overrideprotectedvirtual

Reimplemented from CThread.

◆ OnStartup()

void CVideoPlayerAudio::OnStartup ( )
overrideprotectedvirtual

Reimplemented from CThread.

◆ OpenStream() [1/2]

void CVideoPlayerAudio::OpenStream ( CDVDStreamInfo hints,
CDVDAudioCodec codec 
)
protected

◆ OpenStream() [2/2]

bool CVideoPlayerAudio::OpenStream ( CDVDStreamInfo  hints)
overridevirtual

Implements IDVDStreamPlayerAudio.

◆ Process()

void CVideoPlayerAudio::Process ( void  )
overrideprotectedvirtual

Reimplemented from CThread.

◆ ProcessDecoderOutput()

bool CVideoPlayerAudio::ProcessDecoderOutput ( DVDAudioFrame audioframe)
protected

◆ SendMessage()

void CVideoPlayerAudio::SendMessage ( CDVDMsg pMsg,
int  priority = 0 
)
inlineoverridevirtual

Implements IDVDStreamPlayerAudio.

◆ SetDynamicRangeCompression()

void CVideoPlayerAudio::SetDynamicRangeCompression ( long  drc)
inlineoverridevirtual

Implements IDVDStreamPlayerAudio.

◆ SetSpeed()

void CVideoPlayerAudio::SetSpeed ( int  speed)
overridevirtual

Implements IDVDStreamPlayerAudio.

◆ SetSyncType()

void CVideoPlayerAudio::SetSyncType ( bool  passthrough)
protected

◆ SwitchCodecIfNeeded()

bool CVideoPlayerAudio::SwitchCodecIfNeeded ( )
protected

Switch codec if needed. Called when the sample rate gotten from the codec changes, in which case we may want to switch passthrough on/off.

◆ UpdatePlayerInfo()

void CVideoPlayerAudio::UpdatePlayerInfo ( )
protected

Member Data Documentation

◆ m_audioClock

double CVideoPlayerAudio::m_audioClock
protected

◆ m_audioSink

CAudioSinkAE CVideoPlayerAudio::m_audioSink
protected

◆ m_audioStats

BitstreamStats CVideoPlayerAudio::m_audioStats
protected

◆ m_info

SInfo CVideoPlayerAudio::m_info
protected

◆ m_info_section

CCriticalSection CVideoPlayerAudio::m_info_section
mutableprotected

◆ m_maxspeedadjust

double CVideoPlayerAudio::m_maxspeedadjust
protected

◆ m_messageParent

CDVDMessageQueue& CVideoPlayerAudio::m_messageParent
protected

◆ m_messageQueue

CDVDMessageQueue CVideoPlayerAudio::m_messageQueue
protected

◆ m_pAudioCodec

CDVDAudioCodec* CVideoPlayerAudio::m_pAudioCodec
protected

◆ m_paused

bool CVideoPlayerAudio::m_paused
protected

◆ m_pClock

CDVDClock* CVideoPlayerAudio::m_pClock
protected

◆ m_prevskipped

bool CVideoPlayerAudio::m_prevskipped
protected

◆ m_prevsynctype

int CVideoPlayerAudio::m_prevsynctype
protected

◆ m_speed

int CVideoPlayerAudio::m_speed
protected

◆ m_stalled

bool CVideoPlayerAudio::m_stalled
protected

◆ m_streaminfo

CDVDStreamInfo CVideoPlayerAudio::m_streaminfo
protected

◆ m_syncState

IDVDStreamPlayer::ESyncState CVideoPlayerAudio::m_syncState
protected

◆ m_syncTimer

XbmcThreads::EndTime CVideoPlayerAudio::m_syncTimer
protected

◆ m_synctype

int CVideoPlayerAudio::m_synctype
protected

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