Convert Audacity AUP/AUP3 to WAV — aup2wav

Free Python CLI that exports WAV from .aup, .aup3/.aup4, and crash-recovery .aup3unsaved projects — no Audacity required.

What is aup2wav?

aup2wav is a single‑file, open‑source Python tool that reconstructs Audacity projects and exports standard WAV files. It supports legacy .aup (XML+_data), reads .aup3/.aup4 directly (SQLite), and recognizes crash-recovery .aup3unsaved databases by their SQLite signature. Requires Python 3.8+.

Need help with recovery steps? See Recover Audacity projects without Audacity.

Key features

  • Parses .aup XML and stitches audio/silence blocks
  • Reads .aup3/.aup4 from SQLite, decodes binary XML and sampleblocks
  • Recovers audio from copied .aup3unsaved sessions, including recent data in matching SQLite sidecars
  • Applies track gain, equal‑power pan, mute/solo, envelopes
  • Mixdown to stereo, or export multichannel/stems
  • 16‑bit/24‑bit PCM or 32‑bit float; optional normalization and TPDF dither

Download aup2wav

Download aup2wav.py (Right‑click → Save link as…)

SHA‑256: f7c02cbeee157953980ac22772fa3b62c766dd9478748d19c251cb1c6f51037d • Size: 54,145 bytes

How to convert Audacity projects to WAV

# macOS/Linux
python3 aup2wav.py /path/to/project.aup -o /path/to/output.wav

# Windows
py aup2wav.py C:\\path\\to\\project.aup -o C:\\path\\to\\output.wav

# Audacity 3+ (.aup3/.aup4)
python3 aup2wav.py /path/to/project.aup3 -o /path/to/output.wav

# Multichannel (one channel per wavetrack)
python3 aup2wav.py project.aup3 -o multich.wav --multichannel

# Stems (one WAV per wavetrack), keep pan in stereo stems
python3 aup2wav.py project.aup3 --stems --stems-apply-pan --stems-dir ./stems

# Inspect project metadata only
python3 aup2wav.py project.aup3 --print-metadata

# Crash-recovery copy (.aup3unsaved)
py aup2wav.py "C:\\path\\to\\recovery-copy\\New Project.aup3unsaved" -o "C:\\path\\to\\recovered.wav"

Recovering an .aup3unsaved session

An .aup3unsaved file appears while Audacity is holding a new or otherwise unsaved project—for example, after recording before the first Save Project. If Audacity crashes, hangs during an export—including while waiting for an external or command-line encoder—loses power, or is force-closed, the file may remain in SessionData so Audacity can offer automatic recovery on its next launch. Its presence alone does not mean the project is corrupt.

If Audacity is hung, you do not need to terminate it before rescuing the audio. Leave Audacity open, copy the complete recovery set to a separate folder, and run aup2wav only against that copy. This lets you verify a recovered WAV before deciding whether to force-close Audacity.

Audacity stores an unsaved or crash-recovery project as a SQLite database in its SessionData folder. Do not run recovery tools against the live file while Audacity still has it open. Work from a copy:

  1. Copy the .aup3unsaved file to a separate recovery folder.
  2. Copy the matching .aup3unsaved-wal and .aup3unsaved-shm files when present.
  3. Keep all three filenames unchanged and together; the -wal file may contain the newest recorded audio or edits.
  4. Confirm that the source file sizes and modification times did not change during the copy. If they changed, repeat the copy after the files stabilize.
  5. Run aup2wav on the copied .aup3unsaved file and write the WAV to a different filename.

Prefer Audacity's own automatic crash recovery when you need the editable project structure. Use aup2wav as a direct audio-rescue path when Audacity cannot reopen or export the project.

Assumptions

Notes & limitations