Author Topic: linux sound - SDL and ALSA buggy, OSS is legacy, any chance of improving it?  (Read 2531 times)

yossarianuk

  • VM-68
  • Posts: 127
Hi.

The only way I can play dp2 'properly' in Linux is to use the OSS sound module, the other 2 have issues (see below)

This is an issue as Ubuntu (the most popular distro) has removed the oss modules from the kernel meaning that if I want to run dp2 in Ubuntu and have a bug free time I have to compile my own kernel (not a great solution) - other distros i.e Fedora, OpenSUSE are fine as they keep the oss snd modules in the kernel - however one issue is that soon the legacy oss modules are going to be completely dropped.

Here are the issues with the other modules

Alsa :

- Speed is fine
- Doesn't crash
- Sound doesn't work (cuts out constantly, mix ahead settings do not help...)...

SDL :

- randomly crashes on startup (only with SDL module)
- on some systems its far slower
- creates a speed fluctuation in the game (sound and fps slow and speed up)

Until now I have held off moving my main system to Kubuntu due to these issues (dp2 means that much to me....)

Is there likely to be an improvement to the sound modules? If alsa didn't cut out the sound that would be best (as everyone has alsa pretty much)

jitspoe

  • Administrator
  • Autococker
  • Posts: 18801
Hm... not sure... I've always had issues with with the non-OSS libraries, which is why I've got OSS set as the default.  Linux is such a nightmare to develop for.  They're constantly changing libraries and standards with no backward compatibility.  I try to keep my development time on it to a minimum since it makes me want to throw my computer out of a window in frustration.  It would be nice if a linux dev that really knew that stuff could help out.

yossarianuk

  • VM-68
  • Posts: 127
Well its not the end of the world.

And actually if I reduce mixahead to 0.0 with SDL the sound / speed issue actually seems o.k
- its just the random segfault at the startup of the game - its completely random - but the important thing is once the you in the game it doesn't crash. (this is only with SDL) and when it segfaults its right away so you can easily and quickly restart...

oss will still be around for some time yet (centos 6 is supported until 2020...) , even if not officially supported (not that anything is really official in the Linux word..) oss will stlll be available.

To be honest SDL is a good choice, you know that is going to be around for a while , I believe Valve are using SDL (openal also) for sound in their Linux ports.

jitspoe

  • Administrator
  • Autococker
  • Posts: 18801
OpenAL would probably be the best solution.  I want to polish that up for the Windows version, and being able to use the same library for both operating systems would make it much easier to develop.

http://dplogin.com/dplogin/featurevote/feature.php?id=10170

yossarianuk

  • VM-68
  • Posts: 127
+ 1 for openAL support

(I have voted...)