Re: Sound system - user perspective
- From: Lennart Poettering <mztabzr 0pointer de>
- To: desktop-devel-list gnome org
- Subject: Re: Sound system - user perspective
- Date: Sun, 13 Sep 2009 20:11:10 +0200
On Sun, 13.09.09 19:18, Maciej Piechotka (uzytkownik2 gmail com) wrote:
> I spotted an area in which Gnome desktop can offer better user
> experience.
>
> Imagine I use VoIP (skype, empathy or anything like that) and some music
> player (Banshee, Rhythmbox etc.). I listen to some music or a podcast
> when someone ring.
>
> I have to stop the music and answer the phone. However I guess that
> music/podcast should actually be paused (i.e. state in application
> should be stopped) instead of being just volume down.
>
> I'm not sure if current architecture would allow such integration and
> probably it would require changes to few packages (music player and
> empathy at least) I prefer to post the idea here firstly.
This logic is actually already supported in PulseAudio and activated
by default.
This all depends on that applications properly tag their audio
streams, i.e. so that it is clear which stream is telephony, which one
is event sounds, and which one is music. Some apps have now started to
do this properly. In fact the next beta of Skype will do this too. And
if your favourite telephony or music app still doesn't then please
complain and file a bug and ask them to read this:
http://0pointer.de/blog/projects/tagging-audio.html
and this:
http://pulseaudio.org/wiki/ApplicationProperties
The logic in PA will mute every stream tagged as "music" as soon as a
stream tagged as "phone" is active. It will also send an asynchronous
event to each music playing client requesting that it should pause its
playback. If the "phone" stream goes away the "music" streams will be
unmuted again and the apps notified that it is a good idea to unpause
playback again.
Unfortunately GStreamer does not have a nice API for tagging streams
yet (this limitation can be circumvented via using environment
variables which PA will pick up, but that's not a very nice
solution). Also, GStreamer does not actually forward the pause request
message to the applications and hence you'll effectively only see the
muting taking happen, not the pause/unpause in current media players.
To make this all work nicely jut a little bit glue code needs to be
written for Gst and some minor patches be prepared for the various
telephony apps/media players. If someone wants to pick this up and
push this through this would be really great!
Lennart
--
Lennart Poettering Red Hat, Inc.
lennart [at] poettering [dot] net
http://0pointer.net/lennart/ GnuPG 0x1A015CC4
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]