oakmound / oak

A pure Go game engine
Apache License 2.0
1.55k stars 83 forks source link

Investigate using pulse cgo-less linux audio over alsa #131

Closed 200sc closed 2 years ago

200sc commented 4 years ago

Looking into #97 and #98, while I believe we can get into a functioning state with alsa, there's a few open problems, namely:

  1. How do we detect the user's preferred audio output device? Eventually the output device should also be -selectable-, which is a huge (necessary) addition.
  2. Our alsa library sometimes fails to properly open or close cards / devices, potentially freezing the program depending on how the audio was played. I can't get a consistent repro case.

I'd like to investigate switching to github.com/jfreymuth/pulse as a cgo-less linux audio underlying library (beneath klangsynthese).