openshot-audio  0.1.7
Classes | Public Member Functions | Public Attributes | List of all members
WasapiClasses::WASAPIDeviceBase Class Referenceabstract
Inheritance diagram for WasapiClasses::WASAPIDeviceBase:
WasapiClasses::WASAPIInputDevice WasapiClasses::WASAPIOutputDevice

Public Member Functions

 WASAPIDeviceBase (const ComSmartPtr< IMMDevice > &d, const bool exclusiveMode)
 
virtual ~WASAPIDeviceBase ()
 
bool isOk () const noexcept
 
bool openClient (const double newSampleRate, const BigInteger &newChannels, const int bufferSizeSamples)
 
void closeClient ()
 
void deviceSampleRateChanged ()
 
virtual void updateFormat (bool isFloat)=0
 

Public Attributes

ComSmartPtr< IMMDevice > device
 
ComSmartPtr< IAudioClient > client
 
double sampleRate
 
double defaultSampleRate
 
int numChannels
 
int actualNumChannels
 
int minBufferSize
 
int defaultBufferSize
 
int latencySamples
 
DWORD mixFormatChannelMask
 
const bool useExclusiveMode
 
Array< double > rates
 
HANDLE clientEvent
 
BigInteger channels
 
Array< int > channelMaps
 
UINT32 actualBufferSize
 
int bytesPerSample
 
int bytesPerFrame
 
bool sampleRateHasChanged
 

Constructor & Destructor Documentation

◆ WASAPIDeviceBase()

WasapiClasses::WASAPIDeviceBase::WASAPIDeviceBase ( const ComSmartPtr< IMMDevice > &  d,
const bool  exclusiveMode 
)
inline

◆ ~WASAPIDeviceBase()

virtual WasapiClasses::WASAPIDeviceBase::~WASAPIDeviceBase ( )
inlinevirtual

Member Function Documentation

◆ closeClient()

void WasapiClasses::WASAPIDeviceBase::closeClient ( )
inline

◆ deviceSampleRateChanged()

void WasapiClasses::WASAPIDeviceBase::deviceSampleRateChanged ( )
inline

◆ isOk()

bool WasapiClasses::WASAPIDeviceBase::isOk ( ) const
inlinenoexcept

◆ openClient()

bool WasapiClasses::WASAPIDeviceBase::openClient ( const double  newSampleRate,
const BigInteger newChannels,
const int  bufferSizeSamples 
)
inline

◆ updateFormat()

virtual void WasapiClasses::WASAPIDeviceBase::updateFormat ( bool  isFloat)
pure virtual

Member Data Documentation

◆ actualBufferSize

UINT32 WasapiClasses::WASAPIDeviceBase::actualBufferSize

◆ actualNumChannels

int WasapiClasses::WASAPIDeviceBase::actualNumChannels

◆ bytesPerFrame

int WasapiClasses::WASAPIDeviceBase::bytesPerFrame

◆ bytesPerSample

int WasapiClasses::WASAPIDeviceBase::bytesPerSample

◆ channelMaps

Array<int> WasapiClasses::WASAPIDeviceBase::channelMaps

◆ channels

BigInteger WasapiClasses::WASAPIDeviceBase::channels

◆ client

ComSmartPtr<IAudioClient> WasapiClasses::WASAPIDeviceBase::client

◆ clientEvent

HANDLE WasapiClasses::WASAPIDeviceBase::clientEvent

◆ defaultBufferSize

int WasapiClasses::WASAPIDeviceBase::defaultBufferSize

◆ defaultSampleRate

double WasapiClasses::WASAPIDeviceBase::defaultSampleRate

◆ device

ComSmartPtr<IMMDevice> WasapiClasses::WASAPIDeviceBase::device

◆ latencySamples

int WasapiClasses::WASAPIDeviceBase::latencySamples

◆ minBufferSize

int WasapiClasses::WASAPIDeviceBase::minBufferSize

◆ mixFormatChannelMask

DWORD WasapiClasses::WASAPIDeviceBase::mixFormatChannelMask

◆ numChannels

int WasapiClasses::WASAPIDeviceBase::numChannels

◆ rates

Array<double> WasapiClasses::WASAPIDeviceBase::rates

◆ sampleRate

double WasapiClasses::WASAPIDeviceBase::sampleRate

◆ sampleRateHasChanged

bool WasapiClasses::WASAPIDeviceBase::sampleRateHasChanged

◆ useExclusiveMode

const bool WasapiClasses::WASAPIDeviceBase::useExclusiveMode

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