spice2x / spice2x.github.io

🌶️ spice2x is a spicier fork of SpiceTools with hundreds of bug fixes and new features 🌶️
https://spice2x.github.io/
GNU General Public License v3.0
87 stars 2 forks source link

Low Latency audio not working in DDR #124

Closed sp2xdev closed 4 months ago

sp2xdev commented 4 months ago

Game and version

DDR, and potentially other games

Version of spice2x

all versions that support low latency audio setting

Laptop

n/a

Attached log.txt file, if available

n/a

Describe the issue

Low latency audio code hooks using IMMDeviceEnumerator::GetDefaultAudioEndpoint. For DSound games (like popn), this is usually called by the following stack:

DSOUND!CLeapSystem::ForEachRenderer+0xc9
DSOUND!CLeapRenderDevice::EnumDrivers+0x93
DSOUND!CVirtualAudioDeviceManager::InitStaticDriverList+0xff
DSOUND!CVirtualAudioDeviceManager::EnumDrivers+0x24
DSOUND!CVirtualAudioDeviceManager::OpenDevice+0xda
DSOUND!CDirectSound::Initialize+0x166
DSOUND!DirectSoundCreate8+0x101

but for whatever reason, Dsound doesn't call GetDefaultAudioEndpoint for DDR.

sp2xdev commented 4 months ago

Fixed in 24-01-20