Completed Proposal Improvement of Meter Toolbar UI

From Audacity Wiki
Revision as of 16:40, 26 October 2014 by James (talk | contribs) (Added Martyn's vote. Removed strikeout for a made decision.)
Jump to: navigation, search
Proposal pages help us get from feature requests into actual plans. This page is a proposal to improve the User Interface relating to the Metering and Monitoring functionality in Audacity, the Meter Toolbar.
Proposal pages are used on an ongoing basis by the Audacity development team and are open to edits from visitors to the wiki. They are a good way to get community feedback on a proposal.

  • Note: Proposals for Google Summer of Code projects are significantly different in structure, are submitted via Google's web app and may or may not have a corresponding proposal page.

The Problem

  • There is no visual indicator to show whether monitoring is on or off - I know the meters will bounce when monitoring is on - but not if you have a null or very low signal or if you have equipment with a very low noise floor.
  • It is far from intuitively obvious in the GUI how you turn monitoring on or off. Many new users of Audacity are totally foxed by this. Evidenced by many forum postings on this topic.
  • Many users over-saturate their signal sometimes provoking extended clipping.
  • The default initialized meter width is far too small to be effectively useful and it is not intuitively obvious how to change the size and position.
  • Settings that a user makes in the meter drop down menus are lost on exit from Audacity and not retained for the next Audacity session.

Proposed Feature

  • Visual indicator to show whether monitoring is on or off.
    • Note that this would not be an issue if monitoring was always "on" - see "Previous Feature Requests relating to this proposal" below.
  • Optimum recording level indicator to be provided in the recording meter.
  • Larger initialized default width for the meters
  • An improved graphic display for the meters.
  • Enhance the Meter Preferences by moving items currently in the drop-down menu into the meter Preferences dialog and store those settings in the preferences file.

Developer/QA Backing

  • Peter Sampson:
    • +1 for multi-coloured meters
    • +1 for expanded preferences
    • +1 for monitoring on/off indication in Meter Toolbar (red (mic) and green (playback) icon to indicate signal activity).
    • +1 for dB scale for meters and linear scale for the waveform as the defaults.
    • +1 for breaking up the Meter Toolbar into two independent meters.
  • Bill Wharrie:
    • +1 for expanded preferences
    • +1 for multi-coloured meters
    • +1 for removing RMS display from meters
    • +0.5 for monitoring on/off indication in Meter Toolbar
  • Steve:
    • My preference would be for there to be no "off" state. Just "enabled" or "disabled". When enabled, the meters would be active.
    • +1 for "Larger initialized default width for the meters", particularly if the height could be reduced to half of the current height.
    • +1 for improved graphic display for the meters. I think that a "red zone" would give an indication of dangerously high recording levels.
    • +1 for enhanced Meter Preferences.
    • The "linear" scale may be a more useful default for most users than the dB scale.
  • Martyn Shaw:
    • -1 for Linear scale as the default on meters.
  • James Crook:
    • +1 for expanded preferences
    • +1 for multi-coloured meters
    • +1 for removing RMS display from meters
    • +0 for monitoring on/off indication in Meter Toolbar. (why not just hide the meter?)
    • -1 for using red/green colors as the on/off indication. (prefer black/grey out).
    • +1 for linear scale as the default (even if wave default is dB).
    • +1 for some variant of space-saver meter.
  • Gale:
    • +1 for expanded preferences to include lower dB limit
    • -1 for removing RMS display from meters
    • +1 for removing option to disable meters
    • +1 for option to turn monitoring off, default permanently "on" if possible
    • +1 for red (mic) and green (playback) icon to indicate signal activity *and* for distinguishing which meter is which.
    • +1 for linear scale as default.
    • +1 for breaking up the Meter Toolbar into two independent meters.
    • +1 for some variant of space-saver meter.

Use Cases

  • User reports that they cannot hear any audio playing (many instances on the forum).
  • User reports that they cannot find how to turn monitoring on (many instances on the forum).
  • Until a user knows how to turn monitoring on, it can be hard to ascertain whether Audacity is receiving a signal.
  • User may be tempted to plunge straight into recording rather than monitoring and setting a sensible input signal level in advance.
  • Because the default waveform view is linear (where 50% would be a good recording level) many users needlessly oversaturate their signal believing that the waveform should fill the display area.
  • Users are surpised that their chosen settings for meter display are not retained on next use of Audacity (from postings on the forum).

Further enhancement suggested by James on -quality 21Oct14

Split record meter from play meter

  • Then people who don't use record don't need that meter.
  • People who want them LTR or RTL can drag them to where they want.
  • They also become separately resizable.
  • This is less work than making a resizing partition between them.
    • Peter +1
    • Gale +1 (via email)

Additional enhancements suggested by Leland Lucius on -devel 8Oct14

Leland Lucius implemented the Alternative Metering Display and Enhanced Meter Preferences in October 2014. He gathered together what he believed to be all of the (possible) wants for the meters:

A sizer between the two meters that would let you adjust the meter size (and thus range)

Just above easy. But potentially superseded by James' later suggestion to breakup the Meter Toolbar.

  • Peter: +1 (and I note that Vaughan supported this idea too in a -devel thread)
  • James: +1
  • Gale +1 (but I don't think this should change range - dragging should give more resolution)

Ability to change dB range in the meter preferences dialog

Really easy

  • Gale +1
  • Peter: 0
  • James: -1

Coloration of the meter icons

Really easy.

  • Peter +1 But preferably black for inactive and colored only when active.
  • Gale +1 as Peter says (and shipped themes should not change red for recording or green for playback)
  • Federico Miyara (via email 8Oct14): If there is to be a sizer (good idea!), right-clicking might either go to default or present a list of possibilities (e.g., 0/100 25/75 50/50 75/25 100/0). I've seen this in Total Commander source/target panels). It might even have the possibility of reversing the order, including icons, for those who prefer the extra-Audacity convention input left / output right.
  • James -1 But with theming that might be themes that do color them.

Larger clipping indicator (or some way to make it more prominent on gradient meter)

Easy enough.

  • Gale +1 The clipping indicator is too hard to see with the gradient style.
  • James -1 Though I am open to the clipping indicator being a bitmap rather than a line, and so being customisable

User selectable colors for the meters in the meter preferences dialog

...let the user decide. (or just wait for theming?)

  • James -1 Wait for theming
  • Gale -1 Wait for theming
  • Peter -1 Wait for theming


Monitoring on/off indicator

  • The Microphone icon in the Input meter to be used as a monitoring state indicator:
    • It should remain black/gray while monitoring is off.
    • It should change to red when monitoring is turned on .
  • Similarly the speaker icon in the output should be colour coded to indicate the output metering state:
    • black/gray while inactive,
    • greenwhile active.
  • Tooltip to change when monitoring is active, to say "Recording Level (click to turn monitoring off)". It would help people who are colour-blind (and will help the blind if and when Meter Toolbar is screen-reader accessible). It would also be more accurate in what it says depending on the monitoring state.

Increase the default size of the meters

  • Increase the default size of the meter to a functionally usable state, widened sufficiently that it at least shows a -6 dB marking and preferrably wide enough to show markers for both -9 and -6 dB.
    • Peter 28Oct11: I stretch mine across the whole width of the Audacity Window.
    • Peter 13Aug12: In the manual (and on the forum) we recommend to users that they aim for a maximum peak recording level in the range -9 to -6 dB and with the default meter marked range this is extremely difficult to guage with the default meter sizing. On my screen the -6 db reticule (labelled as such) appears when I stretch the meters to 30% of screen width and the -9dB reticule appears with the meter stretched to 55% of screen width.
  • Default display type for the meters to remain as dB and horizontal display, as now.
  • User settings for the meter size and display to be stored in the user’s Preferences settings and restored on next invocation of Audacity, as now.

Enhanced Meter Preferences

Implemented by Leland Lucius in October 2014.

*Increase the functionality of the Meter Preferences dialog by moving the four items "Horizontal Stereo", "Vertical Stereo", "Linear" and "dB" option selections from the droop-down menu into the meter Preferences dialog.

  • Initial default settings to be "Horizontal Stereo" display and "dB" scale.
  • Selecting "Vertical Stereo" will deselect "Horizontal Stereo" and vice versa, controlled via radio buttons.
  • Selecting "Linear" scale will deselect "dB" scale and vice versa, controlled via radio buttons.
  • The settings that the user makes for these to be stored in the audacity preferences file.

GUI Example

Trimmed drop-down menu for the recording meter:

Meter dropdown menu trimmed.PNG

Meter Preferences dialog with the additional choices (showing default settings):

Meter preferences with radio buttons.PNG

New Meter Preferences dialog as implemented by Leland Lucius in October 2014:


Space-Saver meter

A possible way to get some more space with the meters (proposed by James). Note that the numbers can be considerably clearer than shown in this mock-up with some work.


Alternative Metering Display

Implemented by Leland Lucius in October 2014.

An alternative possibility for an optimum and overload indicator in the meters (thanks to Bill Wharrie for providing this):

New Record Meter.png

Color transitions: green to yellow at -12 dB, yellow to red at -6 dB. The gradations blurring from green to yellow and from yellow to red are the optimal solution, but if it is easier to implement we could have sharp transitions. This would give us simulation that resembles LED meters on many tape-decks.


Both the input meter and the output meter to have the same multi-colored gradations, green/red/yellow as in the graphic, with the color achieved indicating current strength of signal (signal level),

  • advancing along the meter, green in color, with increasing signal strength,
  • changing from green to yellow at -12 dB (25% if linear metering is in use) when the signal is getting towards optimal level,
  • fading to red from -6 dB at the "optimum" recording level (50% if linear metering is in use) and onwards when it is clipping or approaching clipping.

As the proposed playback and recording meters have the same colours for bars and icon, in order to aid differentiation we should retain some distinction with some part of the meter border in red for recording but green for playback.

The input meter will only be active when monitoring is turned "on". The output meter will only be active when output is actually active, i.e. when playback is in operation or the user is recording with software playthrough turned "on".

Current RMS Level

As now, the “Current RMS Level” could be indicated by the color bar being lighter in shade with the signal level that extends from the “Current RMS Level” to the “Current Peak Level” being darker in shade.

Alternatively the “current RMS” level indication could be removed entirely from the meter bars (but remain in the waveform display). This would have the advantage of simplifying the meter displays (and I am sure that not many users understand the “current RMS” display anyway). It would also align better with the metering displays found on most tape and MiniDisc recorders.

Peter: I personally favour the latter option.
Ed 27Oct11: +1 the latter option

Recent Peak Level

“Recent Peak Level” to be indicated by a vertical colored bar but rather than just being a red (for record) or green (for playback) the bar would take the green, yellow or red color attained recently in the meter.

Maximum Peak Level

“Maximum Peak Level” to retain the blue vertical bar, as now.

Clipping indicator

Retain the red Clipping warning line at the far right of the meters if clipping has occurred while metering is active.

This may be thought redundant if the gray/green/red Mic/Speaker icon monitoring state indicator idea is implemented.

Note the graphic example above shows a signal which is currently and actively clipping.

Previous Feature Requests relating to this proposal

  • Greater initialised width: (9 votes) In 1.2 the initialised width took up the whole width of the initialised window (about 580 px); as at May 2011 the initialised width in Audacity Beta is 255 px. This is too narrow for practical use. Users may not realise meters can be resized, especially if docked.
  • Headroom indicators drawn at user-specified n dB below 0 dB FS with fill color change when headroom level exceeded (green below headroom, yellow above, red when clipping. (3 votes)

Taken from the "Highest-rated" section of the Feature Requests page:

  • Preference for monitoring on by default (17 votes)
      We initially didn't do this because of concerns about performance on lower powered machines. We've since had feedback on this that is works fine and that not having monitoring "on" is causing a bigger problem - especially with new users. This however is not such an easy change as it appears - handling the situation when a device is changed/swapped out for example but Audacity is still looking for an input to read - it may not be fixed quickly
    • Until monitoring is "always on", should be a way of indicating if monitoring is on or not, because on a quiet system, noise may be off the meter (7 votes)
        Possible ways of doing so: a different background colour for the meter bars; a dynamic tooltip (maybe not possible with wxWidgets); a button and LED? Note that 1.3.5 lets you choose the display range minimum for the meters.
  • Meter Toolbar:
    • Save all Meter settings in the Meter Preferences: (6 votes) so they will be available on restart of Audacity, namely Horizontal/Vertical, Linear/dB and dB range as well as existing refresh rate.

Extension to this proposal: Graphic indicator of optimum recording level on the waveform display

As stated above in the Problem statement: "Many users over-saturate their signal sometimes provoking extended clipping." The default display of a Linear waveform encourages many users to try to fill the whole of the available 0.0 to plus or minus 1.0 of the gray space leading to an over-saturated (and sometimes clipped) capture. Note that this is less of a problem with the "Waveform (dB)" display mode as the signal fills much more the visually available gray space, however the default view is the linear waveform display and this is the display type that most users will deploy.

As a sensible corollary to the this proposal therefore, it would make sense to include an further optimum recording level on the waveform display.


  • A grey dashed line extending along the available wave form display set at +0.5 and -0.5 for linear waveform displays and set at -6dB for Waveform (dB) display. Could be a lid or dotted gray line if though visually superior.
  • The gray dashed line should be super-imposed on the waveform so that it remains visible once the waveform exceeds the optimum level.
  • This indicator display to be controlled by a Preferences setting (on or off) in the Recording section, or via a dialog accessed via a right-click in the waveform display - default to be "on".
    • Peter 06Sep14: We could consider making the default setting to be "off" as a) this would avoid a regression and b) there are *many* pages in the Manual with the waveform display in some form or another all of which would need updated images.
  • Optionally: the user should be able to set their own "optimal" recording level via a further additional Preferences setting in the Recording section or via a dialog accessed via a right-click in the waveform display - default to be +/-0.5 or -6dB.

GUI example

Linear waveform with optimum recording level indicators.PNG

Previous Feature Requests relating to this proposal extension

The following Feature Requests relate to this proposal extension:

  • Waveform Grid lines:
    • Horizontal: (8 votes)
      • Helps alignment with a specific level on the vertical scale when working at the other end of the track (4 votes)
      • Headroom lines at user-specified dB below and above 0dB FS. (1 votes) Gives compliance with SMPTE and EBU standards calling for specified amount of headroom before full-scale clipping.
      • Vertically draggable, like a ruler, showing the dB level (1 votes)
      • Line at 0.0 visible at all zoom levels so as to splice together without clipping. (1 votes)
          You can use Edit > Find Zero Crossings to snap selection regions to safe zero crossing points without having to zoom in.
    • Horizontal and vertical: (4 votes) turned on and off on the fly, to help with aligning audio and setting levels. Fixed number of vertical lines on the screen - about 30 (or user could chose a number). Zooming should retain the number and pixel distance spacing of the gridlines.