21 using NativeAudio::InitializeRender;
22 using NativeAudio::InitializeCapture;
25 static constexpr uint32_t HDR_COUNT = 2;
30 WAVEHDR renderHdrs[HDR_COUNT];
31 WAVEHDR captureHdrs[HDR_COUNT];
52 bool EnumerateAudioDevices()
override;
54 static size_t CalculateBufferSize(uint32_t byteRate, uint32_t sampleRate);
55 static void CALLBACK RenderCallback(HWAVEOUT hwo, UINT uMsg, DWORD_PTR dwInstance, DWORD_PTR dwParam1, DWORD_PTR dwParam2);
56 static void CALLBACK CaptureCallback(HWAVEIN hwi, UINT uMsg, DWORD_PTR dwInstance, DWORD_PTR dwParam1, DWORD_PTR dwParam2);
57 static std::string GetErrorString(MMRESULT mmResult);
#define HEPH_API
Definition HephShared.h:132
base class for classes that interact with the Windows audio APIs.
Definition WinAudioBase.h:24
uses MMEAPI (waveIn and waveOut)
Definition WinAudioMME.h:19
void GetNativeParams(NativeAudioParams &nativeParams) const override
void InitializeCapture(AudioDevice *device, AudioFormatInfo format) override
double GetMasterVolume() const override
void InitializeRender(AudioDevice *device, AudioFormatInfo format)
void SetMasterVolume(double volume) override
void SetNativeParams(const NativeAudioParams &nativeParams) override
void StopCapturing() override
void StopRendering() override
stores information about an audio device.
Definition AudioDevice.h:76
base class for storing the native audio API specific parameters.
Definition NativeAudioParams.h:15