From Fedora Project Wiki
Line 69: Line 69:
<!-- The Fedora Release Notes inform end-users about what is new in the release.  Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ -->
<!-- The Fedora Release Notes inform end-users about what is new in the release.  Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ -->
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
* TBD.
* '''FIXME''' TBD.


== Comments and Discussion ==
== Comments and Discussion ==

Revision as of 22:24, 13 July 2009

Feature Name

Volume Control

Summary

Make volume control versatile enough to handle most common uses.

Owner

  • Email: lpoetter@redhat.com, bnocera@redhat.com

Current status

  • Targeted release: Fedora 12
  • Last updated: 2009-06-19
  • Percentage of completion: 50%

The necessary infrastructure for profile switching is available in PulseAudio, and can be tested with pavucontrol. Upstream PA has gained an additional concept of 'ports' and a way to describe the alsa setup in a way that PA can make sense of, see https://tango.0pointer.de/pipermail/pulseaudio-discuss/2009-June/004229.html

Support for fading (ie front/back balance in >2 channel setups) has been committed upstream (see http://bugzilla.gnome.org/show_bug.cgi?id=568936)

The UI for switching profiles is being discussed in bug http://bugzilla.gnome.org/show_bug.cgi?id=572217

Detailed Description

In the run-up to Fedora 11, a number of shortcomings with the Features/VolumeControl feature were identified and lead to some heated discussions. This is a follow-up feature to address these points in Fedora 12. In particular, the following things will be addressed:

  • Profile support. Profiles are PulseAudios way of grouping alsa devices that can be used together in meaningful ways. Typical profiles are 'Output Analog Stereo + Input Analog Stereo' or 'Output Digital Stereo (IEC958)'. Pavucontrol already supports profile selection in F11.
  • Input switching. People need a way to switch between internal microphone, external microphone, line in, etc, as source for recording audio. Since alsa does not offer good support for this, PulseAudio will have to make a best effort at figuring this out itself.
  • Fade control. Similar to the existing balance slider, but for front/back.
  • Volume control problems. In many cases, these problems can be solved by populating the alsa device database with suitable settings.

Benefit to Fedora

Fedora gains a volume control that 'just works' in most cases, which should greatly reduce the need to fall back to raw Alsa controls.

Scope

This feature requires changes to PulseAudio (input switching), gnome-media (UI for profiles, input switching and fading) and alsa (database entries for cards/drivers).

How To Test

To test fade control, you need an audio setup that supports surround sound.

  1. Play some audio, e.g. in rhythmbox
  2. Open the output tab of gnome-volume-control
  3. Check that the fade slider is visible and enabled
  4. Move the fade slider, verify that the sound is changed as indicated by the labels
  5. Check that balance and fade interact as expected
  6. Switch to an audio setup that does not support surround sound (either by using different hardware or by selecting a different profile)
  7. Open the output tab of gnome-volume-control
  8. Check that the fade slider is not enabled

To test profiles: TBD

To test input switching: TBD

User Experience

The changes to the user experience should be small, compared to the Fedora 11 volume control. The Input and Output tabs in gnome-volume-control will gain a way to select profiles and switch input devices, and the Output tab will have a Fade slider below the Balance slider, if the selected output device supports it.

Dependencies

Updates to the alsa database need to land in the alsa packages.

Contingency Plan

The listed parts of this feature can be deployed partially, if some are not completed in time (e.g. allow input switching, but leave out fade control). If profile support is not completed in time, we can just fall back to pavucontrol for that. The additions to the alsa database are incremental in nature.

Documentation

  • FIXME: None yet.

Release Notes

  • FIXME TBD.

Comments and Discussion