openshot-audio  0.1.6
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions
juce_win32_WASAPI.cpp File Reference

Classes

struct  IMMDeviceCollection
 
class  WasapiClasses::WASAPIDeviceBase
 
class  WasapiClasses::WASAPIInputDevice
 
class  WasapiClasses::WASAPIOutputDevice
 
class  WasapiClasses::WASAPIAudioIODevice
 
class  WasapiClasses::WASAPIAudioIODeviceType
 
struct  WasapiClasses::MMDeviceMasterVolume
 

Namespaces

 WasapiClasses
 

Macros

#define JUCE_WASAPI_LOGGING   0
 
#define JUCE_COMCLASS(name, guid)   struct __declspec (uuid (guid)) name
 
#define KSDATAFORMAT_SUBTYPE_PCM   uuidFromString ("00000001-0000-0010-8000-00aa00389b71")
 
#define KSDATAFORMAT_SUBTYPE_IEEE_FLOAT   uuidFromString ("00000003-0000-0010-8000-00aa00389b71")
 
#define JUCE_IUNKNOWNCLASS(name, guid)   JUCE_COMCLASS(name, guid) : public IUnknown
 
#define JUCE_COMCALL   virtual HRESULT STDMETHODCALLTYPE
 
#define JUCE_SYSTEMAUDIOVOL_IMPLEMENTED   1
 

Typedefs

typedef LONGLONG REFERENCE_TIME
 

Enumerations

enum  EDataFlow { eRender = 0, eCapture = (eRender + 1), eAll = (eCapture + 1) }
 
enum  { DEVICE_STATE_ACTIVE = 1, AUDCLNT_BUFFERFLAGS_SILENT = 2 }
 
enum  ERole { eConsole = 0, eMultimedia = (eConsole + 1), eCommunications = (eMultimedia + 1) }
 
enum  AVRT_PRIORITY { AVRT_PRIORITY_LOW = -1, AVRT_PRIORITY_NORMAL, AVRT_PRIORITY_HIGH, AVRT_PRIORITY_CRITICAL }
 
enum  AUDCLNT_SHAREMODE { AUDCLNT_SHAREMODE_SHARED, AUDCLNT_SHAREMODE_EXCLUSIVE }
 
enum  AudioSessionDisconnectReason {
  DisconnectReasonDeviceRemoval = 0, DisconnectReasonServerShutdown = 1, DisconnectReasonFormatChanged = 2, DisconnectReasonSessionLogoff = 3,
  DisconnectReasonSessionDisconnected = 4, DisconnectReasonExclusiveModeOverride = 5
}
 
enum  AudioSessionState { AudioSessionStateInactive = 0, AudioSessionStateActive = 1, AudioSessionStateExpired = 2 }
 

Functions

void WasapiClasses::logFailure (HRESULT hr)
 
bool WasapiClasses::check (HRESULT hr)
 
 JUCE_IUNKNOWNCLASS (IPropertyStore,"886d8eeb-8cf2-4446-8d02-cdba1dbdcf99")
 
 JUCE_IUNKNOWNCLASS (IMMDevice,"D666063F-1587-4E43-81F1-B948E807363F")
 
 JUCE_IUNKNOWNCLASS (IMMEndpoint,"1BE09788-6894-4089-8586-9A2A6C265AC5")
 
 JUCE_IUNKNOWNCLASS (IMMNotificationClient,"7991EEC9-7E89-4D85-8390-6C703CEC60C0")
 
 JUCE_IUNKNOWNCLASS (IMMDeviceEnumerator,"A95664D2-9614-4F35-A746-DE8DB63617E6")
 
 JUCE_COMCLASS (MMDeviceEnumerator,"BCDE0395-E52F-467C-8E3D-C4579291692E")
 
 JUCE_IUNKNOWNCLASS (IAudioClient,"1CB9AD4C-DBFA-4c32-B178-C2F568A703B2")
 
 JUCE_IUNKNOWNCLASS (IAudioCaptureClient,"C8ADBD64-E71E-48a0-A4DE-185C395CD317")
 
 JUCE_IUNKNOWNCLASS (IAudioRenderClient,"F294ACFC-3146-4483-A7BF-ADDCA7C260E2")
 
 JUCE_IUNKNOWNCLASS (IAudioEndpointVolume,"5CDF2C82-841E-4546-9722-0CF74078229A")
 
 JUCE_IUNKNOWNCLASS (IAudioSessionEvents,"24918ACC-64B3-37C1-8CA9-74A66E9957A8")
 
 JUCE_IUNKNOWNCLASS (IAudioSessionControl,"F4B1A599-7266-4319-A8CA-E70ACB11E8CD")
 
