openshot-audio  0.1.6
Public Member Functions | Public Attributes | List of all members
WasapiClasses::WASAPIOutputDevice Class Reference
Inheritance diagram for WasapiClasses::WASAPIOutputDevice:
WasapiClasses::WASAPIDeviceBase

Public Member Functions

 WASAPIOutputDevice (const ComSmartPtr< IMMDevice > &d, const bool exclusiveMode)
 
 ~WASAPIOutputDevice ()
 
bool open (const double newSampleRate, const BigInteger &newChannels, int bufferSizeSamples)
 
void close ()
 
template<class DestType >
void updateFormatWithType (DestType *)
 
void updateFormat (bool isFloat) override
 
bool start ()
 
int getNumSamplesAvailableToCopy () const
 
void copyBuffers (const float **const srcBuffers, const int numSrcBuffers, int bufferSize, WASAPIInputDevice *inputDevice, Thread &thread)
 
- Public Member Functions inherited from WasapiClasses::WASAPIDeviceBase
 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 ()
 

Public Attributes

ComSmartPtr< IAudioRenderClient > renderClient
 
ScopedPointer< AudioData::Converterconverter
 
- Public Attributes inherited from WasapiClasses::WASAPIDeviceBase
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

◆ WASAPIOutputDevice()

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

◆ ~WASAPIOutputDevice()

WasapiClasses::WASAPIOutputDevice::~WASAPIOutputDevice ( )
inline

Member Function Documentation

◆ close()

void WasapiClasses::WASAPIOutputDevice::close ( )
inline

◆ copyBuffers()

void WasapiClasses::WASAPIOutputDevice::copyBuffers ( const float **const  srcBuffers,
const int  numSrcBuffers,
int  bufferSize,
WASAPIInputDevice inputDevice,
Thread thread 
)
inline

◆ getNumSamplesAvailableToCopy()

int WasapiClasses::WASAPIOutputDevice::getNumSamplesAvailableToCopy ( ) const
inline

◆ open()

bool WasapiClasses::WASAPIOutputDevice::open ( const double  newSampleRate,
const BigInteger newChannels,
int  bufferSizeSamples 
)
inline

◆ start()

bool WasapiClasses::WASAPIOutputDevice::start ( )
inline

◆ updateFormat()

void WasapiClasses::WASAPIOutputDevice::updateFormat ( bool  isFloat)
inlineoverridevirtual

◆ updateFormatWithType()

template<class DestType >
void WasapiClasses::WASAPIOutputDevice::updateFormatWithType ( DestType *  )
inline

Member Data Documentation

◆ converter

ScopedPointer<AudioData::Converter> WasapiClasses::WASAPIOutputDevice::converter

◆ renderClient

ComSmartPtr<IAudioRenderClient> WasapiClasses::WASAPIOutputDevice::renderClient

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