Re: libcanberra as an external dependency

Lennart Poettering wrote:
On Thu, 07.08.08 11:59, Joe Marcus Clarke (marcus freebsd org) wrote:

It seems to me there is a fundamental problem with adding libcanberra as an external dependency. It currently only supports ALSA and pulseaudio audio output. However, the default sounds daemon for GNOME is still esound. The BSDs and Solaris do not support ALSA, so this leaves them a tough choice for sound events. Pulseaudio replaces esd, but it is not a blessed GNOME dependency.

Neither is ALSA, OSS or any other audio API.

No, but they work WITH esd.

I think libcanberra must have an esd output plug-in at the very least (i.e. if not also OSS and Sun Audio) in order to be a viable external dependency. This would go a long way to helping non-Linux platforms achieve working sound theme support using all blessed GNOME dependencies.

It is relatively easy to write a backend for libcanberra for
supporting other sound systems: just take the ALSA driver and replace
the ALSA calls by the ones that are appropriate for your operating
Then, the people from Nokia have prepared a gst backend for
libcanberra. You might be able to use that to interface with legacy
audio systems like OSS. (though the primary reason for the gst backend
is mostly Nokia's love for MP3, not portability) This backend has not
been merged yet though. But I am sure you can convince Marc-Andre to
prepare it for inclusion.

Also, I remember that the alsa libraries support OSS as a
backend. Maybe you can use that on BSD systems?

Don't forget that PulseAudio has been ported to BSD in the past. With
some love you should be able to get 0.9.11 to work on BSD too.

I did the port of pulse to FreeBSD, and we currently have 0.9.11 in our tree. Our port of libcanberra can make use of this, but that's not my point. My point was anything that GNOME requires for audio should support GNOME's blessed sound server dependency.


Joe Marcus Clarke
FreeBSD GNOME Team	::	gnome FreeBSD org
FreeNode / #freebsd-gnome

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]