Audacity is a free and open-source digital audio editor and recording application software, available for Windows, macOS, Linux, and other Unix-like operating systems. Audacity was started in the fall of 1999 by Dominic Mazzoni and Roger Dannenberg at Carnegie Mellon University and was released on May 28, 2000 as version 0.8.
As of October 24, 2020, it is the most popular download from FossHub, with over one hundred million downloads since March 2015. Previously, downloads were served from Google Code and SourceForge, with a combined total in excess of 120 million downloads. Audacity won the SourceForge 2007 and 2009 Community Choice Award for Best Project for Multimedia. Audacity is licensed under GPLv2 or any later version.
- Recording: Audacity can record live audio through a microphone or mixer, or digitize recordings from other media.
- Export / Import: Import, edit, and combine sound files. Export your recordings in many different file formats, including multiple files at once.
- Sound Quality: Supports 16-bit, 24-bit and 32-bit. Sample rates and formats are converted using high-quality resampling and dithering.
- Plugins: Support for LADSPA, LV2, Nyquist, VST and Audio Unit effect plug-ins. Nyquist effects can be easily modified in a text editor – or you can even write your own plug-in.
- Editing: Easy editing with Cut, Copy, Paste and Delete. Also unlimited sequential Undo (and Redo) in the session to go back any number of steps.
- Effects: Real-time preview of LADSPA, LV2, VST and Audio Unit (macOS) effects. Plug-in Manager handles plug-in installation and addition/removal of effects and generators from the menus.
- Accessibility: Tracks and selections can be fully manipulated using the keyboard. Large range of keyboard shortcuts.
- Analysis: Spectrogram view mode for visualizing and selecting frequencies. Plot Spectrum window for detailed frequency analysis.
The diagram illustrates the layers and modules in Audacity. Note the three important classes within wxWidgets, each of which has a reflection in Audacity. Higher-level abstractions result from related lower-level ones.
For example, the BlockFile system is a reflection of and is built on wxWidgets' wxFiles. Lower down in the diagram is a narrow strip for "Platform Specific Implementation Layers."
Both wxWidgets and PortAudio are OS abstraction layers. Both contain conditional code that chooses between different implementations depending on the target platform.