thanks for the info and the testing
updated the main post with the latest version.
improved sound output to avoid skipping.
I really hate bad sound so i have to fix that before continuing with anything else. sorry to take so long but I'm extra busy at work.
enjoy and feedback is welcome
The audio changes are really, really neat. While not perfect (I was using xaudio2 mostly, but dsound too, not sure if there's a worse backend for the new feature; it's just that xaudio2 has lowest latency audio for me. Honestly I don't even know if it works with xaudio2, dsound's timestretching is so much better.) it did make sound a lot better under slowdown. The not perfect mostly has to do with when framerate fluctuates by a lot. I know this may be a lot to ask, but I really hope to see a pull request for the audio changes, as I don't think there's any argument about time stretching being useful for master. I know code quality may be a concern, but a PR will get you more feedback on the implementation and hopefully allow more people to enjoy time stretching without the huge latency impact of OpenAL.
I sometimes get a squeek/screech at game startup, which is troubling and I've never seen before. xaudio2 doesn't seem to work at all/very well for time stretching. dsound still sounded fairly good at 25 fps in Metroid Prime, where as xaudio2 was very stop/go. Regardless, I find the performance very acceptable, and would say that this improves the user experience greatly in dsound.
Could you please put a time-stretch option so I can compare latency more easily? And maybe for people that prefer latency over time-stretch? I really do think this would help a lot of users, but some users may not want it for all games. This may be something for when it's PR ready or something, but, regardless, it's a good start and the best time stretching I've seen.
I tested in single core, and there was some stuttering still on really slower framerates on xaudio2. 25 fps in Metroid Prime (I was in single core, JITIL) and it was really noticeable. When it was up higher it was pretty difficult to tell it was time stretching honestly. It worked well. Xaudio2 was probably not time stretching at all and it was a placebo effect. Latency seems pretty par for the course for dsound for me; I'd really need to have xaudio2 working to get a good handle over how much latency is affected.
For Wind Waker, even though it's running full speed, it seems to be randomly speeding up and slowing down, and sometimes instruments get missed. May want to check zelda ucode stuff. Zelda ucode isn't particularly good to begin with, so it may not be your problem. Everything seems to have an echo to it, it's really distracting. Yeah, it's very, very annoying, the more I play it the more this game appears to be really bad with the time stretching currently. Other games seem to have this same problem, such as Mario Golf: Toadstool Tour.
Now onto some more graphical stuff. Mario Kart Wii has a TON of garbage around the edge of the screen in D3D9 Final, and the bloom is entirely broken and pixelated. Look at the desert tracks in particular.
NES games are now drawing more correctly; but I still don't see sprites or backgrounds. Sprites draw as horizontal lines, backgrounds don't draw at all. Oh well, it's really not worth a huge accuracy rewrite when regular Dolphin handles them fine, and performance shouldn't be too much of a concern on those games.
So yeah, I hope this is enough information. A lot of GC games seem to have a bad echo, others don't. Metroid Prime performs very, very well, where as Mario Golf and Wind Waker have this strange echo to the sounds which makes it annoying at full speed.
Wow, didn't expect sound stuff here
For those of us with shitty old PCs this could really be a blessing. I'll test it...
I don't like this new audio
There is too much echo and crackling sound.
In the previous version the sound works like a charm.
@mew: It's work in progress, mate
@Tino: Initial testing gives me the following results:
First of all, it seems to be doing what's supposed to be doing ^^ When playing below fullspeed, the sound doesn't get all garbled up which was really aweful before.
I don't get that noise when starting a game as JMC47 does, but maybe it's only in certain games... also, it doesn't seem to make a difference whether I'm using xaudio2 or dsound...
However, for now there's still a lot of glitches.
In SMG some sound effects don't come out right, also they are a bit delayed (or is that a wanted latency whatever that is needed for this sound system to work?), and they seem to have a (non-natural) reverb effect to them.
Also, even at fullspeed, the sound system seems to be doing stuff it's not supposed to; little sound glitches and stuff, as if it was trying to do what it should only be doing when the game goes below fullspeed... if you understand what I mean ^^
@Stripthesoul: Try other games; it seems certain games have this total reverb that sucks, while other games work as he probably intended. Those games sound really good even under slowdown. The games that don't work though are awful.
Thanks for the feedback, can you please make a list of the games with problems so i can try to debug them
and i forget to say, you should test openal to now should be as good as dsound
. and i will love feedback on dpl2 on xaudio and openal
Echo problems: The Legend of Zelda: The Wind Waker, Mario Golf: Toadstool Tour, probably others.
xaudio2 seems to lack the time stretching, or am I wrong?