reactos/drivers
Oleg Dubinskiy d1b8feb690
[AUDIO] Implement retreiving audio playback position (#6817)
Implement GetWavePosition API for both Legacy and MMixer modes.
[WDMAUD.DRV]
- Fix wrong I/O control code passed to DeviceIoControl for Legacy mode. Use IOCTL_GETPOS instead of IOCTL_OPEN_WDMAUD, to use the correct routine.
- Implement WdmAudGetWavePosition for MMixer mode, as it was completely unimplemented there. Call an appropiate MMixer routine and return back resulting wave position.
[WDMAUD]
- Implement WdmAudGetPostion routine, which is used by Legacy mode, and call the same MMixer routine from it too.
- Handle it in IOCTL_GETPOS I/O control request of dispatch routine.
[MMIXER]
- Implement MMixerGetWavePosition internal routine, which is called by both Legacy and MMixer modes, and does the actual work of retrieving playback position.
- Call an apporpriate KSPROPERTY_AUDIO_POSITION property from it, and return in the output resulting KSAUDIO_POSITION.PlayOffset member, which contains the current playback position offset, to be returned to the caller.
This fixes a failure retreiving the current audio playback position snd subsequent playing the audio data by several 3rd-party applications which are using this API (for example, some Gecko based browsers by @roytam1: Basilisk (Serpent) 52.9.0 IA-32 build, NewMoon 28.10.7 IA-32 build and KMeleon 76.5.3 Goanna engine).
CORE-19542
2024-05-06 20:07:47 +02:00
..
base [BOOTVID] Don't NTAPI non-exported functions; remove useless @implemented (#6650) 2024-03-23 15:16:00 +01:00
battery [BATTC] Make input buffer on IOCTL_BATTERY_QUERY_TAG optional 2024-02-01 10:08:51 +01:00
bluetooth [REACTOS] Silence warnings in 3r-party code 2021-07-23 22:03:48 +02:00
bus [ACPI] Fix object evaluation (#6302) 2024-04-01 18:21:35 +02:00
crypto
filesystems [UDFS] Remove packing around include of ntifs.h 2024-04-10 21:46:34 +02:00
filters [FLTMGR] CreateClientPort(): Fix ObInsertObject() error handling 2021-12-28 02:27:50 +03:00
hid [ACLEDIT][MSIMG32][HIDCLASS] Fix DLL-main function argument type in spec file. 2022-10-06 16:16:40 +02:00
input [INPORT] Fix swapped buttons for the inport bus mouse 2023-08-05 16:40:07 +03:00
ksfilter [AUDIO] Implement support for WAVE_FORMAT_EXTENSIBLE audio format (#6686) 2024-04-11 11:59:14 +02:00
multimedia [BDASUP][KMIXER][MMIXER][STREAM] Replace meaningless YDEBUG (#5818) 2023-10-31 12:04:24 +00:00
network [DC21X4] Recognize all ports emulated by VPC 2007 (#6501) 2024-02-16 16:56:07 +01:00
parallel [DRIVERS] Use IoForwardIrpSynchronously in drivers 2022-01-05 02:17:56 +03:00
processor [DRIVERS][INF] Update Romanian (ro-RO) translation (#6088) 2023-12-09 20:19:54 +01:00
sac [SACDRV] Add 2 OBJ_KERNEL_HANDLE 2022-05-08 19:42:49 +02:00
serial [DRIVERS] Add some missing OBJ_KERNEL_HANDLE (#4493) 2022-05-07 22:12:19 +03:00
setup [BLUE] Optimize ScrIoControl for speed (#5185) 2023-03-28 08:12:38 +09:00
storage [DRIVERS][INF] Update Romanian (ro-RO) translation (#6088) 2023-12-09 20:19:54 +01:00
usb [USBOHCI] Fix broken indentation 2024-03-23 23:08:01 +01:00
wdm [AUDIO] Implement retreiving audio playback position (#6817) 2024-05-06 20:07:47 +02:00
wmi [FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
CMakeLists.txt