Convert AU to WAV — Free Online Tool
Convert Sun AU audio files to WAV format, transcoding from big-endian PCM (pcm_s16be) to little-endian PCM (pcm_s16le) — the standard encoding expected by virtually all modern Windows and Linux audio software. This conversion preserves full audio fidelity since both formats carry uncompressed PCM data; only the byte order and container structure change.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your AU file here
or click to browse
Free — no uploads, no signups. Your files never leave your browser.
Settings
Note: Browser-based encoding uses approximate quality targets. For precise CRF compression, copy the FFmpeg command above and run it on your desktop.
Estimated output:
Conversion Complete!
DownloadHow It Works
AU files store audio using big-endian byte ordering, a legacy of Sun Microsystems' SPARC/Unix architecture. WAV files, developed by Microsoft and IBM, use little-endian byte ordering to match x86 processor architecture. During this conversion, FFmpeg reads the AU container, decodes the pcm_s16be (signed 16-bit big-endian PCM) audio stream, and re-encodes it as pcm_s16le (signed 16-bit little-endian PCM) inside a standard WAV RIFF container. No audio samples are lost or approximated — it is a byte-order swap with a container swap, not a lossy transcode. The sample rate, bit depth, and channel count are preserved exactly as they were in the source AU file.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg binary. In the browser-based tool, this runs via FFmpeg.wasm compiled to WebAssembly; on your desktop, this calls your locally installed FFmpeg executable and processes files of any size. |
-i input.au
|
Specifies the input file. FFmpeg identifies this as a Sun AU file by reading the '.snd' magic bytes at the start of the file, then parses the fixed AU header to extract the codec (typically pcm_s16be), sample rate, and channel count. |
-c:a pcm_s16le
|
Sets the output audio codec to signed 16-bit little-endian PCM — the standard uncompressed audio encoding for WAV files on x86/x64 systems. This reverses the byte order of the AU source's big-endian PCM samples without changing bit depth, sample rate, or any audio data values. |
output.wav
|
Specifies the output filename and container format. FFmpeg infers the WAV/RIFF container from the .wav extension and writes the pcm_s16le audio stream inside a standard RIFF structure with fmt and data chunks, making it compatible with Windows, macOS, Linux, DAWs, and virtually all modern audio software. |
Common Use Cases
- Opening legacy Unix workstation audio recordings in modern DAWs like Audacity, Reaper, or Adobe Audition, which universally support WAV but may not recognize AU files
- Preparing audio assets sourced from early Java applets or Sun-era web audio for use in contemporary video editing timelines that expect WAV or MP3 input
- Converting NeXTSTEP or early macOS system sounds archived in AU format into WAV so they can be used as custom notification sounds on Windows or Linux
- Batch-converting a legacy Unix sound library for use in game engines like Unity or Godot, which accept WAV natively without additional plugins
- Recovering usable audio from old scientific or telephony recordings stored in AU format (often using pcm_mulaw or pcm_alaw codecs) and converting them to the uncompressed pcm_s16le WAV expected by analysis software
- Standardizing an audio archive that contains a mix of AU and WAV files into a single WAV-only collection for long-term preservation and consistent playback compatibility
Frequently Asked Questions
No — when the AU file uses pcm_s16be (the default AU codec), this conversion is completely lossless. The audio samples themselves are identical; only the byte order is reversed from big-endian to little-endian and the file is wrapped in a WAV RIFF container instead of the AU header. You will not hear any difference, and no data is discarded or approximated. The only exception would be if your AU file uses a lossy codec like pcm_mulaw or pcm_alaw, in which case the lossy artifacts already present in the source are preserved as-is in the WAV output.
Yes, but the behavior differs slightly. WAV also supports pcm_mulaw and pcm_alaw natively, but the default FFmpeg command transcodes to pcm_s16le, which decodes the mu-law or A-law compression and expands it to uncompressed 16-bit PCM. This means the output WAV will be larger in file size than the source AU, and any quantization noise inherent in the original mu-law/A-law encoding will still be audible — decoding to PCM does not remove existing artifacts, but it does not add new ones either.
AU files have a minimal 24-byte header with no mandatory padding or chunk alignment, while WAV files use Microsoft's RIFF container format which includes multiple metadata chunks (RIFF, fmt, data) adding a small amount of overhead — typically around 44 bytes. If your source AU file used a compressed codec like pcm_mulaw or pcm_alaw, the output WAV will be significantly larger because the command decodes to uncompressed pcm_s16le, roughly doubling the raw audio data size. For files with pcm_s16be source audio, the size difference is negligible.
The AU format supports a text annotation field in its header, but it is rarely used and is not part of any standardized metadata schema. FFmpeg does not map this field to WAV INFO chunks or ID3 tags during conversion, so any text stored in the AU annotation header will not appear in the output WAV file. WAV files support metadata via LIST INFO chunks, but this conversion does not populate them from the AU source. If metadata preservation is critical, you would need to manually add tags to the WAV file after conversion using a tool like kid3 or bwfmetaedit.
To resample the audio, add the -ar flag followed by the target sample rate in Hz — for example, -ar 44100 to convert to CD-quality 44.1 kHz. To change the bit depth, swap the codec: use -c:a pcm_s24le for 24-bit output or -c:a pcm_s32le for 32-bit output, both of which WAV supports natively. A full example for 24-bit 44.1 kHz output would be: ffmpeg -i input.au -c:a pcm_s24le -ar 44100 output.wav. Be aware that resampling involves interpolation and is not a bit-perfect operation, unlike the default byte-order-only conversion.
The single-file FFmpeg command shown on this page converts one file at a time, but you can easily adapt it for batch processing in a shell script. On Linux or macOS, use: for f in *.au; do ffmpeg -i "$f" -c:a pcm_s16le "${f%.au}.wav"; done. On Windows Command Prompt: for %f in (*.au) do ffmpeg -i "%f" -c:a pcm_s16le "%~nf.wav". This is especially useful for large collections exceeding the 1 GB browser tool limit, since the desktop FFmpeg binary handles files of any size.
Technical Notes
The core technical difference between AU and WAV in this context is byte endianness: AU was designed for big-endian SPARC processors, while WAV targets little-endian x86 systems. FFmpeg's AU demuxer reads the magic number 0x2e736e64 ('.snd') to identify the file and parses the minimal fixed header to determine codec, sample rate, and channel count — no seeking table or index is required, which is why AU was historically suitable for streaming over early internet connections. The WAV RIFF container, by contrast, uses a chunked structure that requires writing the data chunk size into the header, meaning FFmpeg must either know the file length in advance or seek back to update it after writing — this is handled automatically for file outputs but is worth noting if you ever pipe WAV to stdout. AU officially supports only a handful of PCM variants and the two telephony codecs (mu-law, A-law); WAV's much wider codec support (including FLAC and ADPCM within the container) is irrelevant here since the conversion targets the universal pcm_s16le baseline. No channel layout metadata beyond a raw channel count is preserved in either format at this level, so multichannel AU files will remux correctly by count but without named channel assignments in the WAV output.