String WasapiClasses::getDeviceID (IMMDevice *const device)
 
EDataFlow WasapiClasses::getDataFlow (const ComSmartPtr< IMMDevice > &device)
 
int WasapiClasses::refTimeToSamples (const REFERENCE_TIME &t, const double sampleRate) noexcept
 
REFERENCE_TIME WasapiClasses::samplesToRefTime (const int numSamples, const double sampleRate) noexcept
 
void WasapiClasses::copyWavFormat (WAVEFORMATEXTENSIBLE &dest, const WAVEFORMATEX *const src) noexcept
 

Macro Definition Documentation

#define JUCE_COMCALL   virtual HRESULT STDMETHODCALLTYPE
#define JUCE_COMCLASS (   name,
  guid 
)    struct __declspec (uuid (guid)) name
#define JUCE_IUNKNOWNCLASS (   name,
  guid 
)    JUCE_COMCLASS(name, guid) : public IUnknown
#define JUCE_SYSTEMAUDIOVOL_IMPLEMENTED   1
#define JUCE_WASAPI_LOGGING   0
#define KSDATAFORMAT_SUBTYPE_IEEE_FLOAT   uuidFromString ("00000003-0000-0010-8000-00aa00389b71")
#define KSDATAFORMAT_SUBTYPE_PCM   uuidFromString ("00000001-0000-0010-8000-00aa00389b71")

Typedef Documentation

typedef LONGLONG REFERENCE_TIME

Enumeration Type Documentation

anonymous enum
Enumerator
DEVICE_STATE_ACTIVE 
AUDCLNT_BUFFERFLAGS_SILENT 
Enumerator
AUDCLNT_SHAREMODE_SHARED 
AUDCLNT_SHAREMODE_EXCLUSIVE 
Enumerator
DisconnectReasonDeviceRemoval 
DisconnectReasonServerShutdown 
DisconnectReasonFormatChanged 
DisconnectReasonSessionLogoff 
DisconnectReasonSessionDisconnected 
DisconnectReasonExclusiveModeOverride 
Enumerator
AudioSessionStateInactive 
AudioSessionStateActive 
AudioSessionStateExpired 
Enumerator
AVRT_PRIORITY_LOW 
AVRT_PRIORITY_NORMAL 
AVRT_PRIORITY_HIGH 
AVRT_PRIORITY_CRITICAL 
enum EDataFlow
Enumerator
eRender 
eCapture 
eAll 
enum ERole
Enumerator
eConsole 
eMultimedia 
eCommunications 

Function Documentation

JUCE_COMCLASS ( MMDeviceEnumerator  ,
"BCDE0395-E52F-467C-8E3D-C4579291692E"   
)
JUCE_IUNKNOWNCLASS ( IPropertyStore  ,
"886d8eeb-8cf2-4446-8d02-cdba1dbdcf99"   
)
JUCE_IUNKNOWNCLASS ( IMMDevice  ,
"D666063F-1587-4E43-81F1-B948E807363F"   
)
JUCE_IUNKNOWNCLASS ( IMMEndpoint  ,
"1BE09788-6894-4089-8586-9A2A6C265AC5"   
)
JUCE_IUNKNOWNCLASS ( IMMNotificationClient  ,
"7991EEC9-7E89-4D85-8390-6C703CEC60C0"   
)
JUCE_IUNKNOWNCLASS ( IMMDeviceEnumerator  ,
"A95664D2-9614-4F35-A746-DE8DB63617E6"   
)
JUCE_IUNKNOWNCLASS ( IAudioClient  ,
"1CB9AD4C-DBFA-4c32-B178-C2F568A703B2"   
)
JUCE_IUNKNOWNCLASS ( IAudioCaptureClient  ,
"C8ADBD64-E71E-48a0-A4DE-185C395CD317"   
)
JUCE_IUNKNOWNCLASS ( IAudioRenderClient  ,
"F294ACFC-3146-4483-A7BF-ADDCA7C260E2"   
)
JUCE_IUNKNOWNCLASS ( IAudioEndpointVolume  ,
"5CDF2C82-841E-4546-9722-0CF74078229A"   
)
JUCE_IUNKNOWNCLASS ( IAudioSessionEvents  ,
"24918ACC-64B3-37C1-8CA9-74A66E9957A8"   
)
JUCE_IUNKNOWNCLASS ( IAudioSessionControl  ,
"F4B1A599-7266-4319-A8CA-E70ACB11E8CD"   
)