ArcEm-emu / ArcEm

Archimedes emulator
11 stars 3 forks source link

Initial SDL audio implementation #12

Open ccawley2011 opened 4 months ago

ccawley2011 commented 4 months ago

This is based on the threaded OSS implementation, and it does work, however the audio breaks up frequently and I don't fully understand how the sound system in ArcEm works, so I'd appreciate any advice on how to improve things.

Phlamethrower commented 3 months ago

Sorry for taking a while to take a look at this.

I've been having a look at it over the past few days. I've found a couple of bugs in the main sound code which are stopping things from working properly, but really the main issue is that the threaded version of the OSS Sound_HostBuffered wasn't very good to begin with. It was detecting false underflow & overflow conditions, and was constantly oscillating between high & low buffer utilisation instead of settling at the desired place. So I've been working on a new version of the SDL code that should behave better (and should hopefully be a better base for other ports to use), but it's taking a while to get it to a state where it should work properly in most/all situations.