-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi all,
With the recent release of PulseAudio 0.9.7, and discussions surrounding audio in GNOME, I thought I'd try and see if I could get some movement in the system event sounds area as well. The event sounds in GNOME, that have been in the gnome-audio package for ages now, are simply awesome. During my first days exploring Linux, I always had them enabled. As Linux became more and more my primary desktop environment, the clicking, crackling, latency and locking problems that ESounD produced led me to disable them for a long time. But now we have PulseAudio! Hooray! :D And things are good... well, a lot better... but: 1) Only libgnome-based applications seem to work? Besides non-GTK+ applications, another example close to GNOME is gcalctool. Libgnome also seems to be on the fast track towards deprecation. (?) 2) The number of configurable events is very limited. What about opening a folder, closing a window, switching tabs, browsing to a page, libnotify notifications, ...? 3) The event sounds are not bulk configurable, like a GTK+ theme for example. 4) I cannot control the volume of system events. *) (Anything else?) So instead of just wanting to come of as a ranting user here, I started looking around. Searching the archives, I found a thread about the bulk configurable part from 2005 [1]. But it doesn't look like anything came from it. There's also a quasy-relevant bug about auto-starting PulseAudio instead of ESounD in gnome-session. [2] This still leaves a lot of problems. I took a moment to think about possible solutions: 1) A replacement for the libgnome could be a GTK+ module, that simply hooks signals and plays sounds. Sounds are preloaded by settings-daemon; no difference from the current situation there. The GTK+ module can use PulseAudio's GLib mainloop integration. Playing sounds from the sample cache is asynchronous. 2) More events becomes a problem when thinking beyond just the fixed set for a GUI toolkit; about feedback from application specific functions. Opening a folder and browsing to a page are good examples of this. A possible solution would be to dedicate a GConf directory for sound events. Control-center iterates directory entries to find configurable sounds and their descriptions. (Short description in the listview, long in the tooltip for example.) Applications namespace their event names to avoid conflicts. 3) Theming is a matter of defining a format and implementing the configuration for it. This could be a dead simple archive containing wave or Ogg Vorbis files named after the GConf event names they play for. 4) This is slightly tricky. A volume can be specified when playing the sample. Along the lines of the previous solutions, this means the GTK+ module needs to access the configuration somehow to get the volume. I'm not sure if a GConf dependency in a generic GTK+ module is a good idea. PulseAudio also stores a default volume for samples in the cache, but there's nothing in the documentation on how to set this. Perhaps this is some extra work that needs to be done on the PulseAudio side. With that out of the way, I'd be very happy to hear about any other problems you are seeing (hearing), and comments on the solutions above. (GTK+ modules are a specific area I'm not familiar with. If there's anything special I need to know about how they are loaded, or limitations regarding functionality and library dependencies, do tell!) Regards, - -- Stéphan [1] http://mail.gnome.org/archives/desktop-devel-list/2005-May/msg00111.html [2] http://bugzilla.gnome.org/show_bug.cgi?id=398430 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFHRItXcFUq0gzqDwQRAlR6AJ4qft9pDVfPSp0iA5OIdzHNAAZTkACdFAh8 ycuSkj43c/UXdd+vguuxBio= =PqLY -----END PGP SIGNATURE----- _______________________________________________ desktop-devel-list mailing list desktop-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/desktop-devel-list