Ubuntu QA:
BlogBrainstormPackage status
Log in
Ubuntu QA
The Ubuntu community has contributed 21545 ideas, 132412 comments, 2606687 votes
Idea sandbox Idea sandbox
Popular ideas Popular ideas
Ideas in development Ideas in development
Implemented ideas Implemented ideas
Idea #7482: Create and add PulseAudio Volume Control Applet for panel

bug This idea was marked as implemented the 7 July 11. Available starting Ubuntu 10.04 Lucid Lynx.
Written by swalko the 23 Apr 08 at 19:52. Category: Multimedia. Related project: Nothing/Others. Status: Implemented
Rationale
In Hardy is in default installation integrated PulseAudio server. Most of applications are using PulseAudio. It will be very usable if will be created PulseAudio Volume Control applet similar to Volume Control applet. After left click on this applet user can see all audio streams named by applications (volume control for stream and icon for quick mute). Same applet is in Vista and for me it is the best Vista feature. Most of audio programs by muting stream from their gui completely mute alsa. This is not good, because i am watching tv in small window and if i want to watch video on web mus i completely close tv application. With this applet i click on it and temporaly mute tv application. Here is a picture of vista volume control http://jkontherun.blogs.com/jkontherun/images/voume_mixer.jpg. I think better will be if audio streams and their control are oriented horizontally.

Edit: here are mockups:
http://picasaweb.google.com/milan.krivda/GnomeMockups/photo#5192542737460341154

http://picasaweb.google.com/milan.krivda/GnomeMockups/photo#5192698657658087858

http://picasaweb.google.com/milan.krivda/GnomeMockups/photo#5193085617031588306
Tags: (none)

