[Kde-games-devel] Unavailable, Tagaro progress, sound APIs (again)

Parker Coates parker.coates at kdemail.net
Thu Sep 9 23:34:16 CEST 2010


On Thu, Sep 9, 2010 at 16:17, Stefan Majewsky wrote:
> Thirdly, I have been evaluating possible APIs for sound output:
>
> 1. Phonon has per-application-type sound routing rules and a Qt-style API.
> With Phonon, there are basically two approaches:
>
> 1a. use Phonon without any further library abstraction, and suffer from
> missing mixing support
>
> 1b. implement an own mixing component as a Phonon::MediaNode (this has been
> mentioned on this list in Sep 2008, but I am not into audio development and
> cannot comment on the feasibility of this solution, or on possible
> implementations)
>
> In both cases, we suffer from the high latency that Phonon seems to have.
> (Please correct me if my criticism of Phonon's high latency and missing mixing
> support is outdated.)
>
> 2. So if it was not Phonon, it must be some other platform-independent API.
> Out of the various platform-independent APIs, OpenAL seems to be the most
> viable solution, because it's already available everywhere (just like OpenGL).
> This brings me to the wide range of OpenAL-based solutions:
>
> 2a. There is GluonAudio which provides a Qt-style API on top of OpenAL, but my
> usual criticism on Gluon APIs applies. (See "My review of Gluon" which I sent
> to this list on 22 Aug 2010.)
>
> 2b. Because all other C++ wrappers are either unmaintained or not Qt-style,
> the most feasible solution therefore seems to be to roll an own OpenAL-based
> API in TagaroAudio. OpenAL itself supports only a small set of WAV formats, so
> it would have to be coupled with a decoding implementation. Rumors are that
> Phonon can decode into a byte-stream which can be passed on to OpenAL.
>
> Because of the discussed problems with Phonon latency etc., I will for now go
> for option 2b., and try to implement OpenAL-powered sound playback, paired
> with Phonon for decoding the sound files.

I think a simple, Qt-style OpenAL library is probably the thing we
need most technology-wise in KDEGames right now. While most of the
goals of Tagaro seem to improve on solutions we already have, I think
the lack of a good sound system is a major hole in our current
offerings. Phonon abilities and suitability for game programming seem
to vary considerable depending on the Phonon dev one is talking to and
the backend being used. (I'm not really criticising Phonon here. For
one, I'm not really qualified to criticise it. For two, it seems to
meet the needs of a great many KDE apps, just not our games.)

So I guess that's just a long way of saying I strongly support this
initiative, even if I'm not sure if I'll be able to contribute much to
its development.

Have you actually done an in depth review of GluonAudio? Is it really
so bad that starting from scratch is preferable to a fork?

Parker


More information about the kde-games-devel mailing list