36 SND_ERR(
L"Unable to get sound device path");
56 SND_TRACE(
L"Opening NT4 style sound device\n");
69 SND_TRACE(
L"Closing NT4 style sound device\n");
95 SND_TRACE(
L"NT4 get-capabilities routine called\n");
141 SND_ERR(
L"Retrieval of capabilities information failed\n");
162 SND_TRACE(
L"NT4 wave format support querying routine called\n");
175 SND_ERR(
L"Unable to open kernel sound device\n");
189 SND_ERR(
L"Sync overlapped I/O failed - MMSYS_ERROR %d\n",
Result);
242 SND_TRACE(
L"Submitting wave header %p (in sound thread)\n", WaveHeader);
_Inout_ PUSB_DEVICE_HANDLE DeviceHandle
MMRESULT GetSoundDeviceIdentifier(IN PSOUND_DEVICE SoundDevice, OUT PVOID *Identifier)
#define MMSUCCESS(result)
MMRESULT TranslateInternalMmResult(IN MMRESULT Result)
#define IS_MIDI_DEVICE_TYPE(x)
#define VALIDATE_MMSYS_PARAMETER(parameter_condition)
MMRESULT OpenNt4KernelSoundDevice(IN PSOUND_DEVICE SoundDevice, IN BOOLEAN ReadOnly, OUT PHANDLE Handle)
MMRESULT QueryNt4WaveDeviceFormatSupport(IN PSOUND_DEVICE SoundDevice, IN LPWAVEFORMATEX Format, IN DWORD FormatSize)
MMRESULT OpenKernelSoundDeviceByName(IN PWSTR DevicePath, IN BOOLEAN ReadOnly, OUT PHANDLE Handle)
#define IOCTL_MIDI_GET_CAPABILITIES
_Must_inspect_result_ typedef _Out_ PHIDP_CAPS Capabilities
MMRESULT CloseNt4SoundDevice(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance, IN PVOID Handle)
#define SND_ASSERT(condition)
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
#define IS_WAVE_DEVICE_TYPE(x)
BOOLEAN IsValidSoundDeviceInstance(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance)
#define IOCTL_WAVE_QUERY_FORMAT
#define IOCTL_WAVE_SET_FORMAT
MMRESULT GetNt4SoundDeviceCapabilities(IN PSOUND_DEVICE SoundDevice, OUT PVOID Capabilities, IN DWORD CapabilitiesSize)
DWORD SyncOverlappedDeviceIoControl(IN HANDLE Handle, IN DWORD IoControlCode, IN LPVOID InBuffer, IN DWORD InBufferSize, OUT LPVOID OutBuffer, IN DWORD OutBufferSize, OUT LPDWORD BytesTransferred OPTIONAL)
PRTL_UNICODE_STRING_BUFFER Path
BOOLEAN IsValidSoundDevice(IN PSOUND_DEVICE SoundDevice)
MMRESULT GetSoundDeviceType(IN PSOUND_DEVICE SoundDevice, OUT PMMDEVICE_TYPE DeviceType)
MMRESULT CloseKernelSoundDevice(IN HANDLE Handle)
#define IOCTL_WAVE_GET_CAPABILITIES
MMRESULT OpenNt4SoundDevice(IN PSOUND_DEVICE SoundDevice, OUT PVOID *Handle)
MMRESULT GetSoundDeviceInstanceHandle(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance, OUT PVOID *Handle)
MMRESULT SetNt4WaveDeviceFormat(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance, IN DWORD DeviceId, IN LPWAVEFORMATEX Format, IN DWORD FormatSize)