Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Lennart Poettering at 31/12/09 18:55 did gyre and gimble: It has always specifically hidden the UI element for moving the event streams but I will happily add it back in and write the appropriate stream restore rule if you don't have some fundamental objection to it? Would be great to have this feature in pavucontrol! BTW, if you touch this code anyway it might be an idea to create a new tab which lists more role-specific sliders/dropdowns than just event. I.e. a music slider, a telephony sleider and so on. Actually I'm a bit aprehensive about exposing other roles just yet... My reasoning: At present pavucontrol: 1) Shows an Event slider for all sounds with the event role. 2) Hides individual streams with the event role. This means that there is only one way to adjust the volume of these streams and that is via the stream restore db and the widget. Now the stream restore key format currently has a priority scheme. If a stream that has a role has a role-based rule, it will take precedence over an application based stream (IIRC it's role, app id, app name, media name in that order). So if I were to expose the other roles, and someone set a volume for e.g. music, then went along and started playing multiple files in e.g. rhythmbox, found it too loud and adjusted the *application* stream for rhythmbox it would be adjusted for that stream and saved to the db as an application specific rule, but the next time rhythmbox played anything (e.g. on track change), the volume would be restored from the *role* based rule. The question is, what should be done here? Some potential options: 1. a) Make app rules override role rules. b) Provide a way to delete an app rule in the GUI (so it can revert to the role rule). 2. a) Provide a way to delete a role rule in the GUI (so it can use the application rule). Both options kinda need a degree of user understanding as to the implementation. I think we need to define how we want this to work in more depth before I add these extra widgets to the volume control GUIs. (I did raise this confusion a long time ago, but didn't really persevere with the discussion to get to a sensible outcome...) Thoughts? Col -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Tue, 29.12.09 00:30, Colin Guthrie (gm...@colin.guthr.ie) wrote: A follow-up on this, how do I move event sounds to a different sink? For other streams I simply use pavucontrol, but it doesn't seem that there's any selector for the System Sounds item. It just selects the 'normal' (laptop sound card output) and I can't figure a way to move it to my BT headset without turning the sound card output off. I believe that libcanberra always ensures that event sounds are played on the default sink. Not sure of the inner workings there nor of whether it should be a stream-restore job (it's capable of routing e.g. all event sounds to a given sink, overriding (IIRC) the per-application device rules. Nah, event sounds are treated exactly like other streams that are tagged with a role. m-s-r will save/restore a volume and a device for it, like it does for all others treams too. libcanberra induced sounds are really nothing special, and libcanberra does not try to outsmart PA. Incidentally Lennart, can you sort out the following: http://0pointer.de/public/sound-theme-spec.html : Version says 0.2 at the top, change summary mentions 0.5. http://www.freedesktop.org/wiki/Specifications/sound-theme-spec : Links to the above link as version 0.3 (not 0.2 or 0.5 as expected!) Fixed now. Lennart -- Lennart PoetteringRed Hat, Inc. lennart [at] poettering [dot] net http://0pointer.net/lennart/ GnuPG 0x1A015CC4 ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Tue, 29.12.09 08:44, Ng Oon-Ee (ngoo...@gmail.com) wrote: A follow-up on this, how do I move event sounds to a different sink? For other streams I simply use pavucontrol, but it doesn't seem that there's any selector for the System Sounds item. It just selects the 'normal' (laptop sound card output) and I can't figure a way to move it to my BT headset without turning the sound card output off. I believe that libcanberra always ensures that event sounds are played on the default sink. Not sure of the inner workings there nor of whether it should be a stream-restore job (it's capable of routing e.g. all event sounds to a given sink, overriding (IIRC) the per-application device rules. Hmm, is it then impossible to move event sounds? Doesn't seem like a good way to do it. You can. Event sounds are streams like any other. Given how short they are it might be hard to be quick enough though to move them. Incidentally, when playing with pidgin, are you sure paplay is the right thing to use... in the absence of direct libcanberra support, could you not use canberra-gtk-play -i message-new-instant or similar to play the relevant sound from the FDO sound theme naming spec[1] when the appropriate action occurs. I'd imagine writing a libcanberra plugin for purple/pidgin wouldn't be very hard at all... basically just bridging code (although this is without the benefit of looking at either set of APIs in any great depth :p) canberra-gtk-play doesn't seem to work here, errors out with:- Failed to play sound: Sound disabled If you disable event sounds you don't get event sounds. Surprise, surprise! Lennart -- Lennart PoetteringRed Hat, Inc. lennart [at] poettering [dot] net http://0pointer.net/lennart/ GnuPG 0x1A015CC4 ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Lennart Poettering at 05/01/10 14:49 did gyre and gimble: On Tue, 29.12.09 08:44, Ng Oon-Ee (ngoo...@gmail.com) wrote: A follow-up on this, how do I move event sounds to a different sink? For other streams I simply use pavucontrol, but it doesn't seem that there's any selector for the System Sounds item. It just selects the 'normal' (laptop sound card output) and I can't figure a way to move it to my BT headset without turning the sound card output off. I believe that libcanberra always ensures that event sounds are played on the default sink. Not sure of the inner workings there nor of whether it should be a stream-restore job (it's capable of routing e.g. all event sounds to a given sink, overriding (IIRC) the per-application device rules. Hmm, is it then impossible to move event sounds? Doesn't seem like a good way to do it. You can. Event sounds are streams like any other. Given how short they are it might be hard to be quick enough though to move them. Well event sounds are now hidden in pavucontrol so moving is tricky... cmd line tools are hard to use for this when time is of the essence! Incidentally, when playing with pidgin, are you sure paplay is the right thing to use... in the absence of direct libcanberra support, could you not use canberra-gtk-play -i message-new-instant or similar to play the relevant sound from the FDO sound theme naming spec[1] when the appropriate action occurs. I'd imagine writing a libcanberra plugin for purple/pidgin wouldn't be very hard at all... basically just bridging code (although this is without the benefit of looking at either set of APIs in any great depth :p) canberra-gtk-play doesn't seem to work here, errors out with:- Failed to play sound: Sound disabled If you disable event sounds you don't get event sounds. Surprise, surprise! I do actually get the same problem at times not sure what triggers it, but half way through a session canberra-gtk-play will start bombing out with that same error. I've been meaning to look into why canberra believes them to be disabled... My initial stab in the dark is some sort of gconf borkage, but not sure. Col -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Lennart Poettering at 05/01/10 14:54 did gyre and gimble: Yup and the general decision that this approach is a good thing and something that should be exposed to users. I know Lennart doesn't like the idea of this being something users have direct control over, but it's something I hear people asking for over and over. Perhaps it's just because the automatic approaches don't work, full and there are other ways but I quite like the transparency and relative simplicity (i.e. users can easily grasp how it works as opposed to black magic hidden foo) this approach offers. Nah, the automatic scheme I have in mind has not been tested yet. Right now we store no history of previous settings that could be used when the newest setting cannot be applied because a device is not plugged in or suchlike. So what I have in mind is simply have a stack of choices. Whenever a user makes a choice the stack entry for it is put on top. If it existed before it is thus removed from the stack first and moved to the top. If it didnt exist it is created newly. That way the user can easily configure the order of devices simply by moving streams if the order is wrong and that's it. No complex UIs for that. Ahh right yes. Too many discussions fly about for this tiny brain! Hopefully the actual database in the m-d-m is sufficient for this and all that's really needed is an additional module to manupulate it automatically. For role based sink moves this wouldn't even conflict with the KDE approach - it's just a simple GUI like pavucontrol (which doesn't support role based sink moves yet) would have the effect of promoting the destination to the top of the list... Cool. -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Tue, 05.01.10 10:06, Colin Guthrie (gm...@colin.guthr.ie) wrote: BTW, if you touch this code anyway it might be an idea to create a new tab which lists more role-specific sliders/dropdowns than just event. I.e. a music slider, a telephony sleider and so on. Actually I'm a bit aprehensive about exposing other roles just yet... My reasoning: At present pavucontrol: 1) Shows an Event slider for all sounds with the event role. 2) Hides individual streams with the event role. This means that there is only one way to adjust the volume of these streams and that is via the stream restore db and the widget. Now the stream restore key format currently has a priority scheme. If a stream that has a role has a role-based rule, it will take precedence over an application based stream (IIRC it's role, app id, app name, media name in that order). That is true. So if I were to expose the other roles, and someone set a volume for e.g. music, then went along and started playing multiple files in e.g. rhythmbox, found it too loud and adjusted the *application* stream for rhythmbox it would be adjusted for that stream and saved to the db as an application specific rule, but the next time rhythmbox played anything (e.g. on track change), the volume would be restored from the *role* based rule. No. That's not how it works: changing the application volume will influence the role volume. For each stream when it first appears we calculate the key to identify it with in the database, both when reading and when writing, and we never use anything different during the stream's entire lifetime. That means that if for a rhythmbox stream we determine the sink-input-by-role:music key then we will read the volume/device with is it, and write it too. We will never fiddle with sink-input-by-application:Rhythmbox if they role is set. Lennart -- Lennart PoetteringRed Hat, Inc. lennart [at] poettering [dot] net http://0pointer.net/lennart/ GnuPG 0x1A015CC4 ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Tue, 2010-01-05 at 14:56 +, Colin Guthrie wrote: 'Twas brillig, and Lennart Poettering at 05/01/10 14:49 did gyre and gimble: On Tue, 29.12.09 08:44, Ng Oon-Ee (ngoo...@gmail.com) wrote: A follow-up on this, how do I move event sounds to a different sink? For other streams I simply use pavucontrol, but it doesn't seem that there's any selector for the System Sounds item. It just selects the 'normal' (laptop sound card output) and I can't figure a way to move it to my BT headset without turning the sound card output off. I believe that libcanberra always ensures that event sounds are played on the default sink. Not sure of the inner workings there nor of whether it should be a stream-restore job (it's capable of routing e.g. all event sounds to a given sink, overriding (IIRC) the per-application device rules. Hmm, is it then impossible to move event sounds? Doesn't seem like a good way to do it. You can. Event sounds are streams like any other. Given how short they are it might be hard to be quick enough though to move them. Well event sounds are now hidden in pavucontrol so moving is tricky... cmd line tools are hard to use for this when time is of the essence! My initial email was primarily to do with pavucontrol and the lack of a method to move event sounds which is analogous to moving sounds from apps. The method currently is to set a default sink, but since this differs from how other app sounds work, its confusing (for me at least) and bears looking at. Purely a usability issue. Incidentally, when playing with pidgin, are you sure paplay is the right thing to use... in the absence of direct libcanberra support, could you not use canberra-gtk-play -i message-new-instant or similar to play the relevant sound from the FDO sound theme naming spec[1] when the appropriate action occurs. I'd imagine writing a libcanberra plugin for purple/pidgin wouldn't be very hard at all... basically just bridging code (although this is without the benefit of looking at either set of APIs in any great depth :p) canberra-gtk-play doesn't seem to work here, errors out with:- Failed to play sound: Sound disabled If you disable event sounds you don't get event sounds. Surprise, surprise! I do actually get the same problem at times not sure what triggers it, but half way through a session canberra-gtk-play will start bombing out with that same error. I've been meaning to look into why canberra believes them to be disabled... My initial stab in the dark is some sort of gconf borkage, but not sure. Col ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Colin Guthrie at 05/01/10 15:03 did gyre and gimble: 'Twas brillig, and Lennart Poettering at 05/01/10 14:54 did gyre and gimble: Yup and the general decision that this approach is a good thing and something that should be exposed to users. I know Lennart doesn't like the idea of this being something users have direct control over, but it's something I hear people asking for over and over. Perhaps it's just because the automatic approaches don't work, full and there are other ways but I quite like the transparency and relative simplicity (i.e. users can easily grasp how it works as opposed to black magic hidden foo) this approach offers. Nah, the automatic scheme I have in mind has not been tested yet. Right now we store no history of previous settings that could be used when the newest setting cannot be applied because a device is not plugged in or suchlike. So what I have in mind is simply have a stack of choices. Whenever a user makes a choice the stack entry for it is put on top. If it existed before it is thus removed from the stack first and moved to the top. If it didnt exist it is created newly. That way the user can easily configure the order of devices simply by moving streams if the order is wrong and that's it. No complex UIs for that. Ahh right yes. Too many discussions fly about for this tiny brain! Hopefully the actual database in the m-d-m is sufficient for this and all that's really needed is an additional module to manupulate it automatically. For role based sink moves this wouldn't even conflict with the KDE approach - it's just a simple GUI like pavucontrol (which doesn't support role based sink moves yet) would have the effect of promoting the destination to the top of the list... Cool. (erm, obviously the m-d-m database stores only role-based priorites... I guess it could be expanded to store application based priorites too - like m-s-r. Col -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Lennart Poettering at 05/01/10 15:05 did gyre and gimble: On Tue, 05.01.10 10:06, Colin Guthrie (gm...@colin.guthr.ie) wrote: BTW, if you touch this code anyway it might be an idea to create a new tab which lists more role-specific sliders/dropdowns than just event. I.e. a music slider, a telephony sleider and so on. Actually I'm a bit aprehensive about exposing other roles just yet... My reasoning: At present pavucontrol: 1) Shows an Event slider for all sounds with the event role. 2) Hides individual streams with the event role. This means that there is only one way to adjust the volume of these streams and that is via the stream restore db and the widget. Now the stream restore key format currently has a priority scheme. If a stream that has a role has a role-based rule, it will take precedence over an application based stream (IIRC it's role, app id, app name, media name in that order). That is true. So if I were to expose the other roles, and someone set a volume for e.g. music, then went along and started playing multiple files in e.g. rhythmbox, found it too loud and adjusted the *application* stream for rhythmbox it would be adjusted for that stream and saved to the db as an application specific rule, but the next time rhythmbox played anything (e.g. on track change), the volume would be restored from the *role* based rule. No. That's not how it works: changing the application volume will influence the role volume. For each stream when it first appears we calculate the key to identify it with in the database, both when reading and when writing, and we never use anything different during the stream's entire lifetime. That means that if for a rhythmbox stream we determine the sink-input-by-role:music key then we will read the volume/device with is it, and write it too. We will never fiddle with sink-input-by-application:Rhythmbox if they role is set. A, good point. Col -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Tue, 05.01.10 14:56, Colin Guthrie (gm...@colin.guthr.ie) wrote: 'Twas brillig, and Lennart Poettering at 05/01/10 14:49 did gyre and gimble: On Tue, 29.12.09 08:44, Ng Oon-Ee (ngoo...@gmail.com) wrote: A follow-up on this, how do I move event sounds to a different sink? For other streams I simply use pavucontrol, but it doesn't seem that there's any selector for the System Sounds item. It just selects the 'normal' (laptop sound card output) and I can't figure a way to move it to my BT headset without turning the sound card output off. I believe that libcanberra always ensures that event sounds are played on the default sink. Not sure of the inner workings there nor of whether it should be a stream-restore job (it's capable of routing e.g. all event sounds to a given sink, overriding (IIRC) the per-application device rules. Hmm, is it then impossible to move event sounds? Doesn't seem like a good way to do it. You can. Event sounds are streams like any other. Given how short they are it might be hard to be quick enough though to move them. Well event sounds are now hidden in pavucontrol so moving is tricky... cmd line tools are hard to use for this when time is of the essence! Hmm, I though it is actually visible if you use that dropdown on the lower right... Are we really hiding it unconditionally? If so, that seems like a poor choice I think. I've been meaning to look into why canberra believes them to be disabled... My initial stab in the dark is some sort of gconf borkage, but not sure. We get that value from an XSETTING that gnome-settings-daemon initializes from gconf. Lennart -- Lennart PoetteringRed Hat, Inc. lennart [at] poettering [dot] net http://0pointer.net/lennart/ GnuPG 0x1A015CC4 ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Lennart Poettering at 05/01/10 15:19 did gyre and gimble: Well event sounds are now hidden in pavucontrol so moving is tricky... cmd line tools are hard to use for this when time is of the essence! Hmm, I though it is actually visible if you use that dropdown on the lower right... Are we really hiding it unconditionally? If so, that seems like a poor choice I think. The problem is that when the even sounds specifically (does not apply to other roles) are shown, that it breaks changing the volumes due to focus stealing in pavucontrol. If we can solve the focus problem they can be shown (either unconditionally or via an option in the filter drop down). While this breakage occurs it's best to hide them unconditionally as people will only get confused. An alternative is to remove the canberra integration in pavucontrol which plays the volume change sound when the volume changes... but it's quite nice :) I've been meaning to look into why canberra believes them to be disabled... My initial stab in the dark is some sort of gconf borkage, but not sure. We get that value from an XSETTING that gnome-settings-daemon initializes from gconf. Thanks, I'll take a look. Col -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Tue, 05.01.10 15:12, Colin Guthrie (gm...@colin.guthr.ie) wrote: 'Twas brillig, and Colin Guthrie at 05/01/10 15:03 did gyre and gimble: 'Twas brillig, and Lennart Poettering at 05/01/10 14:54 did gyre and gimble: Yup and the general decision that this approach is a good thing and something that should be exposed to users. I know Lennart doesn't like the idea of this being something users have direct control over, but it's something I hear people asking for over and over. Perhaps it's just because the automatic approaches don't work, full and there are other ways but I quite like the transparency and relative simplicity (i.e. users can easily grasp how it works as opposed to black magic hidden foo) this approach offers. Nah, the automatic scheme I have in mind has not been tested yet. Right now we store no history of previous settings that could be used when the newest setting cannot be applied because a device is not plugged in or suchlike. So what I have in mind is simply have a stack of choices. Whenever a user makes a choice the stack entry for it is put on top. If it existed before it is thus removed from the stack first and moved to the top. If it didnt exist it is created newly. That way the user can easily configure the order of devices simply by moving streams if the order is wrong and that's it. No complex UIs for that. Ahh right yes. Too many discussions fly about for this tiny brain! Hopefully the actual database in the m-d-m is sufficient for this and all that's really needed is an additional module to manupulate it automatically. For role based sink moves this wouldn't even conflict with the KDE approach - it's just a simple GUI like pavucontrol (which doesn't support role based sink moves yet) would have the effect of promoting the destination to the top of the list... Cool. (erm, obviously the m-d-m database stores only role-based priorites... I guess it could be expanded to store application based priorites too - like m-s-r. If you make sure that m-d-m installs its hooks so that they are executed after m-s-r's hook you could simply rely on the module-stream-restore.id property to be set in which we store the actual db key we use. if you rely on that you can be sure that you use the same id mechanism as m-s-r. Lennart -- Lennart PoetteringRed Hat, Inc. lennart [at] poettering [dot] net http://0pointer.net/lennart/ GnuPG 0x1A015CC4 ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Tue, 05.01.10 15:31, Colin Guthrie (gm...@colin.guthr.ie) wrote: The problem is that when the even sounds specifically (does not apply to other roles) are shown, that it breaks changing the volumes due to focus stealing in pavucontrol. If we can solve the focus problem they can be shown (either unconditionally or via an option in the filter drop down). While this breakage occurs it's best to hide them unconditionally as people will only get confused. An alternative is to remove the canberra integration in pavucontrol which plays the volume change sound when the volume changes... but it's quite nice :) Oh, right. forgot about that. I guess the easiest way then is to simply add that device dropdown to the event sound slider and be done with it. I've been meaning to look into why canberra believes them to be disabled... My initial stab in the dark is some sort of gconf borkage, but not sure. We get that value from an XSETTING that gnome-settings-daemon initializes from gconf. Thanks, I'll take a look. BTW, that means that if you run KDE (which afaik does not provide that XSETTING) you wont get event sounds, because they default to off IIRC. Lennart -- Lennart PoetteringRed Hat, Inc. lennart [at] poettering [dot] net http://0pointer.net/lennart/ GnuPG 0x1A015CC4 ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Lennart Poettering at 05/01/10 16:35 did gyre and gimble: We get that value from an XSETTING that gnome-settings-daemon initializes from gconf. Thanks, I'll take a look. BTW, that means that if you run KDE (which afaik does not provide that XSETTING) you wont get event sounds, because they default to off IIRC. Despite doing a fair bit of KDE dev of late, I generally run a Gnome desktop (although I do switch about fairly often) but thanks for the headsup here (I have noticed it didn't work under KDE session). My main motivation for my KDE integration work is to make Mdv work nicer/more consistently and to spread the joy of PA as widely as possible :D The KDE generated event sounds *should* all go through phonon and be properly categorised (and thus have an appropriate role) etc. now that my other patches are merged. (of course knotify does sometimes use alsa directly which is another problem... *sigh*). I also now have Pulse support in kmix but it's somewhat preliminary. Blogs to follow etc. etc. :p (as I'm going off topic at an alarming rate!) Col -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Jason Taylor at 03/01/10 00:31 did gyre and gimble: Seriously need this for my usb headset.. it drives me insane trying to get the sounds to the correct output. One thing though I'm not sure it's possible but there needs to be some thing similar for input as well, at the moment I have to open the sound prefs and click the input tab and select the usb mic, then close the window... thats 5 clicks to do some thing that should be automatic... Also the list should be mostly automatic with new devices just receiving a higher priority. In keeping with *gnomeishness* the priority could just be normal, medium and high normal / default - internal and network devices medium - usb and bluetooth high - reserved for user selection so they can override with a preferred device (unused by most users) There is already an internal priority that does pretty much this (not sure of the weightings but the principle is certainly there). I also have a very precise priority list manually controllable in module-device-manager which is able to do the routing policy. At present this module is only loaded under kde which exposes this routing policy transparently. Longer term, I intend to allow the user to pick their routing policy based on a preference inside PA itself and give some kind of GUI to other clients (e.g. pavucontrol) to do the same thing, but I've not had time of late to look into that approach. It will be based on the work to deprecate module-gconf and use module-loader instead which will unify the database systems we use (currently both the compiled in db (gdbm or tdb) and gconf will be used to store preferences which is a bit silly. We should just stick to one and reduce the complexity. Once this is done, it'll also see a merging of paprefs and pavucontrol code into one app. Anyway, not much to report on it yet. Col -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Jason Taylor at 01/01/10 01:31 did gyre and gimble: 2010/1/1 Ng Oon-Ee ngoo...@gmail.com: Yet another argument for role-based, priority list of preferred devices (e.g. how I've made module-device-manager work with the KDE UI - FWIW, the setup you want is /probably/ working fine under KDE with my integration patches and PA 0.9.21...) Yes, from what I've read on your KDE work that may be the case. Unfortunately I'm quite tied to gnome =). Whats missing to make this work in gnome just the UI ? Yup and the general decision that this approach is a good thing and something that should be exposed to users. I know Lennart doesn't like the idea of this being something users have direct control over, but it's something I hear people asking for over and over. Perhaps it's just because the automatic approaches don't work, full and there are other ways but I quite like the transparency and relative simplicity (i.e. users can easily grasp how it works as opposed to black magic hidden foo) this approach offers. Col -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
2010/1/3 Colin Guthrie gm...@colin.guthr.ie: 'Twas brillig, and Jason Taylor at 01/01/10 01:31 did gyre and gimble: 2010/1/1 Ng Oon-Ee ngoo...@gmail.com: Yet another argument for role-based, priority list of preferred devices (e.g. how I've made module-device-manager work with the KDE UI - FWIW, the setup you want is /probably/ working fine under KDE with my integration patches and PA 0.9.21...) Yes, from what I've read on your KDE work that may be the case. Unfortunately I'm quite tied to gnome =). Whats missing to make this work in gnome just the UI ? Yup and the general decision that this approach is a good thing and something that should be exposed to users. I know Lennart doesn't like the idea of this being something users have direct control over, but it's something I hear people asking for over and over. Perhaps it's just because the automatic approaches don't work, full and there are other ways but I quite like the transparency and relative simplicity (i.e. users can easily grasp how it works as opposed to black magic hidden foo) this approach offers. Col Seriously need this for my usb headset.. it drives me insane trying to get the sounds to the correct output. One thing though I'm not sure it's possible but there needs to be some thing similar for input as well, at the moment I have to open the sound prefs and click the input tab and select the usb mic, then close the window... thats 5 clicks to do some thing that should be automatic... Also the list should be mostly automatic with new devices just receiving a higher priority. In keeping with *gnomeishness* the priority could just be normal, medium and high normal / default - internal and network devices medium - usb and bluetooth high - reserved for user selection so they can override with a preferred device (unused by most users) Cheers ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Tue, 2009-12-29 at 08:44 +0800, Ng Oon-Ee wrote: Hmm, is it then impossible to move event sounds? Doesn't seem like a good way to do it. Any comments? I can't find a way to move event sounds from my laptop speakers to my BT headphone (and my soon-to-come USB audio card I suppose). ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Ng Oon-Ee at 31/12/09 10:40 did gyre and gimble: On Tue, 2009-12-29 at 08:44 +0800, Ng Oon-Ee wrote: Hmm, is it then impossible to move event sounds? Doesn't seem like a good way to do it. Any comments? I can't find a way to move event sounds from my laptop speakers to my BT headphone (and my soon-to-come USB audio card I suppose). Just set the device as the default/fallback and it'll be used for event sounds (as I said before). Is this not flexible enough? There is technically no reason why we cannot enable this kind of moving, but I guess Lennart originally omitted it from pavucontrol for a reason so I would prefer his feedback before committing to anything. Col -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Thu, 2009-12-31 at 11:27 +, Colin Guthrie wrote: 'Twas brillig, and Ng Oon-Ee at 31/12/09 10:40 did gyre and gimble: On Tue, 2009-12-29 at 08:44 +0800, Ng Oon-Ee wrote: Hmm, is it then impossible to move event sounds? Doesn't seem like a good way to do it. Any comments? I can't find a way to move event sounds from my laptop speakers to my BT headphone (and my soon-to-come USB audio card I suppose). Just set the device as the default/fallback and it'll be used for event sounds (as I said before). Is this not flexible enough? There is technically no reason why we cannot enable this kind of moving, but I guess Lennart originally omitted it from pavucontrol for a reason so I would prefer his feedback before committing to anything. Col Apologies for not reading your previous response properly, I was assuming that my on-board MUST be defalt. My main issue is that this is different from how any other stream is handled. Imagine I have 3 sound output choices (a headset (A), on-board (B), some USB sound-card (C)). For a normal app, I set a preferred sink and it falls back to default, for example I'd always prefer it to be on A and to move to B if that's not possible. For event sounds, however, the only way to get it to be on A is to set A as a default, then in the case A is disconnected, its a toss up whether B or C gets event sounds (I'm sure there's some consistency, but it may not be the one I want?). ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Ng Oon-Ee at 31/12/09 12:14 did gyre and gimble: For event sounds, however, the only way to get it to be on A is to set A as a default, then in the case A is disconnected, its a toss up whether B or C gets event sounds (I'm sure there's some consistency, but it may not be the one I want?). Indeed, but then again if you moved the event role to A and then disconnected it, it would be up to module-rescue-streams to relocate it appropriately too which again, may not be the one you want... so the problem still exists in this scenario too... Yet another argument for role-based, priority list of preferred devices (e.g. how I've made module-device-manager work with the KDE UI - FWIW, the setup you want is /probably/ working fine under KDE with my integration patches and PA 0.9.21...) Col. -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Tue, 29.12.09 07:43, Ng Oon-Ee (ngoo...@gmail.com) wrote: On Mon, 2009-12-28 at 15:45 +0100, Lennart Poettering wrote: On Mon, 28.12.09 17:41, Ng Oon-Ee (ngoo...@gmail.com) wrote: Is there a way to specify a sound to be a 'system sound' as defined by System Sounds on pavucontrol, when played by paplay? If so, then programs such as pidgin which allow playing event notifications through a command would be useable without modification. paplay --property=media.role=event ... Lennart A follow-up on this, how do I move event sounds to a different sink? For other streams I simply use pavucontrol, but it doesn't seem that there's any selector for the System Sounds item. It just selects the 'normal' (laptop sound card output) and I can't figure a way to move it to my BT headset without turning the sound card output off. If you move an event sound stream to a particular device PA will remember that and apply it as well to all other streams tagged event. Of course its kinda hard doing that given that they usually are very short in time (a hackish workaround however is to play the login sound which is much longer then the rest). There is an API to modify the device for all event streams, however there is no app currently making use of this. Hopefully g-v-c will gain that feature soon. Lennart -- Lennart PoetteringRed Hat, Inc. lennart [at] poettering [dot] net http://0pointer.net/lennart/ GnuPG 0x1A015CC4 ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Lennart Poettering at 31/12/09 17:43 did gyre and gimble: There is an API to modify the device for all event streams, however there is no app currently making use of this. Hopefully g-v-c will gain that feature soon. So do you have any particular reason to not implement this in pavucontrol? It has always specifically hidden the UI element for moving the event streams but I will happily add it back in and write the appropriate stream restore rule if you don't have some fundamental objection to it? Col -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Thu, 31.12.09 18:18, Colin Guthrie (gm...@colin.guthr.ie) wrote: 'Twas brillig, and Lennart Poettering at 31/12/09 17:43 did gyre and gimble: There is an API to modify the device for all event streams, however there is no app currently making use of this. Hopefully g-v-c will gain that feature soon. So do you have any particular reason to not implement this in pavucontrol? Yes, there is one: my laziness... ;-) It has always specifically hidden the UI element for moving the event streams but I will happily add it back in and write the appropriate stream restore rule if you don't have some fundamental objection to it? Would be great to have this feature in pavucontrol! BTW, if you touch this code anyway it might be an idea to create a new tab which lists more role-specific sliders/dropdowns than just event. I.e. a music slider, a telephony sleider and so on. Lennart -- Lennart PoetteringRed Hat, Inc. lennart [at] poettering [dot] net http://0pointer.net/lennart/ GnuPG 0x1A015CC4 ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Thu, 2009-12-31 at 14:59 +, Colin Guthrie wrote: 'Twas brillig, and Ng Oon-Ee at 31/12/09 12:14 did gyre and gimble: For event sounds, however, the only way to get it to be on A is to set A as a default, then in the case A is disconnected, its a toss up whether B or C gets event sounds (I'm sure there's some consistency, but it may not be the one I want?). Indeed, but then again if you moved the event role to A and then disconnected it, it would be up to module-rescue-streams to relocate it appropriately too which again, may not be the one you want... so the problem still exists in this scenario too... Yet another argument for role-based, priority list of preferred devices (e.g. how I've made module-device-manager work with the KDE UI - FWIW, the setup you want is /probably/ working fine under KDE with my integration patches and PA 0.9.21...) Yes, from what I've read on your KDE work that may be the case. Unfortunately I'm quite tied to gnome =). ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
'Twas brillig, and Ng Oon-Ee at 28/12/09 23:43 did gyre and gimble: On Mon, 2009-12-28 at 15:45 +0100, Lennart Poettering wrote: On Mon, 28.12.09 17:41, Ng Oon-Ee (ngoo...@gmail.com) wrote: Is there a way to specify a sound to be a 'system sound' as defined by System Sounds on pavucontrol, when played by paplay? If so, then programs such as pidgin which allow playing event notifications through a command would be useable without modification. paplay --property=media.role=event ... Lennart A follow-up on this, how do I move event sounds to a different sink? For other streams I simply use pavucontrol, but it doesn't seem that there's any selector for the System Sounds item. It just selects the 'normal' (laptop sound card output) and I can't figure a way to move it to my BT headset without turning the sound card output off. I believe that libcanberra always ensures that event sounds are played on the default sink. Not sure of the inner workings there nor of whether it should be a stream-restore job (it's capable of routing e.g. all event sounds to a given sink, overriding (IIRC) the per-application device rules. Incidentally, when playing with pidgin, are you sure paplay is the right thing to use... in the absence of direct libcanberra support, could you not use canberra-gtk-play -i message-new-instant or similar to play the relevant sound from the FDO sound theme naming spec[1] when the appropriate action occurs. I'd imagine writing a libcanberra plugin for purple/pidgin wouldn't be very hard at all... basically just bridging code (although this is without the benefit of looking at either set of APIs in any great depth :p) Incidentally Lennart, can you sort out the following: http://0pointer.de/public/sound-theme-spec.html : Version says 0.2 at the top, change summary mentions 0.5. http://www.freedesktop.org/wiki/Specifications/sound-theme-spec : Links to the above link as version 0.3 (not 0.2 or 0.5 as expected!) This is very confusing - can all links and versions linked from the official places please be made to be the most recent versions? Col [1] http://0pointer.de/public/sound-naming-spec.html -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] Sink for event sounds? WAS: paplay - sound roles?
On Tue, 2009-12-29 at 00:30 +, Colin Guthrie wrote: 'Twas brillig, and Ng Oon-Ee at 28/12/09 23:43 did gyre and gimble: On Mon, 2009-12-28 at 15:45 +0100, Lennart Poettering wrote: On Mon, 28.12.09 17:41, Ng Oon-Ee (ngoo...@gmail.com) wrote: Is there a way to specify a sound to be a 'system sound' as defined by System Sounds on pavucontrol, when played by paplay? If so, then programs such as pidgin which allow playing event notifications through a command would be useable without modification. paplay --property=media.role=event ... Lennart A follow-up on this, how do I move event sounds to a different sink? For other streams I simply use pavucontrol, but it doesn't seem that there's any selector for the System Sounds item. It just selects the 'normal' (laptop sound card output) and I can't figure a way to move it to my BT headset without turning the sound card output off. I believe that libcanberra always ensures that event sounds are played on the default sink. Not sure of the inner workings there nor of whether it should be a stream-restore job (it's capable of routing e.g. all event sounds to a given sink, overriding (IIRC) the per-application device rules. Hmm, is it then impossible to move event sounds? Doesn't seem like a good way to do it. Incidentally, when playing with pidgin, are you sure paplay is the right thing to use... in the absence of direct libcanberra support, could you not use canberra-gtk-play -i message-new-instant or similar to play the relevant sound from the FDO sound theme naming spec[1] when the appropriate action occurs. I'd imagine writing a libcanberra plugin for purple/pidgin wouldn't be very hard at all... basically just bridging code (although this is without the benefit of looking at either set of APIs in any great depth :p) canberra-gtk-play doesn't seem to work here, errors out with:- Failed to play sound: Sound disabled I've never used it before, and I believe libcanberra on my system may not even have pulseaudio support compiled in, hence my preference for paplay (I don't use any gnome event sounds). ___ pulseaudio-discuss mailing list pulseaudio-discuss@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss