From Fedora Project Wiki
m (1 revision(s))
(first update for new goals)
Line 6: Line 6:


== Owner ==
== Owner ==
* Name: LennartPoettering
* Name: LennartPoettering, BastienNocera


== Current status ==
== Current status ==
* Targeted release:
* Targeted release:
* Last updated: 2007-10-17
* Last updated: 2008-05-29
* Percentage of completion: 0%
* Percentage of completion: 0%


== Detailed Description ==
== Detailed Description ==


With the use of Pulse''''''Audio by default, it makes sense to no longer expose the unintuitive plethora of
With the use of PulseAudio by default, it makes sense to no longer expose the unintuitive plethora of
volume controls and channels that alsa exports, and which is currently reflected 1-1 in the gnome volume
volume controls and channels that alsa exports, and which is currently reflected 1-1 in the gnome volume
control tools (gnome-volume-control and mixer applet). Pulse''''''Audio already ships with a volume
control tools (gnome-volume-control and mixer applet). PulseAudio already ships with a volume
control app, pavucontrol, that is packaged for Fedora (but not installed by default).
control app, pavucontrol, that is packaged for Fedora (but not installed by default).


The changes that we want to implement for volume control in Fedora 9 are:
* Graphical mixers (such as the volume applet, the mixer, and the multimedia keys handler) should be restricted to modifying PulseAudio's default output's mixer.
* Give pavucontrol a face-lift to bring the user interface up to par with the rest of desktop, and replace gnome-volume-control with it
* The control-center's sound setup tools should react to hardware hotplug (Bluetooth headsets/headphones, USB sound cards and webcams with microphones).
* Write a replacement for the mixer applet that directly exposes the PA volume concepts. While there is no detailed design for this yet, here are some key ideas:
* The control-center should also allow basic microphone checking
* Display one slider per active device, with indented additional sliders for active streams on each device
* The control-center should allow tweaking of multi-inputs/outputs policies (play music to all devices, play only to headphones, etc.)
* Maybe we also want a mute button, and some smart snapping for tying stream volume to device volume
* Devices and streams will be identified by icon and name
* Maybe it should be possible to activate an application by clicking on the icon next to its stream
* Advanced features like control of individual channels (left/right or 5-1) or moving of streams between devices will be left to out. They are available through pavucontrol.
 
Bryan Clark collected some inspirational [http://www.gnome.org/~clarkbw/designs/volume%20control/vista/ screenshots] .
 


== Benefit to Fedora ==
== Benefit to Fedora ==
Line 39: Line 32:
== Scope ==
== Scope ==


Requires changes to pavucontrol, possibly also to Pulse''''''Audio itself.
Affected modules are:
Requires a replacement mixer applet to be written.
* kernel (ALSA) which should trim the number of user visible hardware channels
* PulseAudio to allow supporting features in the front-ends
* gst-plugins-pulse should support setting application specific volumes
* gnome-volume-control will need application audio tracks support
* gnome-settings-daemon and gnome-applets might need changes to force the use of PulseAudio
 
== Test Plan and User Experience ==


== Test Plan ==
TODO update


* Verify that pavucontrol is in the default install instead of gnome-volume-control, and the mixer applet on the panel is the new one.
* Verify that pavucontrol is in the default install instead of gnome-volume-control, and the mixer applet on the panel is the new one.
Line 50: Line 49:
* Verify that volume settings are remembered across logouts and reboots
* Verify that volume settings are remembered across logouts and reboots


== User Experience ==


== Dependencies ==
== Dependencies ==
Only some PulseAudio changes are needed to get the work started. Some policy decisions will be harder to


== Contingency Plan ==
== Contingency Plan ==


Stay with gnome-volume-control and the old mixer applet. No changes, no improvements.
Front-end changes would be backed out.


== Documentation ==
== Documentation ==
Line 64: Line 64:
== Comments ==
== Comments ==


* How does this relate to non-ALSA mixers such as the HW volume controls on thinkpads? - BillNottingham
* There are already patches to make the thinkpad mixer a normal ALSA mixer. And Takashi intends to merge the Thinkpad mixer track directly into the normal sound card mixer, i.e. a mixer with two Master mixer tracks of which one is controlled via the thinkpad hw controls in addition to sw. Then, we would just use the thinkpad mixer for our volume control and set the master and PCM tracks of the soundchip to 0 db. And everything is fine! - LennartPoettering
* I have created workaround for GNOME to run pavucontrol instead of gnome-volume-control. Requires renaming g-v-c executable by adding ".real" suffix. It is gnome-wm script based. [http://wklej.org/id/36af88379f The script]  and [http://www.wklej.org/id/9dc55ee2d5 the schema]  to add to g-v-c.schemas. - JakubRusinek


----
----
[[Category:ProposedFeature]]
[[Category:ProposedFeature]]

Revision as of 16:08, 29 May 2008

Volume Control

Summary

Owner

  • Name: LennartPoettering, BastienNocera

Current status

  • Targeted release:
  • Last updated: 2008-05-29
  • Percentage of completion: 0%

Detailed Description

With the use of PulseAudio by default, it makes sense to no longer expose the unintuitive plethora of volume controls and channels that alsa exports, and which is currently reflected 1-1 in the gnome volume control tools (gnome-volume-control and mixer applet). PulseAudio already ships with a volume control app, pavucontrol, that is packaged for Fedora (but not installed by default).

  • Graphical mixers (such as the volume applet, the mixer, and the multimedia keys handler) should be restricted to modifying PulseAudio's default output's mixer.
  • The control-center's sound setup tools should react to hardware hotplug (Bluetooth headsets/headphones, USB sound cards and webcams with microphones).
  • The control-center should also allow basic microphone checking
  • The control-center should allow tweaking of multi-inputs/outputs policies (play music to all devices, play only to headphones, etc.)

Benefit to Fedora

The multimedia experience of Fedora users is improved by an easily understandable and much more flexible volume control model.

Scope

Affected modules are:

  • kernel (ALSA) which should trim the number of user visible hardware channels
  • PulseAudio to allow supporting features in the front-ends
  • gst-plugins-pulse should support setting application specific volumes
  • gnome-volume-control will need application audio tracks support
  • gnome-settings-daemon and gnome-applets might need changes to force the use of PulseAudio

Test Plan and User Experience

TODO update

  • Verify that pavucontrol is in the default install instead of gnome-volume-control, and the mixer applet on the panel is the new one.
  • Verify that pavucontrol and the new mixer applet allow to control the volume of streams and devices; also make sure that feedback works correctly (ie changing the volume in the mixer applet should be reflected in a concurrently running pavucontrol, and vice versa)
  • Verify that volume settings are remembered across logouts and reboots


Dependencies

Only some PulseAudio changes are needed to get the work started. Some policy decisions will be harder to

Contingency Plan

Front-end changes would be backed out.

Documentation

Release Notes

Comments