687
votes
implemented
Selected solution (#1): Auto-generated solution of idea #7482
Written by swalko the 23 Apr 08 at 19:52.
Ubuntu Brainstorm was updated in January 2009. Since the idea #7482 was submitted before this update, its rationale and solution are not separated. Please vote accordingly, and if you have the necessary rights, please separate the rationale from the solution. Thanks!
0
votes
implemented
Selected solution (#2): pavucontrol applet
Written by tweiers the 13 May 10 at 16:07.
I have just developed a (yet very simple) pavucontrol applet. That applet consists of two files. These are a bonobo server file GNOME_Pavucontrol.server and the actual applet gnome-pavucontrol-applet.py. You will find the corresponding source code below. My applet has successfully been tested on Ubuntu Linux 9.10.

To install the applet:

1. Copy GNOME_Pavucontrol.server to /usr/lib/bonobo/servers.
2. Change the "location" of the actual applet in the above file to whatever location suits you.
3. Copy gnome-pavucontrol-applet.py to exactly that location.
4. Right-click on your GNOME panel and select "Add to panel".
5. Choose "pavucontrol applet" from the list.
6. An applet titled "Sound Preferences" should now become visible on your GNOME panel.

Todo:

Make the applet look more appealing.

Source code of GNOME_Pavucontrol.server:


























Source code of gnome-pavucontrol-applet.py:

#!/usr/bin/env python
import pygtk
import sys
pygtk.require('2.0')

import gtk
import gnomeapplet

import subprocess
import os, signal
import time

p='NULL'

def sample_factory(applet, iid):
button = gtk.Button()
button.set_relief(gtk.RELIEF_NONE)
button.set_label("Sound Preferences")
button.connect("button_press_event", showPreferences, applet)
applet.add(button)
applet.show_all()

return gtk.TRUE

def showPreferences(widget, event, applet):
global p
if event.type == gtk.gdk.BUTTON_PRESS and event.button == 1:
widget.emit_stop_by_name("button_press_event")
p=subprocess.Popen('pavucontrol')

def destroy(self):
global p
if sys.version_info > (2, 6):
p.terminate()
gtk.main_quit()

if len(sys.argv) == 2 and sys.argv[1] == "run-in-window":
main_window = gtk.Window(gtk.WINDOW_TOPLEVEL)
main_window.set_title("Pavucontrol Applet")
main_window.connect("destroy", destroy)
app = gnomeapplet.Applet()
sample_factory(app, None)
app.reparent(main_window)
main_window.show_all()
gtk.main()
sys.exit()

if __name__ == '__main__':
print "Starting factory"
gnomeapplet.bonobo_factory("OAFIID:GNOME_PavucontrolApplet_Factory", gnomeapplet.Applet.__gtype__, "pavucontrol", "0", sample_factory)

Attachments
No attachments.


Duplicates


Comments
edm1 wrote on the 23 Apr 08 at 23:14
I'm sure this will be integrated into ubuntu, just give it time. For now, there are the pulseaudio guis in the repositories. If you install 'padevchooser paman paprefs pavucontrol pavumeter' then add 'padevchooser' to the startup commands you will get lots more functionality out of your pulseaudio server.

mrthefter wrote on the 23 Apr 08 at 23:27
One problem with your idea of implementation is the fact that EVERY single soundstream will get its own slider. This quickly adds up to be unwieldy, as GNOME itself uses many EsounD streams. You can easily see how many streams there are at a given time using the above mentioned utilities.

As it stands, it's much more practical to be using a list based utility in paman, rather than a "simplified" slider system as you suggest.

Vadim P. wrote on the 24 Apr 08 at 04:10
Try installing the pavucontrol package (paste "apt://pavucontrol" in firefox address bar), and then alt+f2 and "pavucontrol". Does that do it?

swalko wrote on the 24 Apr 08 at 06:59
I know and i use all PulseAudio utilities.

to: mrhefter
Read carefully -> I talked about streams named by application. But ok, if you want how many streams? Right now i am listening music and reading news and voila ... TWO streams + - one (pidgin notifications)

I think my system is more practical and faster. If i want to mute some stream quick:

My system:
1 click on applet -> find stream -> 1 click for mute

Your system:
1 click on applet -> find Volume control -> 1 click on volume control -> find stream -> 1 click for mute

About two steps less for our better comfort.

I added new mockup with volume meter added to applet:
http://picasaweb.google.com/milan.krivda/GnomeMockups/photo#5192698657658087858

Vadim P. wrote on the 24 Apr 08 at 18:51
I don't think the last screenshot would work well with the HIG's, because that's too advanced and don't be needed most of the time when you just want to raise/lower the general volume.

Perhaps it could be included in the volume control you get when you right-click and "open volume control".

swalko wrote on the 25 Apr 08 at 07:47
Vadim P.:
You are right, first 2 mockups are too advanced (too much controls). Here is simplified mockup:

http://picasaweb.google.com/milan.krivda/GnomeMockups/photo#5193085617031588306

peterjs wrote on the 25 Apr 08 at 17:47
Why not just put a launcher for pavucontrol on your panel, pretend it's an applet and call it good?

drinkypoo wrote on the 28 Apr 08 at 02:56
I have an alternate proposal. I will not make a mockup because I am lazy. But a panel control which when clicked pops up a vertical volume slider (ala the existing control) and which when right-clicked pops up a menu of labeled, horizontal volume sliders for sinks. But wait, there's more; the sinks could (optionally) be grouped, and each group would have a slider. My first inclination is for this slider to set all sliders grouped under it (perhaps by name) to its volume, but perhaps you want some other behavior. The master, of course, would control the output volume of whichever sink you chose.

The grouping is the key option, the control for opening the group would be the usual right-facing triangle which rotates to down-facing when clicked, and the menu opens. Nested volume controls would be indented, as per usual.

I don't want to have to run pavucontrol every time I want to change a volume, either.

I would have hoped such a thing would come from a pulseaudio dev.

cristiantm wrote on the 28 May 08 at 14:50
I was just looking for this... It's a very nice idea, and I like a lot the last mockup posted, simple ans just what a lot of people would love to have. Great idea.

frandavid100 wrote on the 9 Jun 08 at 09:43
I LOVE your idea. Only detail is, pavucontrol should be launched when double-clicking the applet, and the apps' volume widgets should be further integrated to actually affect the slider in pavucontrol. Something like this:

http://img381.imageshack.us/img381/2557/pantallazowr6.png

I don't think the volume meter is really necessary, by the way.

simo_magic wrote on the 6 Dec 08 at 13:26
i totally agree +1

MarcioVinicius wrote on the 8 Dec 08 at 19:17
I was commenting in a idea now marked as a dupe of this... I won't write here everything I already wrote there, so please take a look on what was discussed there: http://brainstorm.ubuntu.com/idea/15908/

The idea here is great, but there are so many other stuff to work on (concerning sound system) before this idea become able to be fully (and satisfactorily) functional.

Please, take a look there and comment here.

AR- wrote on the 21 Dec 08 at 23:08
Hey! We have started working with this idea. It's in very early developement stage at the moment, but it already has basic features. Project can be found at http://code.google.com/p/gnome-pulse-applet/ .

frandavid100 wrote on the 6 Jan 09 at 13:55
Looking great! Have you plans to include a slider for the general volume, too? That way it could replace the standard volume applet altogether.

Also:

-I think the volume levels should not appear centred on the applet, but rather to the right (or left if there's no place to the right). That's the way menus are usually spanned in gnome.
-The "mute" button should resemble those in the volume manager 16x16px, only show the button frame if you hover the cursor over it.

AR- wrote on the 13 Jan 09 at 22:01
Master volume control will be included to next version. Better applet position and mute button ideas are great. We added them to applet already and they will be in next version.

Next version will be out in the beginning of February if everything goes as planned.

Götz wrote on the 31 May 09 at 00:36
@AR- The idea of your project is great! With icons it is easier to recognize the apps.

I hope someone does an applet/plasmoid for KDE 4 to manage PulseAudio volume :)


Post your comment