Feature Requests


 * Quick Links:
 * Requested features already in released versions, or available in builds from SVN HEAD
 * Pending Feature Requests - Potential Feature Requests that are yet to be triaged and possibly added here.
 * Features We Can't Implement - Smartphones and mobile devices cannot be supported, and a few audio file formats and the ASIO protocol are proprietary, so cannot be distributed in an open source program like Audacity.
 * Requests relating to specific use cases - for example we have grouped together requests relating to wildlife recording, language learning and theatre
 * Other articles about Feature Planning - learn about some of our other longer term plans and how they might be brought to fruition

Highest-rated

 * Allow real-time effects
 * Real-time effect preview sufficient as a first step
 * Should include applying effects whenever playing or recording/monitoring
 * Allow disabling real-time for a selected track as in REAPER.
 * Stomp box/guitar effects: - one of the most useful features of Diamond Cut 7.
 * could allow effect intensity/LADSPA plug-in parameters to be varied too?
 * Panning while recording
 * include something similar to the envelope tool to adjust the effect parameters?


 * Synchronize recorded/played back tracks automatically without Time Shift tool or Preferences adjustment, for example using MTC/SMPTE with Audacity either as Master or Slave


 * Allow direct MIDI editing/playback and incorporate midi sequencer
 * It doesn't make a lot of sense to add support for MIDI files if Audacity can't also be used as a sequencer. Obviously this would take some time, but if sufficiently developed would make Audacity competitive even with ProTools and Sonar!
 * If MIDI tracks are eventually supported, it would be neat to include a piano roll and notation window in the future.


 * Multi-channel playback
 * mix down to Dolby 5.1, 7.1, 10.2, 64.4 etc. or standard old-fashioned electroacoustic 4 and 8 channel circular arrays)
 * Should include a patch panel to define routing of multi-channel audio to specific channels of a multi-channel device.


 * Playback to multiple devices simultaneously


 * Detect BPM manually by tapping as in web applications

  Quantize to a grid like Sonar: This corrects timing errors in MIDI or audio where you record slightly before or after the beat or hold some notes shorter or longer than intended.
 * BPM and beat timecode automatic detection and beat matching
 * Let the Timeline display the detected time signature and bars
 * "Punch-in and punch-out" recording: - one of
 * Not further specified or "destructive":  - a quick destructive punch that changes the existing audio data in the track, usually overwriting a section of it, but can also refer to inserting a new recording after the cursor rather than replacing any of the existing recording.
 * Non-destructive punch: some idea like Audition punch in that allows you to store multiple punch-in takes, or ProTools Non-Destructive Record.
 * When overdubbing, the command for this should start playback before punch-in point


 * Scrubbing: - one of:
 * Basic functionality: Drag playback position left/right while playing (no effect until drop), or just click to skip to new position. Common in audio players, for example Foobar. Allows to judge the end of (long) selections without having to play repeatedly. it would be nice to see it implemented how sony soundforge has it implemented with Keyboard Shortcuts to Toggle Timeline Scrub Mode JKL shuttle.
 * Audio reproduction while dragging/playing: Drag cursor back and forth across a particular point and hear the audio as a function of the direction and speed of the cursor. Allows to zero in on the beginning of a plosive syllable or other distinctive sound as an edit point. Precisely analogous to rocking the tape back and forth on the playback head of a recorder. Could also have a preset speed using Fast Forward/Rewind buttons.


 * Panning envelope editing (this is a really basic thing that is sorely needed in the current version


 * Import/Export AAC/MP4 files using open source FAAC library. This would support AAC multichannel and AAC+ (low bitrate streaming-optimised variety of AAC)


 * Bind particular parameters of effects to buttons or keyboard shortcuts: e.g. one for amplify + 3 dB, another -3 dB, another to Compress with -6 dB threshold
 * Effects for which this has been requested: Amplify; Change Speed; Fade In/Out; Generate Tone; Insert Silence; Noise Removal; Normalize; Repair; DC removal ; Chris' Compressor


 * Markers on Waveform Add with one keystroke a vertical mark that stays on the waveform and can be labeled. Common in audio editors. Should be draggable but attached to the audio segment. Select between any two markers easily e.g. with double click. Snap a region to the markers. Should be implemented in addition to split lines. Very necessary for long-form documentary editing, where you are identifying and then going back and handling many different selections from a long file. Also important if recordings are edited afterwards by others.

 Timestamp metadata is essential for working on projects of longer duration (interviews, news gathering, live recording, podcasts, etc). There are dozens of digital recorders that support BWF timestamp metadata. Leaving such features out of Audacity effectively excludes a large potential audience from using Audacity. As a workaround, I have just written a python program that reads the WAV file in BWF format produced by the M-Audio Microtrack recorder, and generates a text file that can be imported as a label track into Audacity via Tracks > Edit Labels.(The hardest part was to search for the information on WAV chunk formats.Guenterrote 21:53, 9 March 2010 (CST) Also for recording directly with Audacity this feature would be helpful. In the Librivox wiki they recommend to click (with tongue or so) after each error so you can find back easily these "auditive markers" while editing. This idea is very handy, but clumsy. Better would be that you could press a key which then sets a marker on the soundtrack. </ul></ul>
 * '''Timestamp metadata
 * CART metadata as used by radio stations There are several thousand users of Audacity who would find it convenient to have all the labeling of tracks done at the production stage rather then the 2 stages required now
 * BWF: Support reading/exporting embedded timestamp information in Broadcast WAV files (BWF)
 * One reason Audacity fails to support important metadata is that it does not support export of an AES-31 compliant Audio Decision List (ADL)</ul></ul>

<div id="Effects_Categorisation"> </ul> Must support VST plug-ins Must include VST plug-ins in system folders </ul>  Manipulate effects with a dialog box that has all plug-ins on the left hand side, an empty box on the right hand side, with "New Group...", "Delete Group", "Rename Group", "OK", "Cancel" buttons below, and arrows ">>" and "<<" in the middle, to move plug-ins between groups.  Group by plug-in format (VST/LADSPA/LV2/Nyquist/AU)  Multiple columns for different groups of effects  </ul></ul> </ul>
 * Effects Categorization: Allow the effects drop-down menu capable of sub-folders or categorisation so that the user can organize his plug-ins however he wishes.
 * Include "Favorites" folder at the top for frequently used plug-ins (either autogenerated and sorted by number of calls, or user-added)
 * Only two levels deep: (Effects > Category), not 3 levels as tried before (Effects > Category > Sub Category). Sub categories are just too fiddly and too much clicking. With just one level of categories, the menu will open by hovering the mouse, making locating a specific effect much quicker and easier.
 * Preference to turn categorisation off
 * Fully user-customisable categories and sorting of entries
 * Ability to assign one effect to multiple categories: such as a saturation compressor to both Compressor and Distortion categories.
 * Detect/display subfolders of the Plug-Ins folder as categories: So if you have a folder called /Plug-Ins/MyEffects/ the menu shows Effects > MyEffects > (effects in the MyEffects folder).

  Adjustable start-time </ul>
 * Sound Activated Recording (SAR)
 * Pre- and post-roll duration:  define a duration to be recorded before the threshold-level sound occurs, and similarly a duration to be recorded after the input falls back below the threshold. Requires buffering of the recording for pre-roll, but is expected behaviour for this type of tool.
 * Post-roll (say 4 seconds) on its own would allow realistic recording of dialogue - it may be sufficient or easier to implement
 * Segment each recording event
 * with labels - labels could contain either the length of preceding pause, or date and time when recording started/resumed
 * with clip lines
 * Report system clock times for each recording event (other than in labels):
 * Display on Timeline (for example, empty space)
 * in Show Log
 * in exported text file via button in Recording preferences (data only retained per session)
 * Ignore silent periods option with configurable interval. (Use cases: archiving tapes in their entirety complete with inter-track gaps; starting a recording on sound detection then recording until manually stopped irrespective of level)

<li>Show SAR status in Status Bar <li>Show SAR level on VU Meters <li> Add more detailed comments here</ul></ul>


 * Import/play video for synchronised soundtrack editing  No need for Audacity to edit the video. Alternatively, Audacity could send/receive SMPTE or MTC timecode data e.g. to VLC or mplayer.
 * Standalone SMPTE reader useful in own right e.g. for reading time track on an analog tape deck.


 * Fast-forward/Fast-reverse to Next or Previous Silence, Edit or marked Point. It would be nice if tab cycled through all clips/regions in all tracks (if no track is selected), starting from the current cursor position. Or, if a track is selected, tab just cycles through the regions/clips just in that track. Same for shift-tab.


 * Import/Export AC3 files

<ul><ul> <li> gives superior quality to using stereo mix to do this, see Virtual Audio Cable <li>allow recording from multiple USB devices at same time  e.g. an interview with two USB mics, DJ with two USB turntables <li> Allow multiple input devices with broad definitions that would each be added to device toolbar and each individually defined. One could be from a PCI card's input mic port, another from that same card's output speaker port, and another from a USB card's input mic port. Thus eliminating the need to rely on expensive professional multichannel hardware / drivers or stereo mix drivers. </ul></ul>
 * Record from multiple sound devices at once
 * enables recording from multi-channel cards that present themselves as multiple stereo devices rather than one multi-channel device
 * allow per-track choice of recording device, thus allowing to set the sampling rate, depth and number of channels for a track before recording
 * choose whether to select track for recording or not


 * CD Rip and Burn


 * Preference for monitoring on by default

<ul><ul><li>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 </li></ul> </ul>


 * Extreme Stretch effect - see Extreme Stretch Effect


 * Control Audacity by a foot pedal  attached to the game, serial or USB port so that hands are free for transcription work.  Also useful for non-transcription applications, such as recording off a commercial two-way radio with a squelch output signal.


 * More Context Menu (right-click or CTRL-click) functionality
 * Right-click over selection region - ideas:
 * Cut; copy; paste; delete; Undo
 * Apply effects: Workflow and reduced mousing benefits
 * Zoom in/out on selection (horizontally)
 * Select all; Select in all tracks
 * Silence
 * Set start/end of selection: like Goldwave
 * Split off a selection of a clip
 * Duplicate a selection of a clip
 * Send to new track: or to a labelled position in an existing track.
 * Set Envelope Points: creates start and end points on the envelope automatically.
 * Right-click over waveform - ideas, some for features that don't yet exist yet (from Proposal Woozle's Interface Tweaks):
 * Delete track
 * Insert track below/above current
 * Mute individual clips (new feature)
 * Time-lock individual clips (Tracks Preferences can globally prevent clips moving with edits)
 * Duplicate an entire clip
 * Delete clip
 * Insert a split point at the cursor
 * Edit start time, offset and length of a clip (new feature)
 * Zoom in/out vertically
 * Turn envelope view on/off (preferably per clip, which is a new feature)

<ul><ul><li>If you do it with pure tones, that is still great!</li></ul></ul>
 * Import audio from video files/transport streams: such as AVI/MPEG/Ogg Theora e.g. by demuxing
 * Extracting Vorbis from multiplexed Ogg files should be an easy changeover. Also note new specifications on file names (e.g., <tt>.ogv</tt> for Ogg Video, <tt>.oga</tt> for Ogg Vorbis)
 * Note recognition: WAV or MP3 to MIDI capabilities


 * Allow direct import of MIDI files into Projects as sampled audio waveforms, which are then editable and exportable as WAV, MP3 etc.


 * Real time plot when playing audio: Or, in view of the CPU demands of calculating the spectrum, have Audacity do plot spectrum at given time intervals.


 * Import/Export AMR (Adaptive Multi-Rate) found e.g. on Nokia/SonyEricsson/Blackberry/iPhone Mobile Phones' Voice Memo or Playing features (supported in FFmpeg)

Segmenting Tracks

 * Automatic segmentation during Record: Automatically segments the audio being recorded into another track upon meeting the user defined settings for  "silence" length, threshold level and number of track to be split.

<ul></ul>
 * Beat Finder Improvements:
 * See "BPM Detection" in Highest-rated
 * Search for periodicities, let user refine and add time measures, then redo with probability/interpolation bases on added information. Use the corrected beats and a dynamics analysis to detect musical structures like verse, refrain. See Beat Finder Improvements for details.
 * Create regions encompassing each beat by inputting a BPM (maybe include auto-dedection of the BPM), see image. The region can then be moved, duplicated etc. as normal to create loops or re-mixes easily.

<ul> <ul><li> Skip export of selected labels <li>Button to export to current project location  </ul></ul>
 * Export Multiple:
 * (version 2.x) Checkbox in dialogue to pass metadata through to all exported files automatically: if identical tags wanted for all files, saves having to (remember to) File > Open Metadata Editor to add tags before export.
 * Allow (numerical) prefix/suffix when labelling by name, not instead of it:
 * File name prefix should have leading zeros for operating systems which don't have natural number sort (otherwise track 10 comes before track 2 etc).
 * Choice of minimum number of digits for numbering
 * Store last used state of "Include audio before first label" as for "Name files" buttons
 * Checkbox "Do not render leading white space as silence" as per straight export
 * Ability to include leading white space (not necessarily a check box option)
 * Checkbox "Do not export audio before zero" as per straight export: If unechecked, exports audio before zero and includes any trailing white space before zero as silence.
 * Checkbox "Normalize on export" Use case is for e.g. live concert destined for individual files
 * Enumerate files in single progress dialogue to say "exporting 1 of 5", "2 of 5...", not string of "exporting entire Project" dialogues. Still needed, even though 2.x now gives the name of the file currently being exported
 * Support "Use Custom Mix"
 * Remaining time for entire process, not (just) for each file
 * "Overwrite existing files" off by default:
 * but remembers previous state
 * "Success" dialogue should not have same title as main Export Multiple dialogue Use case is this makes it possible to script actions based on the unique window title (and it "could" be argued as bad design to have two identically titled dialogues).

<ul> <ul><li> Moving a label draws original and current edge(s) in waveform without having to select the label <li> Right-click functionality: <ul> <li> Delete label <li> Add label </ul> <li> Moving a label moves the audio: <li>More distinction between region and point labels when zoomed out: so that Export Multiple does not produce a few milliseconds of audio if you accidentally drag a point label when zoomed in.</ul>
 * Labels:
 * Multi-Label-Select: Ability to select multiple (not necessarily adjacent) labels (such as with control-click or shift-click)
 * Should work on point labels, too, thereby selecting regions between labels.
 * Also there could be commands to select multiple label regions or to ignore specified labels. See extra detail here.
 * Play Labels Only: Play clipped in or labelled regions only - standard feature on professional audio editing systems. skipping the non-selected regions. This feature would be useful for comparing two regions of an audio file without delay between their playback.
 * Change font size/colour for selected text in labels
 * Multiple select must work in Edit Labels too
 * Invert labels: Replace current labels with new labels that start from the end of the previous label to the start of the next label. If two of the original labels touch (but don't overlap), they will be replaced with a point label at the point where they meet.
 * Snap labels to:
 * Other labels
 * Cursor
 * Clips
 * Timeline when Snap-to enabled
 * Selection boundary
 * Mark-in and mark-out points: As per video editors, "I" sets Edit In Point and "O" sets Edit Out Point. Should use zero-crossing accuracy. Doesn't matter what you do between those two actions; once you press "O", everything between "I" and "O" is selected.
 * Easy way to select a region between labels

<ul><li> Labels include metadata - not a request for cue sheet support, instead this gives a way in compilation albums to pass other than track Title and Track Number to Metadata Editor <li> Improve navigation to/from arbitrary labels: <ul><li>When the label track has focus, TAB or SHIFT + TAB should always navigate to the nearest label (from the current cursor point in the direction specified), not do this only if a label is open and otherwise go forwards from the first label or backwards from the last label. <li> Selecting the label in Label Editor should move to the label  </ul></ul> <ul>  </ul> <ul><li> Import label by simply drag-and-drop label file </ul></ul>

<ul></ul> <ul><ul><li>Expand-to-silence: expand selection command expands the selection leftwards and rightwards until silence between songs or beginning/end of track is found  </ul></ul> <ul> </ul> <ul><ul><li>Expand-to-non-silence: Double-click any point in a "silence" to automatically select the complete silence - useful for voice editing. </ul></ul> <ul></ul> <ul><ul><li> Minimum distance between labels  similar to Nero Wave Editor it can be very handy when handling large amount of spoken audio</ul> <ul><li> Count the number of silences produced to cross-check with number of tracks on an LP or cassette </ul> <ul><li> Unified Silence Finder and Sound Finder: Discussed many times before but never resolved. See http://forum.audacityteam.org/viewtopic.php?p=212445#p212445. <ul><li> Parameters must be saved so that it launches in last used Sound or Silence mode   </ul></ul></ul>
 * Silence Finder:
 * Split on silences automatically: Detected silences between songs or album tracks parsed into new track, or adds a label there.
 * Use an online database to do this


 * Sound Finder:
 * Provide message (or debug output) of number of labels produced:.
 * New control for required number of output labels: e.g. the number of songs in the track. Then Sound Finder auto-adjusts its settings to get as close to those number of labels as possible.

<ul><ul><li>Allow multiple clips to be dragged onto a different track, not just single clips. <li>Allow selection of clips by double-clicking whilst still in Time Shift Tool <li>Allow overlapping clips as in CoolEdit, but give overlap a different colour <li> Lock-beyond: Set a lock point beyond which tracks cannot be dragged. Could be set in current direction of travel or by right-click menu. Use Case: Set maximum length in a project with many overlapping tracks where you may not be able to see the end (bottom) of the project. <li> An individual track locking capability to prevent inadvertent time shifting or changes to previously edited tracks <li> Allow shifting by less than distance between samples <li> Allow shifting while audio playing as in Cool Edit Pro <li> Operable by right mouse button, rather than having to switch to Time Shift tool. <li> (2.x) Using with CTRL moves that specific clip plus all clips to the right. Useful for inserting or a section. </ul></ul><ul></ul>
 * Time Shift Tool
 * Move Cursor Too! Cursor within the track being moved should move with the track, not stay at same time point. Additionally, if this cursor extended over other visible tracks, it would make it much easier to line up one track with the others. <ul></ul>

<div id="cue_sheets">
 * Export cue sheets from labels e.g. for CD burning (and/or text file compatible with shntool)
 * MP3 cue sheets for example compatible with MP3Cue


 * Import cue sheets to labels e.g. to add internet database information to files.

<div id="lrc_files">
 * Export lrc files from label track to be able to create song lyric files from inside audacity.


 * Split to multiple projects: Split the project into smaller multiple projects by labels, similar to the "Export Multiple" command. Each project retains the per-track labels of the original single project.
 * Save selection as new project:

Plot Spectrum

 * User-defined minimum dB level, but not via meter/waveform dB preference: This is too inflexible, and non-obvious to the user. Also given the (generally better) normalization compared to 1.2, this leaves you with an empty plot when looking at low level audio, e.g white noise at -75 dB is not visible with Preferences set at -96 dB. Set a default minimum that can never leave user with an empty plot, but let user move the minimum if they wish.
 * Text box input for lowest visible level


 * Option to turn off dB auto-scaling: so that user can save their own maximum and minimum by text box in Plot Spectrum, a preference or sliders. Use case is easy comparison of different plots.


 * Zoomable/pannable sliders
 * Absolute minimum dB could still be set by Meter/Waveform dB Preference, but use slider to set minimum within that.


 * Select any area on the grid and release mouse to zoom in on it


 * Normalization presets Understandable default called e.g. "music" that gives a result like 1.2 plot, so that a section with most samples close to 0 dB peaks near to 0 dB in the spectrum, not at -20 dB


 * User-defined frequency bands: CoolEdit/Audition allow this. Use case: the most relevant region for music is 20 to 8000 Hz. Could be done by:
 * Zoomable/pannable frequency axis
 * Text box for frequency cutoff point For example the user could type in 1000 to see the frequency range of the spectrum from 0 to 1000 Hz. That parallels with the choice in Spectrograms  preferences.
 * Export spectrum graph as an image


 * Exported plot file should have metadata: giving current plot window settings and a timestamp.
 * Should also include path to project file


 * Manage plot files: import or edit the files within Plot Spectrum window.


 * Overwrite or append choice for exported plot file:


 * Exported file should identify each peak and cursor position


 * Export maximum peak amplitude for each FFT bin rather than the average peak amplitude: This means that the result will be identical whatever length of absolute silence is included in the selection. This might make a momentary frequency too loud everywhere else if you EQ'd against a such a plot, but if the average and maximum peaks were very different, this could usefully indicate possible faults in the recording.


 * Remember window height/width across sessions


 * More distinctive cursor line bolder, different colour to grid lines or partly transparent


 * Alternative plot from cursor point: like CoolEdit, without having to select a region. Audacity could internally select the region length/position.


 * Multiple spectra window: Plot multiple spectra for different tracks/regions in the same project e.g. Audition has four buttons to hold spectra. Currently different spectra must be in different projects. Multiple plots in different colors in the same window would aid comparing spectra.


 * Plot cepstrum, energy, etc. offline: Plot cepstrum and other indicators at given time intervals.


 * Linear option for vertical dB scale: Use cases:
 * Demonstrating primary resonances of different instruments to elementary physics of music students without room noise and other musically insignificant peaks becoming over-prominent
 * Shows power in peaks as directly proportional to height.


 * Cents qualifier for pitch-class/octave . For example 443 Hz displays as A4+12, meaning "12 cents sharp of A4 in equal temperament (A4 = 440 Hz)".

Other analytical/statistical ability

 * Export text file containing amplitude data for each sample like Wavosaur

<ul><ul> <li>Import text file containing amplitude data for each sample <li> RMS data wanted not just peak values <li> Allow selection by seconds as well as samples </ul></ul>

<ul></ul>
 * Track sample data: headroom to dBFS (audio level), peak minimum and maximum sample, RMS volume, replay gain etc. see SF, Wavelab, Cool Edit etc. over an arbitrary length of audio, even the whole file.
 * This could go in Status Bar


 * Find Clicks producing labels like "Find Clipping", possibly using sine-wave-curve-fit prediction algorithm and labelling where waveform diverges from prediction.


 * Suggested Volume Analysis Capabilities:
 * Volume Spectrum analysis tool: Stepped volume envelope with histograms of volume against channel, and gain against volume steps.


 * Pitch Accuracy Analysis: add votes below.


 * Vectorscope:  as the example at https://www.youtube.com/watch?v=ZG_Vu32c0ZA, showing X-Y plot for two signals (left and right of stereo track).


 * Oscilloscope: showing audio signal(s) converted to voltages over time.


 * Spectrograms including Pitch (EAC):
 * Visual Tool editing of frequency or pitch: - examples here.
 * Erase Tool to remove pieces of spectrum:  e.g. removing harmonics or 'mouth noise' from vocals; brief noises at different pitch). See Spectral layers
 * Photoshop-like brush tool which would apply a chosen effect to an area of the spectrum which you paint it in.  The brush might operate like a dodge/burn tool, making the volume quieter/louder in that frequency, or maybe you would apply a wah-wah just to the low frequency by drawing only in the low area
 * Free shape selection tool
 * Pen tool
 * Pattern-matched brush tool: this would be a brush which attempts to match the area you are painting to pre-selected pattern before it applied the desired effect.
 * Magic wand: to click on a color which selects all other pieces of that color
 * Invert selection: so that you can select a frequency, invert the selection, delete the selection then be left only with the originally selected frequency.
 * Crosshair as in Plot Spectrum which enables on-screen measurement of the frequency and dB level. Length of audio should be the minimum interval possible taking the settings of the Fourier transform used in each track, namely the FFT size, window and overlap.
 * Export to image file (including PNG)
 * Export to image slideshow or video file
 * Fully customize background color and spectrum colors not just grayscale or not
 * Export to three-column text file (energy/time/frequency)
 * Exchange X (horizontal) and Y (vertical) axis:
 * Per-track spectrogram settings: When exploring the spectrogram, it would be convenient if it were possible to adjust by track the 'FFT Window' and 'Display' settings, which are now set through 'Preferences >Spectrograms'.
 * Vary FFT window overlap: Allow varying the overlap when generating the spectrogram.
 * Scale should have shorter horizontal line for non-integer k values
 * Show horizontal grid lines tied to the frequency scale for both Spectrogram views
 * Thinner lines for non-integer k values

Command line support

 * Control Audacity from command line

Improvements to the "Chains" (batch processing) feature

 * Include features dependent on selecting regions (e.g. trim, fades)
 * Export format parameters like bit rate, as in the Options button in the file export window. Parameters for chained and non-chain exports should be stored separately.
 * Export sample rate This is important for MP3 and other compressed formats because if a file imported for batch processing switches the project rate to something not supported by the export format, the batch comes to a halt at the resample dialogue. Alternatively have a preference to OK the resample dialogue automatically at the offered setting. This would not however alter the project rate, which is a separate suggested command
 * Export directory
 * Export FFmpeg formats
 * Export Other uncompressed
 * Export AIFF
 * Export Labels
 * Recursive selection of all files in one or more directories:
 * Support Generate / Analyze effects both those built into Audacity and user-added ones in any other formats supported by Chains
 * Support Silence Finder
 * VAMP support
 * VST support
 * LADSPA support
 *  Apply Chains to files listed in LOF not mix the content into one file
 * Command to delete the old replaced file
 * Specify metadata using chain command
 * Split Stereo Track:
 * Include Export Multiple with options into Chain commands
 * Apply chains to multiple projects instead of giving error messages
 * Permit minimising Audacity while Chain in progress:
 * Example parameters: EX 1: (Reduce 4 dB at 2000 Hz with Q shelve 8 dB per Octave). EX 2: De-esser fx ( threshold= -24  above 3800 Hz )
 * Make parameters configurable for:
 * SaveHqMaster1 & 2
 * Beep after a full Chain completes
 * but no beep for individual dialogues in a Chain) See http://forum.audacityteam.org/viewtopic.php?p=213546#p213546.
 * Ability to recover Chains applied to files if they crash
 * Wider Apply Chain dialog so you can see file names with long paths
 * Apply Chain dialog should be interactive: so you can scroll the list vertically or horizontally

Fader Automation

 * Adjust the Mixer Board or Track Control Panel gain sliders while playing then record the slider moves so you can render them if desired. . Common feature on many other multi-track audio programs. In this way one can build up a mix, adjusting individual tracks and tweaking levels until just right. This would first require changing to linear envelope points. Could be extended to panning (if we had a pan envelope).

Better transcription support

 * Extend features/interface of Transcription Toolbar..

<ul><ul><li> separate small editing window <li>Search for keywords within labels </ul></ul>
 * Label Tracks more suitable for transcription:
 * so they don't lock when audio track is not zoomed in far enough to create a scroll <ul></ul>

New Effects

 * Vinyl-specific noise removal effects such as low level rapid tickiness, groove rasping... (like GramoFile or other specialist tools )


 * Noise gate (not noise removal, just a simple binary gate)


 * Built-in Expander (which is often coupled with a noise gate)
 * Compressor could include expander function
 * Presets such as for dbx/HighCom


 * DirectX effects not just VST

<ul><li>Pitch correction after setting to required key (like Auto-Tune), including T-Pain forced pitch effect </ul>

<div id="pitch_accuracy"> <ul><li>Pitch accuracy analysis: Could be a Nyquist effect that shows the average pitch with cents deviation of labeled notes, or average pitch then on a further run adds a waveform representation of the labeled audio showing pitch deviation over time. See: http://forum.audacityteam.org/viewtopic.php?f=42&t=73796. <ul><li>Better as another View Mode accessed from Track Control Panel instead: </ul></ul>


 * Distortion: A "tube overdrive" type distortion would probably be useful for a wide range of material (including vocals and guitar). Example choices could include:
 * Tube Overdrive
 * Fuzz
 * Tube distortion
 * Walkie-Talkie
 * Crunch
 * Harmonic distortion (adds partials to the sound)
 * Inharmonic distortion (adds frequencies that are not a integer product of the fundamental frequency)
 * Hard clipping
 * Soft clipping
 * Cross-over distortion
 * Tape saturation
 * "Modelled" distortion types - those that emulate specific distortion effects such as modelling a specific brand/model of speaker, microphone, amplifier or effect unit.


 * Room Panning: Pan different tracks to different parts of a room for surround sound effect.


 * Stereo widener


 * Stereo effect from mono

<ul><ul><li>use FFT? </ul></ul>
 * Smoothen effect, perhaps using a weighted average (or a better method)
 * I wonder about a tool to easy removing of noise could be useful in the program. Like the rubber tool in f.ex. photoshop.  The rubber tool should flatten the noise when you touch the noise. It would then be possible to remove noise with less zooming.  And maybe it could be useful to have the possibility to set the pencil to (f.ex. with SHIFT ) only go complete horizontally.

<ul> <ul><li> Advanced formant tools: Professional pitch change/tune while retaining the formants, so retaining the characteristics of the original voice <li>Advanced filtering/analysis tools like Praat </ul></ul>
 * Specialised Voice effects:
 * Basic: Change gender, Change age, Chipmunks, Zeus


 * Dolby B/Dolby C filters for converting to/from tape recordings in Dolby)
 * <I> Will need quite a lot of trial and error by ear, as the Dolby process is recording level dependent. Needs expander and treble cut.</I>
 * <I> I agree. It would be tricky to get it right without straight-up copying the actual process.  This would be a licensing no-no.  Trust me, I work at Dolby.</I>
 * <I>There is a Winamp plugin which simulates Dolby decoding here. </I>


 * Exciter to enhance album or tape recordings. It is actually an easy effect and only needs a high pass and distortion. This is widespread use in recording studios and radio stations.


 * Deverb/Echo Cancellation: Echo Removal Tool/Deverb slider. This could improve back-of-the-room recordings. Sliders are "Liveness," "Room Size," "Room Oblongedness," and "Dirt" (same as sliders in an Echo Generator). <ul><ul><li>Can't both deverb and echo cancellation be implemented by convolving the signal with a modified version of the room's impulse response?</ul></ul><ul><ul><li>No, those operations can't be performed by convolution, this is the case where deconvolution (aka inverse convolution) has to be used (well, not always).</ul></ul>


 * De-essing


 * Re-essing:  This is to improve the sound of already low bandwidth voice recordings by adding higher frequencies.


 * Multiply two frequencies multiply waveforms together as in AM radio


 * Convolve two audio signals
 * Yes, I realize that there is a lot of difficulty involved in avoiding clipping. Audio convolution can be used to make very convincing reverb effects. Please don't set limits for the length of the convolution signal. I want to be allowed to convolve much longer "regular audio" signals together.
 * Convolution is built into the Nyquist language and is an incredibly powerful feature. If I understand correctly, one could take a simple click, perform any combination of filter/chorus/echo/reverb/equalization/etc. on it, and then apply this pre-calculated set of effects to a long signal. Why wasn't this added long ago, along with multiplying and adding signals? Implementing convolution
 * Combine this with EQ Matching proposal?


 * Chorus:
 * Only needs rate and depth controls
 * Multi-voice Chorus


 * Repeat with Delay: Current Repeat effect gives a very dry result compared to creating and playing a loop in software sequencers or drum machines. Some delay could be added after the end of the region to be repeated, then the start of each repeat has this delay mixed in.


 * Chop with segments of silence:
 * Merely adding in a definable length of silence after a set amount of time from the original stream. This would produce a cutting in and out effect, much more abrupt than a tremolo. It would need only two or three parameters, length of silence and length of audio.
 * Suppress quiet signals. A squelch level suppression to squelch out signals below a adjustable preset level.  (originally this was in the recording enhancements section - but it's better as an effect.).
 * EQ Matching:  SmartEQ function to sample the frequency spectrum of a given piece of audio with a pleasing equalisation, then bring a second piece of audio to the same spectral content. Useful for most cassette recordings and other other medium- and low-fidelity sources. Also usable for sfx. Note: where frequency content falls to the noise floor, this may increase noise level heavily in an attempt to compensate. This is easily addressed afterwards with the Noise Removal, or can be addressed during frequency correction with more coding. Possibly could be incorporated as a third radio button in the current 1.3.x equaliser, with a "Get Frequency Profile" button and ability to add useful profiles as a custom preset.
 * Envelope follower: Dynamically modulate the volume of one track to match the volume of another. Select a waveform, extract its volume changes over time then apply these to another waveform making its envelope behave in exactly the same way.
 * VCO-Synth: Something like a combination of Voltage-Controlled Oscillator and the "Sample and Hold" modules of the old ARP 2600 Synthesizer [analog].
 * You could sample another waveform (in another track) at regular time intervals, and the instantaneous level of the sample determines the frequency of a tone generated for the same interval of time. In the real-world Arp 2600, you could patch the output of a VCO (or other audio source) into the input of the S&H module, then patch the S&H output into the control voltage input jack of another VCO. In the Audacity version, the user makes a selection in the track to be sampled (analogous to the first VCO), and then (in a dialog box) selects the time interval between samples, the minimum and maximum frequency to be generated. The duration of the resulting sequence of tones to be generated in a new track would be the same as the duration of the original selection. Optional - select sine, sawtooth, square, or triangle waveforms for the generated tone. Another option would be to be able to sub-divide the length of the selection into X number of sample intervals, as opposed to specifying the duration of the interval. Typical results would be a sequence of discrete pseudo-random (frequency) tones at regular intervals, like a retro movie sound effect for a computer that's busy thinking. Another example: Sampling a triangle waveform whose period is much longer than the sample interval would result in a series of ascending and descending stepped tones.
 * Reduce Formant / Boost the fundamental frequency of a signal - replace a vocal or instrument signal with the sine wave or square wave of the fundamental frequency of that signal. Would help identify notes through overly distorted or overlayered signals. forum post
 * Transfer Function Effect in time domain: Drawn with mouse, with presets and import/export.

Other Improvements to Effects
<ul><ul><li>Plug-ins can have different number of input and output tracks: for example surround encoder in the plugin.org package needs four inputs but produces two outputs. <li> Preview effects for whole duration of a selection with option to loop the preview </ul> <ul><li>Compare original (dry) with new (wet): <ul><li>Dry and Wet Preview buttons <li> Visual comparison <li> Loop dry and wet in succession </ul> <li> Curve Editor for each effect to adjust how ferociously the effect changes the sample by time (posted on behalf of nitrotrigger on IRC) <li> Recallable presets <ul><li>Or as a minimum, all effects should remember settings on exit <li> Should apply to effects under the divider too especially GVerb where built-in presets are unsuitable for direct application to track </ul>
 * General (Effect menu items):
 * Effects stay open after processing . User-added plug-ins (at least, Nyquist) should have this capability too. Use cases:
 * Multiple pass effects such as Noise Removal
 * Facilitates repeating an effect on different selections but using different settings for each
 * An alternative would be a "Re-show last effect" shortcut as per GIMP
 * Useful if an effect is able to change the selection while open
 * Useful if plug-in has displayable help files like some Nyquist plug-ins

<li>On-Demand effects: Effects apply while you continue to work (hear them applied in one part of the track by clicking there) <li> Defaults: <ul><li>"Defaults" button <li>Marker on sliders to indicate default value </ul> <li> Effects manager: for all formats. Browse for, add and remove plug-ins from menus, see which require restart/rescan to be visible, add and remove directories where Audacity scans for plug-in types, possibly choose location of plug-ins directory </ul> <ul><li> Better, built-in reverb above the divider This guarantees a shipped reverb on Linux. The current GVerb has many issues. The built-in reverb should offer: <ul><li>more features <li>more algorithms especially impulse response convolution reverb <li>Very strong opinions to consider Freeverb3 as the "best" benchmark/starting point for reverb types and features (but don't include the whole suite as is) <li>sensible presets that do not depend on mixing with a duplicate to sound decent <li>Wet/Dry mix control <li>stereo output. </ul> </ul></ul>


 * Amplify:
 * Linear "New Peak Amplitude" input: less confusing because it matches with default waveform (and the generate effects)
 * Toggle non-destructive clipping when in 32-bit float quality
 * Option to launch at last used amplification level: even if the New Peak Amplitude is different each time. Use case is trying/undoing different amplification amounts to get the one you want, and you want to see quickly what you last tried (or do it again if you think that will give you the desired result.
 * Presets in dropdown menu:
 * Default to last used maximum dB level: Currently it defaults to 0 dB whereas Normalize defaults to last used maximum.


 * Bass and Treble:
 * Reinstate Bass Boost effect or add Frequency control to Bass and Treble:

<ul><ul><li>Change Speed: length of selection control like Change Tempo <li>Change Speed: semitone pitch change control <li>Change Tempo: allow calculation of % change from less than whole BPM values. At slower tempi a non-integer change in BPM could mean a percentage change of two or three percent. Please notify info_AT_giovannierata_DOT_it if fixed... <ul><li> This also allows this field to be used for any freeform units such as frames per second </ul> <li> Change Speed/Tempo presets <ul><li> Change Speed presets to/from 16 RPM </ul> <li> Dynamic Transient sharpening in Change Tempo/Pitch as in Sliding Timescale/Pitch Shift (without sliding of course) <li> Option to use higher quality sbsms algorithm from Sliding Timescale/Pitch Shift (or amalgamate the tools so all that can be done in Change Tempo/Pitch can be done in Timescale)
 * Change Speed/Tempo/Pitch:
 * Gradually increasing/decreasing tempo changes (without pitch change) to facilitate DJ-style mixing
 * Controllable by a change factor (e.g. 0.5x means half as fast, 2x means twice as fast) so that users are not confused by -50% doubling the length/halving the frequency, while you need +100% to halve the length / double the frequency
 * Allow changes in tempo/speed to be applied on the fly from the current (and ongoing) playback position. Currently changes in speed forces reverting to the start of cursor.  <ul></ul>

<li> Window size choice in Change Pitch to combat FFT artefacts </ul></ul>


 * Click Removal:
 * Detection for clicks that are of similar level to surrounding audio or generally more reliable detection . Click Removal gives hints for other solutions, but one tool should do the job in most cases, as with other software.
 * Intelligent joining to boundaries like Repair so that doesn't potentially add artefacts by almost silencing the samples it replaces so leaving abrupt joins with the unchanged audio


 * Compressor:
 * "Lookahead" by a certain number of milliseconds and pre-emptively apply the compression.
 * Envelope-based tool that just works by dragging as in Digital Performer
 * Choose normalize level after compression
 * Process stereo pairs together:

<ul> <ul><ul><li> Automatic 78 RPM EQ from RIAA-recorded 78's: Inverts the curve to negate the RIAA EQ then applies the required 78 RPM EQ in one button press. More 78 RPM presets facilitate this (votes as above) </ul> <li> De-emphasis for early CDs: using the WaveEmph or other curves (see   http://www.hydrogenaudio.org/forums/index.php?showtopic=65067 ) <li> Improve accuracy: <ul><li> Text input <ul><li> like Cool Edit's right-click on control point then type the values <li> Edit box like Label Editor that would list all the points and allow normal editing functions like copy and paste </ul> <li> Text entry box when double-clicking on Graphic EQ sliders as elsewhere <li> Cursor readout <li> Zoomable grids </ul> <li>Simpler/more presettable Graphic EQ: Either an alternative interface with current EQ, or an additional built-in effect. 5 - 7 bands would be adequate/quicker for our many casual users. Greater range of general purpose presets needed such as "heavy bass boost", "light treble reduction", "equal loudness".... These should be separated from other e.g. gramophone presets. <li> Graphic EQ sliders should allow choice of bandwidth <li> Separate built-in Parametric EQ i.e. where all parameters controlling the tone change have their own control. <ul><li>high pass, low pass and 3 or more bands </ul> <li> Add built-in envelope so that amount of EQ (% of gain specified in parameters) can be varied over time <li> Mini-waveform (time against amplitude) in which you can click to preview - see Wavepad <li> Incorporate mini-spectrum plot ideally it should change when you modify the EQ curve <li> User-saved presets should save filter length and Draw/Graphic mode e.g. a curve with low frequency control points will require maximum length to be reasonably accurate but this length will slow down processing of other curves un-necessarily. <li> Smart Normalize before EQ to safe level for the requested curve <li> Remember window size and position <li> FFT Filter seems to be missing in 1.3.3 (and in 1.3.5) </ul> </ul>
 * Equalization:
 * Reinstate 78 RPM EQ curves from Audacity 1.2:

<ul><li> Fade In/Fade Out: <ul><li> New controls for choosing the start and end amplitude gain - quick linear fade, much simpler and quicker than the Envelope Tool (and VI-accessible)

<ul><ul><ul><li>Should be from % of original amplitude to another % of original amplitude <li> Additional Choice of fade to a target dB, not by an amount </ul> </ul> <ul><ul><li>Choices for dB or linear units, and/or linear or logarithmic shape </ul></ul> <ul><li> Should include multiple envelope points <li> Fade out according to freqency spectrum: fade bass more slowly like professional fader hardware to provide smooth fade and maintain depth right to the end </ul> </ul></ul>


 * Generate:


 * Provide way to default selection format to other than seconds. Either store the format in .cfg or let it default to the current Selection Toolbar format
 * "last used" is better
 * "same as Selection Toolbar format" is better
 * Possibly generation at a region should always default to hh:mm:ss + samples, but still allow different choice to be saved in Preferences
 * List notes for tone generation: e.g.middle C (264 Hz) etc.
 * More tone choices e.g. triangle
 * More non-tone choices e.g. handclaps
 * (2.x) Text box input as in 1.2, because much simpler to overtype irrespective of the format, and allows copy and paste
 * Choice of overtones to include: (within the limitations of the waveform chosen).


 * Noise Removal:
 * Save Noise Profile for re-use in another session such as the previous method in Audacity 2.x where enabling CleanSpeech mode loaded a saved noise profile).
 * Import/export noise profile as text file
 * Profile graphs showing an FFT of the noise profile at capture and graphs before and after removal step
 * Reset to Defaults
 * Modeless window: like Analyze > Contrast that lets you modify the selection with the window open. Clicking "Get Noise Profile" could then grab the profile but leave the window open while you select the audio to be noise-removed.
 * Presets (including user-addable) such as "light hiss", "60Hz hum"
 * Leave Only Noise option as in Adobe Audition. When user performs this on a duplicated track which is then inverted and mixed with the original, it allows noise to be removed by pure cancel-by-inversion.
 * Implement as a plug-in DX or VST, so people could use it in other applications. To filter noise out of mic input in real time, for example
 * Better noise removal without fiddling with sliders:

<ul> <ul><li>Normalize should be merged with Amplify </ul></ul>
 * Normalization:
 * Percentages: Would it be possible to have a percentage normalisation option (as an alternative to decibels)? Many people have problems with decibels.
 * Replay Gain or RMS: The current peak value normalization is far from what human ears perceive. If hard to implement, we can normalize to RMS (light blue in waveform) values instead
 * Or use EBU Loudness Recommendation R128
 * Smarter Normalize when isolated peaks much higher than others:
 * Ignore isolated peaks: An adjustable percentage of the highest peaks are ignored for purposes of calculation, simply being left at the original level
 * Sacrifice quality in isolated peaks: Create histogram of levels that lets user choose normalisation dB or percentage and a percentage (or per thousand/million/billion) of peaks allowed to exceed the normalisation level
 * Option to calculate track gains together to avoid changing stereo balance: When multiple stereo tracks are selected, only the highest peak level of ALL tracks should be considered to adjust each track by the same amount so that the volume of each track relative to each other will stay the same.


 * Nyquist Plug-ins:
 * Preview Button:
 * Bundle as one large zip file:
 * Tabbed Interface: Could allow a simple interface on one tab and an advanced on the other, or help on the other tab
 * Remember settings post-session:


 * Nyquist Prompt:
 * Parenthesis matching: Highlight matching open/close brackets when one or the other is selected.


 * Make Nyquist workbench an installable feature without having to compile Audacity from HEAD as now.
 * Add syntax highlighting
 * "Insert Plug-in Header" command

<ul></ul>
 * Repair:
 * Vastly increased length of track to be worked on:


 * Repeat:
 * Checkbox for "do not create split lines": visually very distracting when fitting project to window.
 * Add Delay so as to merge each repeat smoothly


 * Sliding Time Scale/Pitch Shift:
 * Percentage control for pitch so that conversions into semitone changes are avoided
 * Envelope GUI


 * Truncate Silence:
 * New option to truncate only leading and trailing silence

<ul> <ul><li> Option to place original audio in one channel and ouput in the other: -  solves main problem of recording karaoke - when to sing according to the original timings </li></ul></ul>
 * Vocal Remover:
 * Removal of other than center-panned content, and isolation of content
 * Stereo output


 * VST Plug-ins:
 * Option for rescan on each launch plus "once-only" checkbox to restart on OK'ing Preferences
 * Rescan without restart

<ul></ul>
 * Install VST Effects dialog: Sort Name and Path separately
 * Put the name of the effect first in the menu or omit manufacturer

Installation/first run, deployment and uninstallation

 * (Windows) Choose English language:


 * (Windows) MSI installer for multiple installation on networked computers


 * (Windows) User-customisable location for Start Menu shortcut


 * (Windows) Support Windows 7 Jump Lists
 * At least allow Audacity to support Jump List Extender


 * Complete uninstallation including removal of Audacity settings and temp folder


 * All-users settings, not per-user: This frees new users in a multi-user environment such as a college or audio lab from having to configure paths or features that have to be chosen on first use, such as language (in 1.2), LAME or FFmpeg (in Audacity 2.x).


 * "Plug-ins" and "Modules" folders in Audacity's data folder (where audacity.cfg is). On Linux this means root access is no longer needed to modify these folders, and custom plug-ins aren't lost when updating from a package manager. OTOH "Plug-ins" and "Modules" would be hidden. This would be a drawback for Windows users which might outweigh the benefit of per-user plug-ins and modules.
 * Let user choose folder location could be done via an   AUDACITY_PATH environment variable for all platforms, or via an "Effects Manager" (doesn't matter then if folder is hidden), or via Preferences.

Improved Resource or Project Management

 * Priority:
 * Set overall Audacity priority: Raising Audacity priority can reduce risk of recording skips. Reducing might make it easier to work in other programs while exporting or running long effects. Could be a Preference but better to set on the fly with a button, its value stored in audacity.cfg and used on launch. Otherwise you need hacks such as computer's Task Manager to change priority after launch, or a shortcut to do so at launch using some external software.
 * Per-thread or per task priority: Useful when Audacity projects and processes are separable and threadsafe.
 * Progress bar for waveform drawing: When I do a control-f (zoom to fit in window) in audacity on a 2 hour recording it takes a while before the waveform is displayed. Some busy indicator, maybe even progress bar might help. Same for moving around in a file, which can take time. (even on striped disks) This also affects re-drawing of the waveform after applying pretty much any Effect.


 * Disk use limit for recording
 * Option to Disable


 * Disk space check before exporting: - including indication of expected size of export, and choice to export partial file or cancel if insufficient space available. Would stop user exporting WAV files over the 2/4 GB limit, MP3s in excess of ringtone limits etc.


 * Capability Hints in GUI: Search and recognize existing hardware capabilities. Specifically, note limits on quality achievable due to RAM configuration, DAC bit counts, soundboard specifics such as dB gain at recording levels (41, 44, 96), and other software installed on the machine (iTunes, other popular players / organizers). Then customize recommendations by what is doable on that machine, but still allow anyone to get extreme if they wish.
 * Detection of operating system with warning if Audacity version inappropriate: Suggestion made primarily due to problems with Mac users having the wrong version of Audacity 1.2 for their architecture then the correct LAME binary is not recognised, though most of this particular problem will disappear when 2.0 comes out as a universal binary. Maybe useful when 2.0 is mainstream and does not support OS X 10.3?

<ul><li> Undo History: <ul><li> Compress undo buffers <ul><li> (You can already clear the Undo buffers by opening the Undo History dialog box, and compressing will take lots of CPU and have little space gain unless you use a lossy compressor, which kind of defeats the point of undo...)</ul> <li>Make Undo history viewable (but not actionable) after close project: just so you can see what those actions were. Can be done by: <ul><li> Export undo history or complete commands history as a .txt file or <li> Store Undo history in the AUP file:  then you could look at the items (grayed out) in View > History. <ul><li> Combine with feature to periodically save multiple timestamped AUP files as a backup </ul></ul> <li>Make Undo active across sessions: Useful when projects are shared between users and you may want to undo the last thing(s) that someone else did. This saves the much larger space requirements as now of saving multiple backup projects at different stages of project progress. </ul> <ul><li>Autosave history, so it can be restored after a crash: </ul>

<ul><li> More detailed/organised: <ul><li> includes EQ Parameters applied <li> includes which tracks items were applied to </ul> <li> Add mute/solo state to history  </ul></ul>


 * Project manager utility: Could include:
 * Safe renaming/moving/deleting of projects
 * Choose multiple projects to export from/import into at one go (including export multiple ability from each project)
 * "Project Jukebox" to play selected projects in sequence


 * Ability to open an AUP file by dragging in - it should just open a new project window

<ul><ul> <li>Each track as one file This is how commercial multitrack apps like Logic, Cubase, Pro Tools etc usually handles multitrack audio. <li> Keep .aup file and _data folder together in one folder. <li> Compatible with version control software (e.g. unchanged tracks or chunks always appear the same in binary form) --Skorpion 11:04, 11 March 2010 (CST) </ul></ul>
 * Smaller-sized and/or more unified project storage:
 * Single file, compressed audio (lossy or not) Uncompressed data not essential for sending to others if they are not editing it. The dual concept of the _data folder and .aup file is confusing and too interdependent.
 * Option to zip project on save: Reduces size losslessly and minimises recipient confusion
 * Must be a lossless option, single file more important than compression

<ul> </ul>
 * Project integrity:
 * Make copy-in default: Only this will completely avoid danger of user deleting dependent files.
 * Store copy of .aup or autosave file as a backup Could be a vital recovery feature if a crash or error on saving causes the file to be corrupted or destroyed.
 * Incremental version check on audio file data (a la Volume Shadow Copy) because as of now, it seems to save anything it can and wants
 * Provide official MD5 and/or SHA1 sum
 * Save timeline/track position metadata in each .au file to allow recovery if .aup file missing or damaged


 * Better multithreading/multi-processing support: to use full potential of Dual-Core/multi-processor machines when exporting/editing the audio. Use Lisp process delegation for multi-core processing and (harder) multi-threaded operation. (Think: divide and conquer, process pools that operate on portions of the waveform and joining the result, and you will arrive at a solution)


 * Better thread separation to allow safe execution of simultaneous tasks to improve workflow. It should be possible on a modern machine to do things like simultaneously record in separate projects; record in one project while editing or exporting from another etc.


 * Additions to project _data file:
 * Window sizes and x/y positions:


 * Take advantage of unused GPU cycles: Graphics processing units have the processing power to run 3D image but Audacity doesn't use hi-res 3D. This unused power could potentially be harnessed to speed up audio processing.
 * Use Nvidia's freeware CUDA parallel computing engine


 * Improvements to audacity.cfg:
 * Export and Import
 * Immediate application of changes like modifying xml files:


 * 64-bit version of Audacity for faster processing and addressing more than 4 GB RAM
 * Documentation more integrated with GUI:
 * Links/buttons go to relevant help in the Manual
 * Tooltips for extra help
 * Right-click context menu with list of all Wiki/docs entries

New Import/Export Formats

 * Import/Export:
 * Speex. Codec similar to Ogg Vorbis but optimized for voice.
 * Ogg Opus: - replaces Speex
 * OMF multi-track to/from ProTools /Cakewalk, etc.
 * Aud-X (mp3 5.1) files
 * MBWF (new multichannel extension for Broadcast WAV format)
 * MPC files (Windows)
 * DSS
 * OFR files: (OptimFROG files, a lossless audio format that's smaller than FLAC).
 * DSD 1-bit Pulse Density Modulation (PDM) audio e.g. used in top-end portable recorders or for storage on SACD's.
 * RCA-VOC G.729a compression codec for RCA Digital Voice Recorders
 * BIN sound files.
 * WV WavPack
 * iLBC as defined in RFC 3951. Free/Open Source. One of the codecs used by Google Talk, Yahoo! Messenger etc. Often wrapped in CAF container
 * QuickTime files on Windows/Mac  <ul></ul>


 * Ability to extract and import Vorbis portion of Ogg files encoded with non-audio tracks, such as Theora. Currently gives an error "unknown format", straightforward modifications should do the trick.

Other Import/Exports
<ul></ul>
 * Quick Export: the essential feature is that the Export button saves the file - no dialogues, questions, or clicks after that. Paths/file names/formats are configured beforehand, probably in Preferences (these could include to use the path/filename the original file comes from, or a fixed location)
 * This feature is especially useful if combined with the request below for a timestamp included in the filename, especially for wildlife recording where you want to make frequent short recordings without having to divert too much time or attention from the actual subject.
 * Edgar I put code on the forum which stores the Import directory and uses that to seed the Export dialog: forum topic


 * Read/write embedded cue points in WAV files like CoolEdit
 * and let them contain information from Audacity labels
 * and have them act as snap points (e.g. marking bar or beat boundaries on rhythm samples)
 * Read/write embedded loop points in WAV files like Wavosaur.
 * Export File window:
 * New checkbox “Export at current Play-at-speed". by Penguin on 19 July 2008
 * (2.x) Options too undiscoverable/hard to remember/fiddly to access Ideas:
 * Dynamic text shows current settings for those formats with options
 * Tooltip
 * Fly-out dialogue when you select the format
 * Go back to individual items in File menu
 * Timestamp button to add a string for current system date/time in the file name
 * Templated Command Line Export: Add variables to the Command Line Export Options that reference the contents of the various Metadata fields. These would be similar to the %f variable for Filename already available, allowing totally automated export of files to programs that support writing Metadata to files/understand the variables being passed.


 * Cross-platform project files - somebody on Mac got burned by being given Audacity Project files from a PC. Audacity doesn't warn you that you should export WAV instead and there’s nothing in the instructions.
 * Command line presets in an .ini or .xml file rather than retype over for different formats.
 * Command line pipes: For example [sox -t wav - -r 44100 -t wav - polyphase | lame -V6 --vbr-new - "%f"]
 * VBR as Default: Export MP3 should use by default variable bitrate to efficiently allow best quality, probably also with a low-pass filter enabled. It appears to me the available bitranges are still too narrow in the current (1.3.4) version. Please see
 * Set sample rate for export in export options:
 * Set bit rate for export options for all formats:


 * Invalid sample rate dialogue: Add checkbox "Apply this rate to any remaining conflicts" (checkbox state is stored in .cfg) and/or add checkbox linked to Warnings Preferences "Don't warn again and always use highest rate".


 * Easier file selection:
 * Allow multiple import from different directories by specifying in a list box


 * Automatic snap-to CDDA boundaries when exporting multiple with labels: Avoids small gaps when burning CDs, saves changing selection format and turning snap-to on manually. The FLAC encode actually has an option to do this.


 * Import/Export of envelope points: as XML file


 * Label Export
 * Include name of label track in the file fields so this displays in the label name upon import
 * Include project name in exported file name: for example: projectname_labels.txt
 * XML/SMIL Label Export for using Audacity to analyze interviews or to generate Audio-Picture-Slideshows e.g. for educational use). Nodes: "trackname" with Nodes "start, end, label" or using SMIL.
 * ODF Label Export with the timecode of each label in an ODF document. <ul></ul>


 * Import/Export playlist file like M3U/PLS. Playlist is 'converted' to a track with separate clips, each clip being loaded from the specified file
 * Hierarchical Projects Importing a project into another project: Could highly facilitate the development of big projects, because one can maintain the different parts separated


 * Metadata tags:
 * Separate tags for each imported file not have Metadata Editor take the tags from the last imported file
 * Track Number tag should have two fields "n" of "nn" (for example, 3 of 12)
 * Support lyrics and album art in metadata tags where the format supports this so these are not simply lost when you import and export the file
 * Support ID3v1: . Some MP3 players and specialised software or hardware require it e.g. BWF WidgetPro and some hard disc recorders can only identify MP3 timecode in ID3V1.
 * CR/LF in metadata: a way to enter Carriage Returns/Line feeds into the 'Comments Tag' field in the Metadata Editor. Audacity now truncates pasted text at the first CR/LF but more advanced tag editors support multi-line comments. Could be handled by a single-line edit box with "expansion" button. The single-line edit box displays the multi-line data without breaks; clicking the "expansion" button opens a new dialog with a multiline editor.
 * Connect to MySQL metadata database: so can select a song from the database and "push a button" to fill in the data for a recording in Audacity.
 * "Composer" should be a pre-defined tag

<ul><li> Import RAW data: <ul><li> Save and load Presets <li> Remove hardcoding to 100000 Hz  as per bug 192 <li>Parse file names or extensions:  for example "audio_16b_44100Hz_6c" or similar pre-fills the dialogue</ul> <ul><li>Link or button to open Import Raw from Error importing dialog when error suggests using raw import <li>Option to disable format guessing and use last used setting saved in audacity.cfg <li>Retain format guessing but remember sample rate across sessions </ul></ul>


 * Import/Export Project to Advanced Authoring Format (AAF): Or use AFF instead of .aup. Makes Audacity projects compatible with many other audio (and video) editing programs. AAF supersedes OMF. See AAF on Wikipedia and AAF framework on SF.
 * Easier Lame: Rewrite the Lame selection panel so non-techies can understand it.
 * Keep import/export libraries up-to-date: for example libogg is several years out of date as at July 2010
 * Import Appended: Import multiple files end-to-end in a single track. Would allow re-assembly/re-processing of LP/tape recordings for which no Audacity project exists. Also allows to import multiple tracks for CD assembly Possible Enhancements:
 * with labels containing their filenames

<ul> <ul><li>Import new track at cursor position simpler/more important </ul> <li> Export to mono MP3: <ul><li>Default MP3 export setting halves the bit-rate if the track is mono: When you invoke LAME from the command-line using the default command without parameters, it detects if the track is mono and produces a 64 kbps file (as opposed to producing a 128 kbps file if the track is stereo). With Audacity GUI MP3 export, the default export to MP3 always produces a 128 kbps file even if the track is mono.
 * ability to import the multiple files (or even a single file) at cursor position

<li> Add option to export MP3 in mono at the currently selected bit rate: In other words, the -m m option in LAME, but always specify the bit rate, so this option never reduces the bit rate. </ul> <li> Allow use of pre-existing system libraries: for example ffdshow tryout on Windows instead of both LAME and FFmpeg. <li> Provide way to automatically add extension for chosen export format after file name when file name contains a dot: Audacity adds the chosen extension when there is no dot in the file name, but if you add a dot as part of the file name, it prompts if you want to save as the file name typed in. - Bertyhell

<li> Use FFmpeg for MP3 export so that maximum external libraries to install is one <li>Keep FFmpeg dynamic library support updated to latest FFmpeg: <li> Add 'Honour solo state' checkboxes to the 'Export' and 'Export Multiple' dialogue boxes: There's some disagreement and user confusion over whether the 'solo' buttons should affect exports. Adding this option to the export dialogues will (a) allow the users to select the behaviour they prefer, (b) inform them the the default behaviour doesn't honour the solo state, and (c) reassure them that this isn't a bug. </ul>

New/Modified Toolbars or Menus

 * Customisable Toolbar: add/remove/move items from/between toolbars (similar to customising the toolbars in Firefox) and create a personal toolbar with just the icons you use heavily yourself (then you can hide all the other toolbars to save space)
 * Customizable Menus: add/remove/move items from/between menus


 * Ribbon toolbars or drop-down icons to help declutter the GUI


 * Effects Toolbar Should be able to be dragged to any area of the screen and dockable. Organize the visible buttons, organise the Effect menu and create favorites list.


 * Repair Toolbar containing (left to right) Zoom In/Repair/Zoom Out buttons. Both Zoom buttons zoom by (say) factor of 10 if Control key depressed. Breaks monotony of using the keyboard all the time and holding and releasing the mouse to highlight the repair area.


 * Global "hide/show toolbars" switch retains the same toolbar positions when unhid - preferably keyboard accessible too.

<ul></ul>
 * Analyze Menu:
 * Real-time Tuner: like Tuning Fork in GarageBand

<ul> </ul>
 * Edit Menu:
 * Insert File:
 * Dialogue allows insertion of multiple files, each at specified cursor positions not just insertion of one file at wherever the current position is
 * Paste Special: "Replace", "Mix" and "Insert Before" as well as the standard "Paste" for "Insert After."
 * Paste Fill: A special case of "Replace" where the region pasted into is filled with the content of the clipboard (truncated or repeated as needs be) so as to maintain the length of the track. Obvious use case is maintaining synchronisation in video sound tracks.
 * Move cursor with short key and value e.g. 1.5 minutes forward by pressing +180 [enter], -10 to go back 10 seconds.
 * Please make this available as "move cursor" and "move + select" from cursor position, as it's currently not so easy to select fixed length areas. This should also allow parts of seconds, e.g. +10.25 to go forward 10.25 seconds. As a quick workaround a keyboard shortcut to reach the Selection Start/End/Length/Audio Position Box without moving the mouse would be very helpful.
 * Select sub-menu:
 * Quick-Play Range, Move Cursor > Quick-Play Start", "Move Cursor > Quick-Play End
 * Halve selection length, double selection length
 * Shift selection by length of selection: Shift Left and Shift Right, e.g. if a bar of music is selected, the next or previous bar becomes selected.
 * Invert Selection: Huge time saver, would require support for multiple regions as per multiple label selection. As a cheaper allternative, Effect > "Repeat last effect on inverted selection", running the effect separately on the two selections.
 * Split off "Select" items into their own menu.
 * Region Save/Restore:
 * Restore to same zoom level and timeline position Use case: zoom into selection scroll a bit to find a part to edit, then go back to original selection.
 * Also see Edit Toolbar for idea to toggle Fit/Unfit of Selection or Project - you may want to modify the selection before going back to last zoom level
 * Save multiple regions
 * Restore last used: so you don't have to remember to save. If user repeated the command, we would need to decide if it alternated between the last two regions or carried on going back in time (or provide a choice for those).
 * Reset Preferences: An easier way is needed to enable *and advertise* reset of Preferences (rather than have users mistakenly think uninstalling/reinstalling Audacity will correct a problem). Could instead/also be an executable to repair or remove settings in the install folder (see first run, deployment and uninstallation). It could be an item *in* Preferences but that creates confusion as you could both change preferences and negate the changes by enabling a reset. It could be a key-modified click when launching the Audacity executable.

<ul><ul> <ul><li> Zoom slider for finely graded zooming <ul><li> Display current zoom factor on Status Bar </ul> </ul></ul></ul>
 * Edit Toolbar:
 * Delete selection: Cut (scissors) also too easily used for this in error
 * Fit Project fits vertically as well as horizontally like CoolEdit
 * Fit/Unfit Selection, Fit/Unfit Project: So much easier to go back to last zoom and timeline state.
 * Save Project
 * Delete Project
 * Select Current View
 * Select All
 * Split: Cut (scissors) is too easily used for Split by mistake
 * Zoom:
 * Zoom Maximum button (sample level) (or to a configurable preset close to maximum)
 * Zoom Normal button 
 * Vertical from/to state where collapsed tracks are at some minimum size (still able to display gain/pan, or still showing sample rate and format).
 * Could be done by CTRL + click on the current zoom button
 * To beginning or end of a selection
 * Zoom to selection should have small space at right and left so selection may be adjusted without scrolling
 * Zoom presets:


 * Effect Menu:
 * Reopen : without running it, with a new shortcut CTRL+SHIFT+R. Useful to apply the same effect several times with different settings, for example if applying Equalization, Compression or filters. Would also be an easier way to re-access Noise Removal after grabbing the Noise Profile.

<ul> <ul><li> Reload imported file from disk: with dialogue if more than one file currently imported. Useful if generating/simultaneously editing uncompressed files in other programs.</ul></ul>
 * File Menu:
 * Overwrite: Just overwrite the imported file without any questions asked about name, format or options
 * See also requests for a preference to "Export to same format as imported file" and "File > Overwrite on Exit".
 * Preview file within file open dialogue
 * Separate Export to menu items as in 1.2
 * File information within file open dialogue:
 * Media File Information: Separate window that displays full audio characteristics of any file that has been imported into the project.
 * Print Special: to print selected parts of waveform
 * Separate "Recent Projects" and "Recent Files" menus
 * "Open" to open Audacity Projects only ("Import" opens audio files). Suggested that users look for "Open" to open audio files because this is more understandable than "Import", but then can't find "Save" to save an audio file. If only projects were available in "Open", it "might" educate them to find "Import"

<ul> <ul><ul><li> customised image format and quality <li> auto crop <li> customised background colour </ul></ul></ul>
 * Help Menu
 * Move down "About" to bottom of menu to be consistent with most other software
 * PDF version of 1.3 Manual This gives you overall search, and is much simpler if you want to launch the Manual out of your file manager.
 * Hard copy purchasable official Manual
 * (2.x) Screenshot Tools:
 * Option to capture only the waveform/spectrum/pitch excluding all interface parts


 * Label Track:
 * Next and Previous Labels buttons in panel of Label Track.

<ul> </ul>
 * Metadata Editor:
 * Right-click copy and paste for all fields, not just Genre.
 * Ability to remove default fields


 * Meter Toolbar: See more suggestions about the VU Meters that only have one vote. If you like any of those suggestions, move them from there to here and increase to 2 votes:
 * Greater initialised width: 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 2.x is 255 px. This is too narrow for practical use. Users may not realise meters can be resized, especially if docked.
 * Allow meter to dock vertically at any edge/corner - this a) lets you resize the project window without losing the relative position of the meters b) lets the main window keep focus so still accept the R "Record" shortcut after clicking in the meter to monitor. This same argument can be extended to all toolbars.
 * Vertical dock must be at reduced width too
 * Configurable samples-to-trigger : Meters require 3 consecutive samples to clip, Show Clipping 1 sample and View Clipping 3 samples (by default); user should at least be able to change the meter trigger value with 1 sample being offered
 * Configurable level-to-trigger : Useful if the hardware insists on clipping below 0 dB e.g. SoundBlasters.
 * Proper window with minimise/close buttons and title bar as in 1.2
 * Resizable to half-height - could align with reduced height Control and Tools Toolbar - height of horizontal meters not critical to determining levels
 * Standards-based meter: See details.
 * EBU standard R128
 * ANSI C16.5 VU meter
 * Per-track recording meters
 * LED/bar type with sticky peak sections:  Especially helpful for live recording. Now you need to watch the meters in real time, and the sliding peak indicator only holds position for a few seconds. Cakewalk Sonar has this with a reset button.
 * Reset button for red clipping hold light irrespective of type of meter bars
 * Per-channel recording meters: Multi-channel recording requires one meter channel for each channel being recorded.
 * 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.
 * Compressor/limiter peak hold line to show maximum amount of compression/limiting since starting. Can help finding right settings without having to watch very closely.
 * Display meter ticks/values above 0 dB/FS
 * Display meters independently
 * Toggle between standard size input and output meters for editing/playback, and full width input meter only when recording.
 * Control for Meter/Waveform (dB) display range on the fly instead of in global preferences Cascading menu item "Meter/Waveform dB range > " in the right-click meter menu?
 * Display/name the input being monitored I understand that this info would have to initially come from the drivers and that it might be named poorly. I'd like to change the name of each of these inputs myself. For instance, I have a card with 8 analog inputs, and 5 different input names, multi (for access to all the inputs), and 1/2, 3/4, 5/6, 7/8. In the Edit -> Preferences menu these all have the words "M-Audio Delta 1010LT" in front, but I don't need to see that.
 * Save all Meter settings in the Meter Preferences: so they will be available on restart of Audacity, namely Horizontal/Vertical, Linear/dB and dB range as well as existing refresh rate.


 * Options Toolbar: a new toolbar for easy access to Envelope/Fade/and possibly other options


 * Project Menu:
 * A new menu that accepts that novice users don't understand projects and "export". Keeping everything do to with projects out of File menu should ease confusion, shorten the File menu and allow later expansion of project handling/management.

<ul><ul><li>'''New selection formats: <ul><li>Microseconds [µs]: Very important to measure exact frequency of a certain cycle or speed of sound - 1.2.6 supports microseconds but later versions don't</ul>
 * Selection Toolbar:

<ul><li> Milliseconds (on their own, like seconds) useful for video and other synchronisation delays <li> 23.976 Drop Frame: <li> Minutes + seconds: (without hours) <li> Customized user-chosen syntax: e.g. omitting hours or alphabetical separators </ul> <li> Permanent indication of total length of project: <ul><li>Show project length when Length button is selected with no region selected </ul> <li> Presets for frequently entered values <li> Copy/paste from system clipboard <li> Visual indication when Project Rate changed due to file import e.g. flashes red <li> Mouse position indicator: like Photoshop X/Y info while mouse being moved. Could be used to preview a new position without having to click to lose the original one. Could possibly be a tooltip instead <li>'''"Number of tracks" and "select track number..." box''' <li>Project rate in kHz for easier reading <li> Separate time displays for End and Length Very useful to see both at the same time <li> Separate widget for Selection Format to replace current three widgets: It uses (a little) more space but aids discoverability of feature. </ul> </ul>


 * Tools menu: a new menu for:
 * features or plug-ins that do not generate audio or require a selection
 * Some of the "utility" commands that don't fit well in the existing menus
 * Linear or Exponential Envelopes (Envelope Tool Options)
 * Fade In/Out options
 * Nyquist Workbench
 * New "Utility" type Nyquist plug-ins that do not generate, process or analyze.

<ul> <ul><li> Mix and Render to New Track to make discoverable the existing    CTRL + SHIFT + M shortcut.</ul></ul>
 * Tools Toolbar:
 * One row of icons instead of two giving space to fit other toolbars underneath or make more space for waveform
 * Toggle follow playback/record allowing editing of an area while continuing to listen. Available during playback/record.
 * Tracks Menu:
 * Align Tracks > End-to-End:
 * Respect order in which tracks were added to selection
 * Ensure all tracks are separate clips
 * Could be extended to allow import of multiple files end-to-end, see Other Import/Exports
 * Unsolo All Tracks: this would be a one-click way to hear what you were going to export in Standard Solo Button Mode.
 * Button for Add Label: It could add label at selection when track static, otherwise at playback or recording cursor
 * CrossFade and Mix: Unexplained feature that crossfades (specifed regions?) in selected tracks then mixes.
 * Edit Labels:
 * Include label track metadata: It would be useful to store and export information not strictly needed for creation of the label track, such as the label track start, end and duration, number and duration of labels and user comments (use case is for Powerpoint presentation where slides have to change at precise points in the sound track).
 * Sort Tracks works on selected tracks
 * Mono to Stereo
 * Transport Menu:
 * Add "Play/Stop and Set Cursor (SHIFT + A)"
 * Rename to Play/Record so discoverable by novices

<ul></ul> <ul><ul><li>Loop-Attribute to Play instead of Loop-Start-Button : for editing you rather always need Loop than ever Play. <li> Separate Append-Record button <li> Stronger indication in Record button of active recording <ul><li>Bright red with blurred effect like an LED  </ul> <li> Resize to half-height to align with a half-height resizable Tools Toolbar <li>List of available buttons with options to enable or disable, and change order. <li>Square buttons as on Mac <li>Smaller buttons <li>No separate Stop button: press Play and Record to toggle start and stop <li>No separate Pause button: let Play and Record become Pause once depressed, can be distracting looking for/having to hit a separate button. </ul>
 * Transport Toolbar:
 * Separate loop-play button

<ul><li> Advanced Transport Toolbar Should be able to switch between Basic and Advanced mode while recording if possible. Maybe with another button on the Control Bar. (selectable in button list) <ul><li> Button center changes color instead of the whole button sinking when activated <li> Record button would begin to blink when hit the first time <li> Like hitting pause and then record, and then would just simply be a pause button until you hit stop. <li> Fast backward and fast forward.Which would play at high speed. <li>Standard: Skip to Beginning, Skip to End, Stop, Play, Loop Play <li> Image of Toolbar  </ul> </ul></ul>

<ul><ul> <ul> <ul><ul></ul></ul></ul></ul></ul>
 * View Menu:
 * (2.x) Change Language: Too undiscoverable where to change language now Audacity does not ask at first run
 * Move in or duplicate "Show track name in waveform display" from Interface Preferences to View Menu Could be called "Show Track Name in Display" or "Show Track Name" (slightly ambiguous)
 * "Show Clipping": configure number of consecutive samples required to trigger
 * "Mixer Board" misnamed: the main interface is about mixing as well. The point about Mixer Board is the multi-metering so the menu item should be "Multi-Meters" or "Per Track Meters"
 * I disagree, the "Mixer-Board" is much more than just a set of multi-meters, it carries a full set of mixing controls too (much like a hardware mixing board that many would be familiar with) PeterSampson

New/Modified other GUI elements

 * Buttons on dialogues (general):
 * (OS X) Support OS X dual defaults which differentiate between preselected (hit ENTER) and bordered (hit spacebar)

<ul></ul>
 * Waveform colours:
 * Assign different colours to individual tracks, clips or regions For example different colours for different participants in an interview
 * User-customised waveform colours for RMS and background to improve contrast


 * Effect track:
 * An envelope with control points like Time Track. Dropdown menu lets you choose the effect to be applied and whether the effect track applies to the audio track below, above or to all audio tracks. The Track Control Panel has buttons to select each parameter. Control points are set against the parameter levels shown on the vertical scale. The envelope line starts flat, implying the default parameter is applied to all of the track(s) it applies to.

<ul><ul><ul></ul> <li> Tooltip or Status Bar message when mouse holds control point: to show gain amount, final dB level and position in the Timeline. <ul><li> Tooltip preferred: </ul> <li>CTRL or ALT + click creates a control point but doesn't alter the envelope: (it currently starts dragging the envelope straight away which isn't very helpful). If you are far from a control point and want to tweak the envelope, but don't want to add a new control point, you need to go back to the control point. <li>Apply to regions e.g. hold down ALT key and drag between envelope points to move only that section up or down (handy for changing the volume of a section of audio without having to drag individual points around). <li>Text input for accuracy of control point placement <li>More intelligent/automatic rendering: Could be a switch or a preference, off by default. Could render after each point drawn, or after switching from Envelope Tool. Reason: it's too easy to switch back to Selection Tool, forget you have not rendered the envelope then apply some effect that causes clipping after you render. It must confuse novices too to look in Amplify after using Envelope Tool and see the "wrong" values. <li>Cut and paste of envelope points: - especially useful to paste between different tracks or projects. Ideally, should permit pasting from mono track envelope to stereo (copying both envelopes from a stereo track to a mono track would be more problematic). <li>Per-track envelope accessed from button in Track Control Panel <li>Lock to prevent drag creating clipping <li>Modifier keys for horizontal or vertical drag <li>Non-destructive: Draw lines and curves on top of audio events for accurate, graphically-based audio mixing like Cakewalk </ul></ul>
 * Envelope Tool:
 * Choice of linear envelope editing: e.g. as in Pro Tools Current fades are logarithmic, if you switch the track view mode to Waveform (dB) the fades will show as "straight" lines. To make linear fade, need to create multiple small fades to create an envelope that approximates to a straight line.
 * Too fiddly/unintuitive to fade out to zero . Pinching the point hard to the zero line makes volume fade to zero almost after the beginning of the fade.
 * "SHIFT + drag" for linear envelopes and "CTRL" + drag for logarithmic envelopes
 * Fading to 0 is possible: in normal Waveform view, click the top point and drag down below the center line. Easier seen in Waveform (dB) mode or after rendering.

<ul><ul><li> Support SoundCloud: An API is available that allows applications to upload or download audio files. This API has been integrated into several DAWs like PreSonus Studio One Pro.</ul></ul>
 * FTP/RSS/online distribution support for podcasters, bands etc.


 * Hand Tool to Cut/Drag and Copy/Drag selection region: While dragging, the END of the selection range would be a dotted line and START a regular vertical line to know where to drop it. Selection Bar shows the START/END values

<ul> </ul>
 * Label Track
 * Double Click Label Edit: have one click on a label select the labelled area, e.g. for »shift-space« playback; have double-click open the label itself for text-editing


 * Message boxes:
 * Selectable text so can be copied/pasted when asking for help


 * Metronome:
 * Fully dynamic responds to your recorded beat, showing for example current beats-per-minute, number of beats and elapsed time since first beat
 * Play on demand without having to generate a click track, enter the BPM and it plays
 * Count-in beats before recording

<ul><ul> <li> Save open/closed Mixer Board state in audacity.cfg so new projects respect that <li> Save open/closed Mixer Board state in .aup file </ul></ul>
 * Mixer Board:
 * Needs to stay on top with main window. Although it gets in the way if you have a lot of tracks, you can resize it horizontally. Making it disappear when you use the main window is not the answer. That means shortcuts don't work when it has focus (or developers have to add separate shortcuts for it). Tiling doesn't help if you want to work with maximised windows.
 * Button (and shortcut) to roll it up and down in situ.
 * Shortcut to switch focus and on top state between main Audacity window and Mixer Board window.
 * Or try the Goldwave solution for its Control Window. It floats on top when main window is maximised, or sticks to side/bottom of main window when that is restored down. If minimised, it sits on top of the Taskbar as a Title bar with buttons and can be moved anywhere.


 * Quick Play Region:
 * Double-click within the region to select it
 * Multiple overlapping Play Regions
 * Snap a standard region to a locked quick play region
 * Button to lock/unlock the region without destroying the region
 * Play a selection within the locked region
 * Vertical lines through waveform when dragging
 * Dragging an edge restarts play (left edge) or continues play (right edge)
 * Drag and drop, preserving length (if done while playing, restarts or continues according to position of playback cursor)
 * Region shows in Selection Bar while dragged
 * Right-click context menu with commands such as Loop-play, Play, Trim region, Cut region, Lock, Unlock, Export selection, etc.
 * Some means of allowing second click close to first click: cursor arrows prevent this. Suggest cursor arrows don't need to be shown after you click: you can't use the play region if you drag the arrows once you have clicked. Create quick play region only by click and drag, and don't show cursor arrows until you drag.


 * Improved right-to-left (RTL) support
 * RTL typing in labels and RTL direction of labels and waveform (if operating system installed in a RTL language does not make this happen)
 * Control should also allow left-to-right typing and direction of labels on operating systems installed in a RTL language


 * Scrollbars:
 * Secondary horizontal scrollbar (above the existing standard horizontal scrollbar) that scrolls only the extent of selection. When you've highlighted one bar of a song, then want to zoom in to the sample level you want to scroll back and forth in your selection, but the standard project-wide horizontal scrollbar isn't granular enough and you whiz way out of your selection.


 * Selection Viewer (draggable):  Useful for previewing loops, to see how well the ends match. Could incorporate zooming like the Windows magnifier. Could have option to duplicate a region into viewer as transparent different coloured waveform for easy comparison over the top of another region.
 * Also see proof of concept for a Focus-Plus-Context Audacity interface

<ul> </ul>
 * Sliders:
 * More discoverable precise adjustment
 * Add "double-click for precise adjustment" message to tooltips


 * Snap to:
 * Beats
 * Should apply to dragged clips
 * Zero Crossings: useful for "silent" edits and looping.
 * Toggle on/off when performing operation: For example, shift during mouse drag; shift before drag snaps selection edge or cursor position)
 * Cut lines

