Difference between revisions of "Use Cases"

From Audacity Wiki
Jump to: navigation, search
(Azimuth Setter: link)
(remove link to Talk:More Feature Requests - please add any details not covered on this page)
Line 88: Line 88:
If my coding skills weren't 25 years out of date I'd probably give it a go.
If my coding skills weren't 25 years out of date I'd probably give it a go.
For more details see [[Talk:More Feature Requests]]
==Other features==
==Other features==

Revision as of 16:16, 26 October 2007

Ideas extracted from the Feature Requests page.


A lot of wildlife enthusiasts utilise this software for recording and editing animal sounds (e.g. birds, bats) who generally work from the spectrum rather than the waveform. The following would extend the sound analysis capabilities of the software and make the spectrum feature easier to use:

  • Threshold settings to remove the displayed background noise - i.e. only sound over a certain amplitude is displayed
  • Time marks displayed along x-axis, more frequency marks along y-axis
  • User defined spectrum colours
  • Settings saved upon exit (e.g. fit vertically, spectrum, threshold)

Education (General)

  • Ability to use X-Windows sound. This is particularly important in Canada, where schools often use 'thin clients'. That is the classroom has computers which are little more than screen, keyboard, mouse. Disk drives, memory and processor are on a central blade server. This is more cost effective and easier to administer, but does require that Audacity use X-Windows sound.
  • Methods for hiding advanced / optional features so as to make the interface less confusing. Each school may have a different definition of what is standard and what is advanced.
  • Method for easily resetting options to some default saved value. For example to return the system to a a sampling rate and number of channels which works. Pupil may be allowed to tamper with the settings, but we want to be able to get back to known good ones easily.


  • Vowel target practice screen based on code from CLAM project.
  • Other kinds of voice analysis, using Vamp plug ins. E.g for the two kinds of 's' sound in the Polish language.
  • Programmed playback, e.g. using script.
  • Elaborations to label track so that can search audio lessons via text more easily.

The ideal is to create a small eco-system of programs around Audacity that help with language learning. Some code could run on PDAs and mobile phones (Java) with the lessons being prepared on Audacity.

Looping and Dictation Aids

These will let someone work through a dictation, adjusting and advancing the looping region during playback, sentence by sentence or verse by verse. (At least 2 people want all of these.)

  • When the user hits right-bracket, set the end of looping region to the current position and go back to beginning immediately. (Currently need to stop and restart looping play for it to take effect.)
  • When the user hits left-bracket, set the beginning of the looping play to the current play position immediately. (Currently need to stop and restart looping play for it to take effect.)
  • When the user hits shift-right-bracket, set the end of the looping region to the end of the track immediately. (New key, new feature.)
  • When the user hits shift-left-bracket, set the beginning of the looping region to the existing end of the looping region and move the play head to this new location. Also set the end of the looping region to the end of the track. (New key, new feature.)

Note: A patch has been submitted to devel-list which seeks to implement these four requested features

"Books on tape", field recordings, etc.

This is a collection of features that will facilitate converting recordings made "live" or on physical tapes into digital form. My specific use-case is my attempt to turn foreign language instructional cassettes into MP3 files, but it should be equally useful in many other cases. (BTW, I've tried diving into the source code to implement these myself, but quickly got lost. Any assistance in getting started would be appreciated.)

  • Recordings such as these frequently feature a lot of meta-data that is spoken by the presenter, things like "Unit 3" or the title of the next segment, which I want to capture as labels. While either recording or playing a project, you need "hot keys" that instantly create labels according to a template. The template should allow the inclusion of auto-incrementing numbers. Currently, I have to quickly press a sequence like [Ctrl-M], "u", "3" and [Enter], and then post-process the .aup file to expand the labels. If several events occur in rapid succession, this is especially hard to do accurately. Finally, it would be nice if the label were inserted a bit before the time of the key-press, to allow for reaction times.
  • Use '<' and '> to adjust the tempo of a recording during playback. The 'Change Tempo" effect does this, but I do not want to permanently change my recording.
  • Have a key that, during play-back, jumps backwards one or two seconds. Especially when scanning speech, this would reduce the time required to label everything.
  • Even with compensation for reaction times, it is unlikely that a label will be exactly where you'd want it to be. I'd like to be able do two things to help with this. First, use the mouse to sweep a region and then have Audacity adjust the selection boundaries, for instance to move the selection's start point forward until it's a fixed time prior to the end of silence. (Ideally, this would use a new type of Nyquist extension.) Second, given a selection that covers exactly one label, adjust that label so that it matches the selection.
  • Finally, I'd like to see label-based navigation of tracks, things like "scroll to the {first,next,previous,last} label". Note: you can already click in a label then tab and SHIFT - tab back and forth between them. Thanks for the info, I didn't realize you could do that.

Taken together, these features would allow someone to perform a mostly-unattended capture of a conference presentation or a jam session, play it back at high-speed while marking points of interest, and easily revisit those points to adjust the labels.


  • Create labels in real time from external source during recording: It would be nice to be able to create labels immediately during the recording process, using either remote calls or listening on a socket. I currently fake this with a little python script that logs the intended labels and (hopefully) the correct time-since-start into an external file, then "Import Labels". It would be nice if there were some way to do this directly, since Audacity always has the correct "current" time-in-recording.

We use this for pulling in GPS-sourced time, scene change hints, and some other stuff. "waterfall"/"voiceprint" spectrum display option (instead of, or above/below waveform display)

Recording from cassettes

Azimuth Setter

Azimuth refers to the angle between the tape head(s) and the tape medium. Sometimes tape azimuth is easy enough to set, sometimes not. Having to set it for every tape is a chore though.

Azimuth setter would display the azimuth setting on screen in real time, showing ideal setting in the middle and showing actual setting.

Azimuth setter would:

  1. look at the delay between the 2 channels, which contain a lot of mono content (slightly delayed when azimuth is out of line)
  2. graphically display the azimuth setting
  3. update display in real time, enabling easy ideal setting by user.

This would:

  • speed up the job
  • reduce errors
  • improve accuracy and thus bandwidth & signal to noise ratio
  • If it ran during recording, it would show when azimuth changed, enabling the user to readjust to the new perfect setting during recording.
  • It would also show all users the azimuth issue in a simple clear non-technical way, and result in better recordings by end users.

How might the code work?

This is just a thought, and maybe there are better options I dont know about. I'm not a computer programmer.

The idea is to take a brief sample and look for mono content, repeating with assorted time delays between the 2 channels.

One time shift will give the greatest mono content, and the amount of timeshift then gives you the degree and sign of azimuth error.

A little intelligence can presumably be applied to home in on the right delay figure while minimising the number of delay settings tried.

Note the display scale should be flippable (left to right). The computer has no way to know which way round the scale should be presented to make adjustment easy and intuitive.

If my coding skills weren't 25 years out of date I'd probably give it a go.

Other features

Other features mentioned on Feature Requests which may be useful in their own right are also useful to cassette recording, in particular 8 bit recording and SmartEQ (which tries to equalise the audio according to a known frequency spectrum).