mirror of
https://github.com/reactos/reactos.git
synced 2024-12-27 09:34:43 +00:00
d1b8feb690
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 |
||
---|---|---|
.. | ||
3rdparty | ||
apisets | ||
atl | ||
cicero | ||
cmlib | ||
comsupp | ||
conutils | ||
cportlib | ||
cpprt | ||
crt | ||
cryptlib | ||
debugsup | ||
delayimp | ||
dmilib | ||
dnslib | ||
drivers | ||
dxguid | ||
epsapi | ||
evtlib | ||
fast486 | ||
fslib | ||
gcc_ssp | ||
inflib | ||
ioevent | ||
lsalib | ||
nt | ||
pathcch | ||
pseh | ||
rossym | ||
rossym_new | ||
rtl | ||
runtmchk | ||
scrnsave | ||
skiplist | ||
smlib | ||
strmiids | ||
tdilib | ||
tzlib | ||
udmihelp | ||
uuid | ||
wdmguid | ||
CMakeLists.txt |