Disclaimer: I'm kind of out of the loop these days, only doing some
minor audio and music for my own games, using a custom engine.
(http://audiality.org - formerly known as ChipSound) I still work
primarily on Linux, and I use/support JACK, even in the games
themselves. Also, I'm on Gentoo (a rebuilt ex-Sabayon system), so not
using a dedicated audio distro.
Not particularly concerned with plugin APIs either at this point. A2
has its own unit API for the modular voices, but I'd consider that
internal, since this all runs "live" inside the games (can't use GPLed
plugins!), it's tightly integrated with the engine for performance
reasons - and it's all integer/fixed point. (I already had most of
that integer DSP code, and there are still potential target platforms
with crappy on nonexistent FP support...)
Either way, I have two main issues at this point:
1) Horrible latency with other APIs when using JACK.
I'm running a stack of ALSA emulation - PulseAudio - JACK - ALSA. It
"works," but I get ridiculous latencies (a second or more) with
applications using ALSA, and some applications just crash.
Unfortunately, SDL doesn't support PA nor JACK natively - so, I gave
up on that and just added a JACK driver to my sound engine instead.
(Yep, the next release of Kobo II will support JACK where available.)
I suspect it might be possible to improve the latency with the ALSA
emu/PA setup, but I haven't messed with it further. It was quite
enough of a PITA to get it to work at all...
2) Still haven't found a basic, solid MIDI sequencer.
I'll have another go at it one of these days, but my experiences so
far: countless dependencies on cutting edge libraries, crashes, lots
and lots of features I don't need, and missing features that I
absolutely do need.
I'm tempted to just go back to running some old Cakewalk version on a
Windoze box again... All I really need is a plain, not overly
cumbersome MIDI sequencer with piano roll, event list and a few basic
edit operations like cut/paste, quantize, velocity scale, transpose
etc. No audio, no plugins, no session management, no nothing! Oh,
except for that sustain pedal CC - I'm actually using that sometimes!
//David Olofson - Consultant, Developer, Artist, Open Source Advocate
.--- Games, examples, libraries, scripting, sound, music, graphics ---.
| http://consulting.olofson.net http://olofsonarcade.com |
Linux-audio-user mailing list