Why Audacity Used Thousands of AU Files
Prior to the release of Audacity 3.0.0, projects were saved as an
.aup project file accompanied by a folder containing
thousands of small .au files. This architecture was an
intentional engineering choice designed to enable fast, non-destructive
audio editing and efficient memory management on older computer
hardware. While this approach provided significant performance
advantages during the early days of digital audio editing, it also
introduced project management challenges that eventually led to a modern
redesign.
Memory Management on Legacy Hardware
Audacity was created in the late 1990s and early 2000s, an era when consumer computers typically had between 64 megabytes and 512 megabytes of RAM. Multi-track audio projects containing gigabytes of uncompressed audio data could not fit into system memory.
To overcome this limitation, Audacity split audio tracks into small segments called "block files," which were typically around 1 megabyte in size or roughly six to ten seconds of audio. By reading and writing only the necessary blocks rather than the entire audio track, Audacity could run smoothly on machines with very limited RAM without crashing the operating system.
Instant Editing and Undo Capabilities
Breaking audio into modular .au files enabled
non-destructive and instantaneous editing. The .aup file
acted as an XML roadmap that told Audacity the exact order in which to
play the .au block files.
When a user cut, pasted, trimmed, or split audio, Audacity did not
rewrite the underlying audio data on the hard drive, which would have
been extremely slow on traditional mechanical spinning hard drives
(HDDs). Instead, the software simply rearranged the pointers inside the
.aup file.
This mechanism also made the "Undo" function practically
instantaneous. To undo an action, Audacity only had to revert the
pointers in the .aup file back to the previous state. The
discarded .au files remained untouched on disk until the
project was saved or closed.
The Downside of Block-Based Storage
While the system was fast, it was notoriously fragile for end users.
Because a single project could consist of thousands of individual files
inside a _data folder, managing projects outside of
Audacity was risky.
Users frequently moved, renamed, or emailed the .aup
file without realizing it depended entirely on the accompanying data
folder. If the folder was separated, renamed, or desynchronized by cloud
storage providers, Audacity could no longer locate the blocks, resulting
in the dreaded "missing audio data block files" error and irreversible
project corruption.
The Modern Solution
With the launch of Audacity 3.0.0, the development team abandoned the
multi-file structure in favor of the .aup3 format. Modern
computers possess abundant RAM and fast solid-state drives (SSDs),
eliminating the performance bottlenecks that previously required
separate .au files. The .aup3 format packages
the entire project—including all audio blocks and edit histories—into a
single, unified SQLite database file, preventing file detachment and
project corruption.