Re: Replacing esd with gstreamer
- From: Andy Wingo <wingo pobox com>
- To: gnome-multimedia gnome org
- Subject: Re: Replacing esd with gstreamer
- Date: Wed, 29 Mar 2006 11:46:35 +0200
Hi,
On Sun, 2006-03-26 at 20:57 -0800, Ian Burrell wrote:
> There are a few places in gnome CVS which are using esound interface
> directly.
Nice list.
> nautilus contains an audio preview player which uses esd and audiofile
> directly. It does rate conversion and other complicated stuff. I
> suspect porting it to gstreamer would make it simpler.
True.
> The other places which used esound library directly were calling
> esd_sample_free, esd_sample_getid, and esd_sample_play. Basically,
> the gnome_sound interface is not complete enough to work with samples.
> I think these uses can be removed by extending the gnome_sound API to
> include gnome_sound_sample_free, gnome_sound_sample_getid, and
> gnome_sound_sample_play functions.
>
> The samples are stored in the esd server itself. My feeling is that
> it would be acceptable to load the samples in the application and not
> share them. It might make sense to have an interface in gstreamer to
> load samples into different sound servers and play them but I don't
> think that is required for the migration.
This probably will not work. Think every application on the desktop
linking to gstreamer and initializing it every time they start up, think
the sounds when you roll a mouse over a menu being stored (and possible
cached) in every process... Good intentions but I don't think this is a
good idea.
I could be wrong, but I don't think ESD can be replaced without writing
a daemon. I think you could probably get away with requiring
multiple-open on the hardware to start up the daemon, so that you
wouldn't need to write a sound server -- apps would just write to the
sound card, using the normal API, relying on the system to mix them --
but a daemon it should be.
Regarding accessibility, the events that would cause sound to be emitted
should send off the proper accessibility notifications from the side of
the application. That's the only way to serialize them properly. I
assume there is no global accessibility arbitration daemon running --
pretty ignorant about all this, I am.
Just my two cents,
--
Andy Wingo
http://wingolog.org/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]