<ul></ul>
 * Status Bar:
 * Original file data: Track Panel information gives current resolution/sample rate but the data for the original files in the project is wanted too: sample rate, sample format, bit rate, file format, VBR/CBR and so on


 * Tabs for individual projects, not separate windows: Far easier to manipulate and understand


 * Timeline:
 * Option to display in currently selected format such as film frames, not just in seconds.
 * Timeline settable to HH:MM:SS: for easier calculation of times at which recording events occurred
 * Should be an extra timeline, not just an option for existing Timeline
 * Cutting or pasting audio should adjust displayed time
 * Draggable Timeline that could dock between or at bottom of tracks: '''
 * Identical timeline at bottom of screen: on by default, but closable by [X] and open/closed state remembered.
 * Display in loop units as per the length of an identified loop region in the track


 * Time Tracks:
 * Greater default range than 90/110:
 * Reinstate a way to move all the points when changing range:
 * One per track not one per window
 * Vertical scale shows speed change percentages
 * Tooltip on hover over envelope point showing corrected time line position and speed percentage


 * Title Bar:
 * Contain "Audacity" even when displaying a file or project - This allows other programs such as macro programs to recognise it
 * include version number: - important for multi-computer environments like community radio
 * Show entire project length: - helps when doing attrition-type editing for a particular length
 * Contain a * for unsaved changes
 * Contain time remaining for a current operation (e.g. noise removal, mp3 export)

<ul><ul> <ul><li> Make it into a normal combo menu box that everyone understands and accept it will widen the Track Control Panel. As a variant, track name could be a slide-out (with a tooltip) where you enter the name. Dropdown menu itself could be a spanner icon to right of sample rate/format, or maybe even a button that says "menu" </ul> <li>Move track to specific place in track table <ul><li>"Move Track to Top" and "Move Track to Bottom" are most important </ul> <li> Make it easier to read long track names: <ul><li>Hover tooltip for the name </ul> <li> Pitch view should show intelligible pitch estimates of simple piano, guitar or vocal selections with a piano labelled diagram user yanky5cool <ul><li> Should also be a real time tool with a graph and movable points that change the pitch as the track plays </ul> <li> Add scaling for negative samples in Waveform (dB) view (the obvious issue is how to present that when the scale values themselves are mostly negative) </ul>
 * Track Drop-Down menu, vertical scale and track views:
 * Better signposted
 * Descriptive tooltips
 * Move it to main menus at top instead

<ul><li> Zoom the vertical scale with magnify icon to much finer resolution not just to integer or a bit less. <ul><li>Should show samples e.g. -32768 to 32767 </ul> </ul> <ul><li> New "Waveform (Linear)" view with Logarithmic Scale then one can look at a sine wave without distortion. Also Audacity effects and filters all work in dB! <li> New "Waveform dB" view with Logarithmic scale not linear spacing of increments as now <li>New "Waveform dB" view with linear interpolation (sine wave looks like sine) <li> L and R channel labelling on vertical scale <li> Additional vertical scale at right hand end of waveform <li>Swap stereo channels for upper track of stereo pair <li> Multiple track views: <ul><li> Waveform/Spectrum split view: upper track has a waveform view, lower a spectrum view like the Thinklabs variant of Audacity <li> Multi-View: upper track in waveform view, then linked views of the same track below in waveform (dB) view then (read only) spectrum and pitch views. Editing or horizontal zooming either waveform view changes the other views. Makes it easier to isolate and analyze a specific micro sound and see all "the big picture". Should also be accessible via Analyze Menu. </ul>

<li> New 3D track view: Amplitude *and* Frequency against Time to complement Analyze > Plot Spectrum <li> Solo and Mute choices so easier to operate these with shortcuts in multi-track projects </ul></ul>

<ul><li>Track Control Panel (TrackInfo class): <ul><li> Redesigned to retain functionality at minimal height <ul><li> Keep gain/pan sliders available when track height reduced <li> Redundant 'mute' and 'solo' options: so you don't have to constantly open/close different collapsed tracks.</ul> <li> Add per track Equalizer: Fairly coarse control OK, or (better) put it on pop-up panel <li> 'Allow Track Control Panel to be resized horizontally <li> Additional Priority Solo Button: Pressing this unsolos any soloed tracks and releasing it re-solos the previously soloed tracks. <li> Delete track with [X] when playing or recording <li> Finer Gain/Pan sliders: Annoying they move by only intervals of 3 by default (yes i know if you can hold CTRL and move them by one). Better if designed so that clicking on the slider activates it, then mouse roller increments up or down by intervals of 1. <li> Gain/Pan hover display: Avoids having to click the mouse and accidentally change slider position <li> Display bit rate in audio data above the mute/solo buttons: most helpful if wanting to re-export MP3s at same bit rate (and hence file size). Status Bar might be alternative location <li> Display current track length: easier than having to select the whole track and look in Selection Toolbar </ul></ul>


 * Track Tree: to group tracks

<ul><ul> <li>Horizontal and vertical: 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. <li> Single vertical line for aligning tracks </ul> </ul>
 * Waveform Grid lines:
 * Horizontal:
 * Helps alignment with a specific level on the vertical scale when working at the other end of the track
 * Headroom lines at user-specified dB below and above 0dB FS. 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
 * Line at 0.0 visible at all zoom levels so as to splice together without clipping.

<ul> <ul><li> Close all open projects without individual dialogue for each <li> Automatically refit project after dragging out window rather than user having to CTRL + F manually afterwards.</ul></ul>
 * Window management:
 * Always on top button: both for main project window and all other modeless windows, for example Plot Spectrum and Mixer Board. Will enable them to work consistently on all OS'es for example Plot Spectrum is always on top on Windows and Linux but not Mac OS X.
 * Minimise Audacity when long processes running: See also votes for the Timer Record dialogues being modeless.

<ul> <ul><li> Use Taskbar button overlay icons/progress bars See developer information.</ul></ul>
 * Windows 7 features:
 * Use Windows 7 Explorer-style open and save dialogs: like 1.2.6 does. These have extra functionality like search.

Keyboard Shortcuts/Modifiers

 * New Shortcuts:
 * Effects - see Highest-rated
 * Export formats
 * Play-at-speed:
 * Play at current slider speed . The same shortcut could possibly stop play-at-speed, as well as using spacebar.
 * Open text box to enter exact speed for VI users, like gain/pan sliders
 * Navigation and align:
 * Scroll project horizontally:  See Bug 187.

<ul><ul><ul> <li> Edit > Move Cursor > To Clip End <li> Edit > Move Cursor > To Clip Start <li> Edit > Select > Cursor to Clip End <li> Edit > Select > Clip Start to Cursor <li> all the Tracks > Align Tracks commands <li> Track Drop-Down Menu > Move Track to Top, Move Track to Bottom <li> Track Drop-Down Menu > Move focused track up or down. This is still easier than using the shortcut for "Open menu on focused track" then using arrow keys and ENTER <li> Move to top/bottom track in project </ul></ul></ul>
 * CTRL + Left and CTRL + Right: The first press of these could centre on the cursor (or if there was a selection, on left or right edge of selection). Useful for adjusting loop positions.
 * Add icons for all shortcuts: would complement possible new feature for customisable toolbars
 * Better default shortcuts:
 * Zoom: CTRL+ + to zoom in, CTRL+ - to zoom out, CTRL+ 0 for zoom normal as per almost every other app
 * Keyboard Modifiers:
 * CTRL + click for selecting multiple objects such as tracks, instead of SHIFT + click which is not standard practice
 * Move selection without moving track: Modified mouse drag (and keyboard shortcut) to move selection along the track without changing its length.
 * SHIFT + click to create a selection that can span multiple tracks without prior selection of tracks: as if you had dragged from the cursor to the place you had shift-clicked. Currently, shift-clicking only creates a selection in the track(s) where the cursor is.
 * Add more modifiers to speed up working for example Sound Forge has shift modifier to move a selection without changing the duration
 * Global hotkeys: Not just useful for correcting recording mistakes while in another application (see below). For example, control recording and labelling while working on unrelated tasks,
 * Multimedia key support
 * Shortcuts for buttons more discoverable e.g. by Status Bar message or dynamic Tooltip

New/Modified Preferences

 * General:
 * Indicate default Preferences values in GUI: Could be italicise, colour, underline, dash to differentiate from others, or perhaps show in tooltips.


 * Devices:
 * Store separate buffer and latency values per host and device: Need to decide if necessary to store for separate sample rates too. Need to handle different devices that display with same name such as "USB Audio CODEC".
 * Extend the not yet implemented idea of Recording Profiles for multi-channel track allocation to include devices and their settings.


 * Directories:
 * Reinstate Audio Cache:
 * for faster read/write after recording as well
 * for helping avoid recording skips
 * only use it for recording - simpler and safer


 * History:
 * Do not create Undo History: - users are often unaware how much space this uses and can run out of space to export
 * Display complete details of parameters used in all shipped effects:
 * store this history in hover tooltip for whatever audio point you mouseover
 * Maximum space for Undo History

<ul> </ul> <ul><ul><li> Default XML import/export directory:  e.g. for Load/Save Metadata templates and Import/Export of EQ curves, rather than use Audacity's data directory. Could remember last directory instead, but shouldn't simply use the same directory as import/export of audio files. <li> Export to directory from which original .aup or audio file loaded: (like Save Project does). Should apply to all export options (including labels, which should use name of the file, not "labels.txt") and fall back to "last used" directory otherwise. <li> Export to current directory: Much easier for command line users <li>  Export to same directory as project save directory <li> Default Export Format <li> Export multiple "overwrite files" state <li> File > Overwrite original file on exit:  - time saving for those using Audacity as external editor for another app. <ul><li> Export to same format as imported file: - even that on its own would help  </ul> <li> Enable automatic file name generation/suggestion  Could be for project files as well as exported files. Specify if name includes date/time (and its format, such as Y_M_D_hh_mm), whether time is for start or end of recording, whether quits automatically just with string as file name, or inserts string into file name if a name is chosen manually. <li> Write no metadata  - not just disable appearance of metadata editor, not just write empty tags. Should apply to all exports, not just export multiple. One use case is that CD burning software may use metadata to determine track order. <ul><li> Disable writing metadata only for WAV export - Don't clear Metadata Editor because you may want to export MP3 too</ul> <li> Generate/suggest on basis of current metadata <li> Preserve start-time relative to time zero when exporting  This is needed for exporting offset tracks for multi-track mixing elsewhere.</ul></ul> <ul> </ul> <ul><ul> <li> Compressed exports: use same export bit rate/compression level as the first imported file so that exported file size is the same if file length unmodified. Or simplest, a checkbox just in MP3 export options in version 2.x </ul> <ul><li> Offer Import Raw dialog if file type unrecognized: that is if Audacity cannot detect the file format at all.</ul></ul>
 * Import/Export:
 * Export at same bit depth or warning (on by default) that export will downsample the bit depth
 * Always import at Default Sample Rate
 * Recent Files maximum number of entries: to include "0" to keep it empty
 * dB level Checkbox for "Normalize all tracks in project" on import: to be independent of the current level applied via the Normalize effect dialog.
 * Normalize on export:
 * Reliable MP3 encoding without changing the peak level: as per bug 23
 * Explorer integration:
 * Multiple files import into same project
 * Associate with chosen file extensions
 * All open and import are into same project: less confusing - if you want a file to open a new window, open the window first
 * Default Open/Import folder and Default Export/Save Folder  These are always accessed when opening the file dialogue.

<ul> <ul><li>Choice of color for Track Name in waveform: <ul><li>Choice should be per track </ul> <li> Different modes for skill level/purpose - expose/hide different parts of interface/control quantity of messaging. Examples: "Beginner", "Intermediate", "Advanced", "DJ", "Multi-Track Studio", "Composer", "Scientific" <li> Maximising window maximises tracks  </ul></ul>
 * Interface:
 * Placement of new tracks:
 * At top
 * Underneath selected track(s)
 * Mixed and Rendered tracks placed at top of project
 * Every new audio track creates its own label track underneath - requirement for DAISY Books
 * Global font for GUI display
 * "Zoom Normal" level. Default 10 seconds too restrictive
 * Beep on completing longer activities: Choose the sound to play and how long a process should last before it sounds

<ul></ul>
 * Keyboard
 * Click "Command" to sort alphabetically
 * Alert User about Keyboard Shortcut conflict if the shortcut is already taken, and what is currently set to it.


 * Meters:
 * Reset delay for Recent Peak so it can fall back sooner than a few seconds after the peak


 * Mouse:
 * Configurable bindings
 * Zoom by holding mouse button not by continual click
 * Zoom by hovering mouse over pre-defined part of a region such as bottom-left
 * User:Arlen votes against this
 * Ugly cursor for hover over selection edge: Double-headed arrow?

<ul><li> Give output to Audacity's application-specific slider on Windows 7, Vista and other OS'es that support this <li> Loop from cursor to track end when no selection, not the whole track (or do it anyway to respect practice elsewhere in the app) <ul><li>Loop from cursor to cursor i.e. always plays whole track even if cursor is not at zero</ul> <li>Stop and set cursor: makes the default action of Stop button to set cursor at stop point; this means SHIFT + A stops and resets cursor to starting position. </ul></ul>
 * Playback:
 * Output slider does not move system slider. Standard with media players and even many audio editors. Turning up volume to work on quiet audio in Audacity can wreck speakers/headphones if you then forget to turn system volume down before playing in another app that has an independent control.<ul>


 * Quality:
 * Don't dither absolute silence:

<ul></ul>
 * Recording:
 * Append-Record: makes the default recording mode "append to existing track"; this means SHIFT-click on Record button appends and click starts new track.
 * Set Timeline zero to system clock time when starting recordings: not just for Sound Activated Recording
 * Spectrogram Monitoring Before record:  to monitor the real-time spectrogram display before hitting record and after hitting stop. Especially useful for wildlife recording.
 * Timer Record Duration - although Timer Record now remembers its last duration across sessions, a "use default/use last value" preference would allow flexibility to change duration in Timer Record for specific purposes but still have it initialise back to the most commonly required default.
 * Default input source to be always loaded when Audacity launches irrespective of current system setting


 * Tracks:
 * Persistent Track Height
 * Automatically minimize height of right (or left) channel

Non-preference behaviours and other interface modifications

 * Play selected tracks rather than choosing tracks to play by mute/solo. If allied with buffering changes might help smooth playback of a few tracks out of many (muting the others only helps playback marginally). Also avoids danger in 2.x of unintentionally muting tracks at export.


 * Cut Preview:
 * Plays all selected or Sync-Lock Selected tracks ignoring mute/solo
 * Previews the mix respecting Mute and Solo, and ignoring track selectedness
 * If no selection, play centered on the cursor position (and rename feature if needed)


 * Tracks Fit vertically zoomed:
 * should be on by default
 * should be capable of toggling off as well as on in the View Menu, (so that unchecking it reverts all tracks to default height)
 * should have an option in preferences to set the number of tracks to fit on the screen by default (determines the default height)

<ul></ul>
 * Ability to disable/hide track resize drag bar
 * At least some simple method of getting back to even (1:1) track sizes


 * Silence/unsilence a selection at any time not just with undo, since we might want to do some other things before undo-ing the silence. Perhaps can be done similar to cut-lines.


 * Set "all supported files" as the default filter for opening instead of "all files" on a fresh install


 * (Mac) Support Option - arrow to skip back and forth one word when editing text


 * Allow minimize/maximize/restore/move of window during operations (import, export, effects, etc.)


 * One-step way to avoid clipping on multiple tracks:
 * Master Fader ability:
 * Separate mixing window (like Mixer Board but with a "Master-Fader" control):
 * Shortcut that moves all gain sliders by same amount
 * Master-Fader or Master Envelope track: Like the Envelope Tool but in its own track and applies to all tracks, used additional to and independently of Envelope Tool. On playback, fader position is interpolated (linearly in dB) between the track points and the result is added (in dB thus multiplied) with the current "envelope" value.
 * Automatic gain adjustment (Mix and Scale): so that the mix in unmuted tracks can never clip. Could be a control that sets the target level of the mix.


 * Better ability to update
 * Automatic push of updated versions at launch
 * User-initiated menu item to advise if version is current but not automatic updates

<ul><ul><li> As with Windows, there should be an easy way to revert to the "Audacity Classic" look <li>Mac version should look more like Mac software: important for Mac users that our software is unified. All the knobs, buttons, sliders should use the standard Aqua interface instead of the current Windows 95 look. If it has to be done with Themes, then do it <li>Audacity should look completely native on all platforms <li>Icon too low resolution: looks poor at 32 x 32 or higher   </ul></ul>
 * Too utilitarian/outdated/generic in appearance/hard to customise. (generalised comments only)


 * Smoother Track scrolling on Playback:  Keep the cursor in one place but move the track - gives smooth visual playback without continual cursor back and forth
 * As selectable option which is on by default in case of slower systems.
 * Or still allow cursor to move, but scroll smoothly when it reaches about 15% from the right and place cursor 15% from left.
 * Also during recording.


 * Proper support for Windows Remote Desktop Protocol including audio transfer. Other audio programs like CoolEditPro (as was) handle playback audio over RDP. Use case is examining the files, or chopping into smaller ones for local use without bringing the whole file over from the host.


 * Automatic Cross-fading
 * see this proposal for how the developers think it might work
 * Might this may lack something in flexibility? If the above does not let you choose the overlap region, define it by dragging, then apply cross-fade. Include ability to find an achieved cross fade again and stretch/contract or move the region.


 * Clarify distinction between Save Project and Export audio file
 * Try having the Export together with Save near the top of the menu?
 * A few people like the Export distinction for example because it has an analogy with flattening layers in images.


 * Move selection regions without splitting or length-change: useful feature in SoundForge
 * Drag to move the region within or to another track
 * Drag and drop over grey background to create new track with that audio


 * Non-modal effect dialogues: It would be nice if you could open multiple effect dialogues side-by-side to compare their effects, or just to compare an effect to the unmodified clip.


 * More specific error thrown for "Error while opening sound device. Please check the input device settings and the project sample rate." Should include something like "Please run the [Windows | Mac | Linux] online diagnostic program at..."


 * Connect to hardware sampler via SCSI cable: Allows 1) fast transfer of WAV files to the sampler's hard drive over SMDI, as in Sound Forge (full version), Wavelab, Recycle...  2) the PC to capture an image of the sampler's hard drive, then burn custom sample CDRoms.


 * Look up feature for online databases like Gracenote, Allmusic.
 * Individual samples joined by curves instead of straight lines to better represent analogue reconstruction of waveform in playback. Could be done with cubic-spline interpolation or possibly sample rate conversion. Would show as a smooth curve through the sample points, bandwidth limited according to Nyquist. Slower, but yields a better display. Could lead to overshoots beyond Full Scale, which would have to be handled. . Also see this Forum discussion.


 * Presets for Track settings: "Track Settings Template" to set name, gain and pan of on-screen tracks to pre-set values

<ul></ul>
 * Improved audio clipboard:
 * Import audio direct to the clipboard
 * Multi-item clipboard with "thumbnail" view where tracks can be stored instead of cluttering the screen. Great for organising multiple "takes".


 * Native format editing: Limited editing of lossy compressed audio in native format, rather than decompressing then lossy recompressing. Would suit MP3,  OGG, etc. especially at low bit rates.


 * Tap delay, and tap bpm input


 * Web folder import/export support such as Sharepoint, WebDAV


 * To make alignment and analysis simpler it would be nice to be able to overlay 2 tracks. Each track would need to be displayed in a different color and/or density. Since moving left/right would probably be difficult with an overlay, it might be best to let the user select the 2 (or more?) tracks to overlay and just present a temporary view. Then the existing tracks could be manipulated with the effects displayed in the overlay view.

<ul></ul>
 * Scroll with the Mac Mighty Mouse or TrackPad: (including two-finger TrackPad scroll left/right, up/down and pinch in/out zoom gestures, as recently added to Finale).
 * Allow to scroll left/right with mouse ball/wheel without SHIFT on Windows too


 * Scroll with the middle-mouse button: This should work like panning with the middle mouse button in Gimp, or panning in Google Maps, to make it easier to scroll in small amounts when working with long tracks.


 * Drag windows by bottom bar as on OS X


 * Inter-application communication: a way for a Java app to invoke controls or commands in Audacity? Can Audacity receive commands such as Start/Stop recording on a TCP/IP port? See Third party applications controlling Audacity in Use Cases.  James See also progress on Automation.  Support for Perl/Python/Lua/Jave etc scripting.


 * Start-up actions dialogue: Would it be possible to have Audacity to start up with a small window with a couple of options such as New Project or Open Existing Project. If the user hit New Project it would ask what the name of the project is to be and create a folder for all the files to be saved in a location of their choosing. Advantages I see to this is that if the user starts work on their project and doesn't save it (as they inevitably do) and the computer crashes then their work will be safe, since auto save will be turned on and that all the project files will be stored in one place.


 * Independent Input and Output controls: Control audio output at system level or by using volume controls on your monitors; split input/output level meters apart as well or collapsible into each other when editing.


 * Simple LP/tape digitization interface: Perhaps more like CD Spin Doctor or Fission (by RogueAmoeba)


 * Effects Layers: Much like Layers in Photoshop but with this you could apply an effect and it creates a collapsed layer containing the effect which you can alter or remove if needed. Also you could create an envelope for the effect which works the same as envelopes on the audio track so you could increase or decrease the level the effect alters the track.  Obviously this would need a more powerful computer to playback multiple effects layers but the easiest way around that would be for Audacity to quickly render the effects to temp files contained within the project which would give you the flexibility to remove the effect if you later decided you didn't like it or it doesn't quite work.


 * Porting to QT: To integrate the program to Window Managers and OS better I think is to porting Audacity from WX-Gtk to QT. OK, hard work but the Qt are better...
 * Reason being there is too much aliasing with Widgets


 * Use GTK+ for GUI for more "native" colours/icons/controls. Could use GTK+ stock items or ask them for custom widgets

Multi-channel/multi-device issues

 * Allocate specific channels to specific Audacity tracks:


 * Detect newly added or removed device automatically:


 * Allow nonconsecutive set of input channels to be selected e.g. to deal with devices that send special outputs on the higher numbered channels. For example, Alesis's MultiMix-8 returns its mixed outputs, which is the only outlet for its on-board effects, on channels 9 and 10. A common setup for me is to use channels 1-3 for instruments and mics, and mix in some effects from the Alesis unit; I'd like to have Audacity record channels 1,2,3,9,10 instead of 1 thru 10.
 * Template with any number of stacked NAMED tracks: drop-down menu should allow us to choose any of the N-channels of the attached device (e.g., 16 for a Mackie 1640i). Once template is created and saved, RECORD should launch an instance of this template and record those channels. Each time RECORD is invoked, another instance of the template would start below those already done. In this way the user interface would look mostly as now, but would add the multitrack capability.


 * Per-channel recording metering: - one use case is that waveform display while recording is lagged and arrives in steps rather than being continuous
 * Must be a reasonable length as in other multi-channel recording apps. Could use Mixer Board metering for record as well as playback, with main recording meter showing levels for "mix" of all channels. As second best, the main meters could be switchable from channels 1+2 / 3+4 / 5+6 / 7+8 (up to the number of channels set in Preferences). A problem is that Mixer Board is a separate window that takes focus from the main window, so does not accept shortcuts. If meters are vertical, that makes Mixer Board wider so encourages keeping it as a separate window

Other recording enhancements

 * Off-Tape Monitor: True off-Tape Monitor while recording or 'What you Hear is What you've got'. When Recording the playback is taken from the data stored on the Hard drive and passed through the entire audio chain with a suitable delay (say 100+ ms) so it's obvious you're not listening to the input. This is ideal for high quality spoken word recordings.

<ul><li>Timer Record: Many of the below requests could be implemented (I think) by enabling automation support for tcp/unix sockets <ul><li> Multi-event scheduler for future recordings (like a VCR), not just scheduling a single recording for now <li> Access to progress or record controls: <ul><li> Both dialogs should be modeless for current project, allowing access to same controls available during standard recording This lets you change levels, pause manually, drop a label, zoom in/out or resize tracks, plus it lets Audacity on Windows be minimised while Timer Record is in progress. <li> Waiting for Start dialog should be modeless for all (or at least, other) projects: allowing to work normally until recording starts </ul>

<ul><li> Change/extend recording stop time during record or waiting to record <li> Stop a manually started recording automatically by extending recording stop time in Timer Record - use case "something unexpected makes me have to go out" </ul> <ul><li> Some method to close the timer without stopping it - Cancel? </ul> <li>More intuitive/simpler timer controls: : <ul><li>Type any hour before present time to stop timer/advance date: instead of input before present time being unintuitively ignored. <li>Simple set of independent combo boxes for start and end having month, day (both pre-selected), hour, minute and seconds. <li>More like a hardware timer: Get rid of "Duration" and "Dates" as editable controls and get rid of interlinking of start and end time </ul>

<li> Perform system shutdown after recording. <li> Save on completion: <ul><li> to a pre-defined project name/location set in an in-situ dialog <li> to a pre-defined file name/format and location set in an in-situ dialog <li>also close the track or project on completion </ul> <li> "Waiting for Start" dialog enhancements: <ul><li>Add duration and scheduled stop time <li> Rename "Remaining Time" to "Recording will commence in: hh:mm:ss" <li> Remove "Elapsed Time" and Progress Bar </ul> <li> (Windows) Minimise Audacity while Timer Record in progress <li> Store last used settings to start recording on a daily basis <li> Disconnect internet stream as well as stop the recording </ul></ul>


 * New Loop Record feature: records while loop-playing a selection region in other tracks.

'' <ul><ul><li> Is a log-law compressor difficult?</ul></ul>
 * Recording limiter that reduces the input level when it approaches clipping

<ul> <ul><li>Don't forget OS X: Soundflower requires configuration to set the playback device to output to Soundflower then set the Audacity recording device to Soundflower. Audio Hijack and other apps. are much simpler but not free.</ul></ul>
 * Include Audacity's own virtual driver to record stereo mix: These days fewer and fewer cards support stereo mix or "what U hear" recording of whatever is playing on the sound card.
 * Plus direct digital capture from the application - even Freecorder can do this.
 * One method might be by supporting DirectShow capture devices (see below) for example using the open source virtual-audio-capture-grabber-device.


 * (Windows) Support DirectShow capture devices: as VLC now does. FFmpeg could perhaps stream the input to Audacity.


 * VoIP Recording - record from speaker output and microphone input simultaneously See Use Cases for more information.


 * Pre-roll (buffered) recording for all types of recording not just for Sound Activated Recording. . Pause + Record allows Audacity to be "armed" for recording so that recording begins before the recording is un-paused. Available on some hardware recorders for all recordings, but usually limited to a few seconds. If RAM is sufficient for long pre-roll durations, that's useful for making "opportunist" recordings at band rehearsals/jam sessions and the like.
 * FIFO buffer of long duration (maybe minute or few) would be good for capturing an stream that you found worth keeping.


 * Capture metadata when recording stream


 * (Linux) Full support for JACK so that digital output such as streaming audio can be received from other programs . See JACK and Audacity issues.


 * Mixer Toolbar:
 * Add L....R (hardware) balance control
 * Sliders need finer visible gradation than 10 ticks

<ul></ul>
 * Should be MTC/MMC slave and master
 * Record direct to MP3: could be special build or self-contained interface/toolbar solution.
 * 8-bit recording: Quality more than sufficient for many lower quality sources such as cassettes, speech, etc. Reduces file size & cpu use (both important for multitrack conference recording). Also reducing cpu use would make audacity usable on more machines.
 * Azimuth Setter displays tape azimuth setting before and during recording. Enables quick easy & accurate azimuth setting, and shows any real time variation during recording. This is described in more detail in the recording from cassettes section of Use Cases.
 * Automatic pre-record level adjust: something like ALC to analyze input to determine the level before starting record. Audacity has some experimental, unfinished code which had a similar objective.
 * Automatic sample rate/format adjust: based on capture of several seconds of incoming audio. Achieves non-bloat for non-technical users. Automatic sample rate is fairly easy, just detect what highish frequency never raises itself significantly above the noise floor, and translate this to a suitable sample rate. Automatic bit depth setting raises a few questions:
 * Input must contain at least a moment's silence
 * Maybe show a little text box saying the source is n bits deep suggesting n+1 bits for recordings where no effects will be applied, or 32-bit where many effects can be applied without degradation.
 * Record a new track in a project backwards: It's all PCM data, so it's possible. We all know backwards electric guitar is the coolest thing ever.
 * Saving while recording - very useful for post-processing a selection in advance of the end of a long recording, or for increased safety, or just saving time. See Saving while recording.
 * Quick Record: Pressing a Quick Record menu item or button exports to a pre-determined file name and format after recording is stopped (or terminated by Timer Record).
 * Could also do the same but save to a project
 * Could have option to quit after export
 * Delete mistakes on same track without interrupting recording workflow:  Suggestions as described here arose from experiences of the Librivox community. For example, a recording region with a mistake could delete back to a cue point, play before the cue and resume recording after it. Both this and simpler ideas such as dropping labels without leaving the web or document application require Audacity to have cross-platform support for global hotkeys, which wxWidgets supports only under Windows. See also "Punch-in Recording".
 * Customisable Add Label at Playback Position - place cursor +/-  x seconds from playback position
 * Better management of DC offset:
 * Automatic removal of DC offset after recording (rather than just as an option in Normalize)
 * Audacity should block DC at source because of the problems it causes. DC is not sound, and passing DC should only be a fringe purpose for scientists/researchers.

Playback Enhancements
<ul> </ul> <ul><ul><li> Record while playing back at the different speed: Often singers like to record vocals at a lower speed than final playback, it adds an "edge" to their voice. RoscoHead 20:04, 17 February 2007 (PST) <li> Pre-set speeds e.g. 50% slower or faster as in Jet Audio Basic plus a "Reset" for 1x speed <li> Change speed while playing 22.47, 10 May 2007 (GMT+10) - Nickdella <li> Play at tempo (without changing pitch). Very useful for editing spoken word vocals. --Jongalloway 13:42, 18 January 2009 (PST) </ul></ul>
 * "Play-at-speed" button/slider:
 * Shift-click on button to loop at the different speed
 * Higher upper limit: e.g. 4x or 5x
 * Export at selected speed. On the right side of Transcription Toolbar, add a checkbox “Export at this speed”. by Penguin on 19 July 2008;
 * Finer gradations on/wider slider:
 * Current 3% minimum is a half semitone. Music off-pitch by e.g. 1.5% can't be matched to standard tuning.


 * Loop:
 * Dynamically adjust loop playback when selection boundaries move
 * Timed track loop as an alternative to repeat, to potentially help increased ram efficiency. With adjustable time it would be easier for matching tempo. In the render it would repeat the desired sound and have silent intervals when repeat time exceeds the time of the sound.
 * Gapless MP3 playback: e.g. using libmpg123 (LGPL) instead of libmad
 * Looping tool: play a metronome click (ideally of your own choice) on beat divisions of your selection. This would help to be sure that the loop to be cut is syncopated. (see SoundForge's Acid looping tools and Wavosaur's selection gridlines).
 * Batch-looping tool with auto loop finder and slice marker like fl-studio.
 * Fade in/out playback volume automatically when pressing Play/Stop
 * Streaming server to broadcast playback or recording, stream it over internet, send it to Skype...

Editing Enhancements

 * Project-wide, non-destructive (non-linear) editing Especially useful for effects e.g. put some echo on a file, then realise a click needs to be edited out, I now have to edit out the echoes of the click as well as the click itself.
 * Per-track non-linear editing: So you don't have to undo a bunch of changes you DO want on some tracks to get rid of something you did a while ago to another track. The history would then be viewable per track.


 * Delete/move regions/clips/tracks without having to press Stop first: Playback carries on (from end of deletion region if needs be) so saving stop and restart of playback every time. Truncate Silence a possible alternative, but only if near silences are what you want to delete.


 * Full editing (including effects) while paused: more intuitive than having to Stop if you are thinking of hardware equivalents like a tape machine.


 * Select multiple regions, e.g. in Word programs etc. you can use the control key to select multiple but separate areas of a file so several areas to processed at the same time.


 * Audio pattern matching: In a recording, remove the same 20 second tag scattered throughout. I want to identify the same piece of sound and remove it from a number of files.


 * Draw Tool:
 * Visible/editable sample values: hovering pencil over a sample and assign numerical value from keyboard, as in CoolEdit. Useful when implementing/debugging audio processing algorithms.
 * More configurable brush: Define number of samples smoothing brush applies to, rather than current idea of clicking in the middle of an undefined region of samples. See the "LIQUIFY" tool in Adobe PhotoShop.
 * Should work when further zoomed out: SoundForge allows pencil tool to be used at a zoom ratio of 1:32 or lower, without seeing individual samples.
 * Should work in "Waveform (dB)" mode
 * Horizontal Guideline to follow amplitude position of the pointer. Possibly with numerical readout in Status Bar
 * And/or a ruler that you move manually to snap to the ticks on the vertical scale. The guideline would change colour when snapping to the ruler.

<ul><ul> <li>Time Stretching: mouse tools for both pitch-variable and pitch-constant time stretching. Adobe Audition has this and it's vital for the production of sample-based music. </ul></ul>
 * More region/clip dragging functionality:
 * Adjust trim: by dragging corners of clip boundary. Allows to recover original audio easily if you trim too much, rather than as now, having to undo a cut and redo it. See Audition, Cubase, Vegas...
 * Very useful for chopping sound bites into separate tracks where you may need to grab a second or two before or after the sound bite. Currently you must search out the source material in the original track.


 * When dragging to create a selection spanning multiple tracks, be able to stop selecting a previously-selected track: for example, if I press somewhere on track A and drag down onto track B, then down onto track C, I now have a selection spanning tracks A, B, and C. It would be helpful to (while continuing to hold down the mouse) drag back up to track B and no longer be selecting track C (so that the selection now only spans tracks A and B).

MIDI

 * Edit, create and filter MIDI files, using VSTi instruments
 * Allow MIDI files to control VST Instruments
 * MIDI Event Inspector like Sonar which displays and lets you modify properties of a selected MIDI note (or multiple selected notes if they have the same "value").


 * Record MIDI:


 * Allow Audacity to be controlled by MIDI devices or peripherals: such as MIDI controllers - could be separate "profiles" for Audacity to learn commands from each device.


 * Render a MIDI file using free-to-obtain samples such that the eventual file was also 'free'.   - some kind of 'tracker' would allow a user to convert a MIDI or other forms of tracker file (i.e. Protracker) into RAW audio.  Old PD Music can be scored and performed without the need for actual musicians.  I want conversion of sound-like files without having to payout for commercial tools.  ShakespeareFan00 10:15, 30 January 2007 (PST)


 * Import meter/key meta-events from MIDI-file (to represent time in measure/beat) & markers.


 * Support MIDI beat clock so that the BPM data can synchronise MIDI devices
 * Click Track could broadcast MIDI beat clock data


 * MIDI composition and score display/printing