Proposal Label Enhancements
|This page is intended to compare existing or theoretical implementations of labelling, and to generate a discussion on future implementation of labels in Audacity, so we can make good design choices.
There are different ways of implementing labels into an audio editing program. This is a comparison of various systems.
Separate Label Track
The current labelling system Audacity uses. Labels are placed on special label tracks and not directly onto an audio track.
- Can use one label track for multiple tracks at a time.
- Can have overlapping labels.
- Does not obscure waveform on audio track.
- Uses extra screen space
- Labels do not move with track edits, and are mainly static.
This system attaches the labels directly to tracks or clips. Many programs, including Adobe's Audition, Apple's GarageBand and Ardour use this general style. The labels can be placed in different regions. Ardour attaches a bar underneath a track that can have labels attached to it, whereas Audition and Garage Band both place the labels directly on top the waveform.
- Uses less screen space
- Labels resize along with clip.
- Track must be cut up into smaller clips to start a new label
- Waveform can be obscured by labels, especially longer ones.
Some possible ways to indicate that tracks are linked:
- Use a special border around the linked tracks, including the label track and the track it is linked to.
- No gap between label track and track it is linked to.
- A 'link' icon like the icon used in the Gimp to show that two image layers are linked.
Some possible ways of enabling/disabling linking:
- Use a menu on the label track to 'link/unlink'.
- Label track is always linked to the track above. Make it the first track to link to nothing.
- Drag the label track slightly so that it docks/undocks from the track above. (downside: not very discoverable).
- Clicking on the link icon toggles the appearance of the link (whole<->broken) and toggles the linking.
Audacity's labelling system could use some improvements. This section contains information about labelling features that have been requested.
Specific working ideas
- Sticky Labels
This addition would marry both the current label track system Audacity uses, with connected labels. As a result, the labels would shift and stretch when changes are made to a track. This design allows the user to pair an audio track with one label track that would dynamically move labels on it. A very early prototype of the pairing process can be seen here.
- Multiple Selection of Labels
Allowing users to select many labels at a time would allow them to apply effects, copy or delete several regions very quickly. Users could control-click to add labels to a selection, or shift-click to select everything from the start of one label to the end of another.
From Feature Requests page
Feature Requests shows the following:
- 20 votes for "Ability to drop vertical marks that are 'glued' to the waveform on the main track (not on a label track). They should move when when track is moved, and also be adjustable and label-able. Should be possible to highlight for cutting, copying or other operations the area between two adjacent marks. This is an extremely useful feature available in Sound Forge and most other editing programs".
- 4 votes for "Ability to import/export cue sheets for CD burning (and/or text file compatible with shntool) to and from labels"
- 4 votes for "Improve Label Tracks so they are more suitable for transcription e.g. so they don't lock when audio track is not zoomed in far enough to create a scroll"
- 2 votes for "When doing an export multiple to break a long track by labels, it would be useful for each WAV file to be an exact number of CDDA frames (similar to using the snap to option). Samples could be carried over (or borrowed) from following section as required. This would be useful when buring CDs to avoid microgaps. The FLAC encode actually has an option to do this."
- 2 votes for "Export Text Labels as XML and/or support SMIL: For using Audacity to analyze interviews or to generate Audio-Picture-Slideshows (e.g. for educational use) it should be possible to export all Text-Labels (with names) as XML. Nodes: "trackname" with Nodes "start, end, label" or using SMIL."
- 1 vote for "Add Next and Previous buttons for navigation between labels to the panel of the Label Track."
- 2 votes for "Ability to select multiple (not necessarily adjacent) labels (such as with control-click or shift-click). Then pressing the play button would play all of the selected areas in the audio file, skipping the non-selected regions. This feature would be useful for comparing two regions of an audio file without delay between the playback of the two (or more) labeled regions. Also there could be commands to select multiple label regions, to invert the selection, or to ignore specified labels. See extra detail here." May be an extension of multiple label selection being discussed as part of the GSoC 20008 Label Track Enhancements project.
Previous Aim to's for 1.4
These were intended for 1.4 but not currently being pursued:
- Add a Preference for "Label typing:" or "Labels:" - "Standard" (CTRL + B only required if label is at same place as an existing label) or "Manual" (CTRL + B always required).
- Prevent Edit > Silence removing a label, it should only silence the referenced audio
- Fix deleting entire area of a Label track between two labels deletes the right-hand label
- Check labels consistently allow entry of z (reported by Julian on Linux and by user on OS X 10.4.10 with released 1.3.3)
- Check typing square brackets in labels bring up a "move the audio cursor to start/end" dialogue rather than inserting as text (reported by Julian on Linux also by by user on OS X 10.4.10 with released 1.3.3, but not apparent to GA on Windows)
- Label text editing: Selecting part of label text by dragging with the mouse doesn't start selection at beginning of drag, but at wherever the text cursor was previously
Other possible enhancements
There is a suggestion for a more consistent method of dragging labels, and further (perhaps lower priority) label "aim-to's" here.