kodi
Public Member Functions | Static Public Member Functions | Static Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
CCoreAudioDevice Class Reference
Collaboration diagram for CCoreAudioDevice:
Collaboration graph
[legend]

Public Member Functions

 CCoreAudioDevice (AudioDeviceID deviceId)
 
bool Open (AudioDeviceID deviceId)
 
void Close ()
 
void Start ()
 
void Stop ()
 
void RemoveObjectListenerProc (AudioObjectPropertyListenerProc callback, void *pClientData)
 
bool SetObjectListenerProc (AudioObjectPropertyListenerProc callback, void *pClientData)
 
AudioDeviceID GetId () const
 
std::string GetName () const
 
bool IsDigital () const
 
UInt32 GetTransportType () const
 
UInt32 GetTotalOutputChannels () const
 
UInt32 GetNumChannelsOfStream (UInt32 streamIdx) const
 
bool GetStreams (AudioStreamIdList *pList)
 
bool IsRunning ()
 
bool SetHogStatus (bool hog)
 
pid_t GetHogStatus ()
 
bool SetMixingSupport (UInt32 mix)
 
bool GetMixingSupport ()
 
bool SetCurrentVolume (Float32 vol)
 
bool GetPreferredChannelLayout (CCoreAudioChannelLayout &layout) const
 
bool GetPreferredChannelLayoutForStereo (CCoreAudioChannelLayout &layout) const
 
bool GetDataSources (CoreAudioDataSourceList *pList) const
 
bool GetDataSource (UInt32 &dataSourceId) const
 
bool SetDataSource (UInt32 &dataSourceId)
 
std::string GetDataSourceName (UInt32 dataSourceId) const
 
std::string GetCurrentDataSourceName () const
 
Float64 GetNominalSampleRate ()
 
bool SetNominalSampleRate (Float64 sampleRate)
 
UInt32 GetNumLatencyFrames ()
 
UInt32 GetBufferSize ()
 
bool SetBufferSize (UInt32 size)
 
bool AddIOProc (AudioDeviceIOProc ioProc, void *pCallbackData)
 
bool RemoveIOProc ()
 

Static Public Member Functions

static void RegisterDeviceChangedCB (bool bRegister, AudioObjectPropertyListenerProc callback, void *ref)
 
static void RegisterDefaultOutputDeviceChangedCB (bool bRegister, AudioObjectPropertyListenerProc callback, void *ref)
 
static void SuppressDefaultOutputDeviceCB (unsigned int suppressTimeMs)
 

Static Protected Member Functions

static OSStatus defaultOutputDeviceChanged (AudioObjectID inObjectID, UInt32 inNumberAddresses, const AudioObjectPropertyAddress inAddresses[], void *inClientData)
 

Protected Attributes

bool m_Started = false
 
AudioDeviceID m_DeviceId = 0
 
int m_MixerRestore = -1
 
AudioDeviceIOProc m_IoProc = nullptr
 
AudioObjectPropertyListenerProc m_ObjectListenerProc = nullptr
 
Float64 m_SampleRateRestore = 0.0
 
pid_t m_HogPid = -1
 
unsigned int m_frameSize = 0
 
unsigned int m_OutputBufferIndex = 0
 
unsigned int m_BufferSizeRestore = 0
 

Static Protected Attributes

static XbmcThreads::EndTime m_callbackSuppressTimer
 
static AudioObjectPropertyListenerProc m_defaultOutputDeviceChangedCB = NULL
 

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