Convert WAV to AU — Free Online Tool

Convert WAV audio files to AU (Sun AU) format directly in your browser, transcoding the audio stream from little-endian PCM to big-endian PCM (pcm_s16be) — the native byte order used by Sun/Unix systems. This is ideal for legacy Unix compatibility, Java sound applications, or early internet audio workflows that require the .au container.

FFmpeg Command

Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg

Free — no uploads, no signups. Your files never leave your browser.

Estimated output:

Conversion Complete!

Download

How It Works

WAV files typically store audio as little-endian PCM (e.g., pcm_s16le), meaning the least significant byte comes first — a convention inherited from Intel x86 architecture. AU files, developed by Sun Microsystems for SPARC-based Unix systems, use big-endian PCM (pcm_s16be), where the most significant byte comes first. During this conversion, FFmpeg reads the WAV container and its PCM audio stream, re-encodes the raw audio data by reversing the byte order to pcm_s16be at 16-bit depth, and writes it into the AU container with a simple fixed-length header. No lossy compression is applied — the audio remains uncompressed PCM throughout, so there is no generation loss. The only transformation is the byte-order swap and container repackaging.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg multimedia processing tool, which handles all container parsing, codec decoding, re-encoding, and output muxing for this WAV-to-AU conversion.
-i input.wav Specifies the input file — a WAV container, which FFmpeg will demux to extract the audio stream (typically pcm_s16le) for re-encoding into the AU output.
-c:a pcm_s16be Sets the audio codec to 16-bit signed big-endian PCM, which is the standard and most compatible audio encoding for the AU (Sun) format. This performs the essential byte-order swap from WAV's little-endian PCM to AU's big-endian convention.
output.au Defines the output filename with the .au extension. FFmpeg uses this extension to automatically select the AU muxer, which writes the .snd magic header and wraps the pcm_s16be audio stream in the Sun AU container structure.

Common Use Cases

  • Preparing audio assets for Java applications using the javax.sound.sampled API, which has historically favored the AU format for audio clip playback
  • Working with legacy Unix or Solaris workstations and audio tools (such as Sun's audiotool) that expect .au files rather than .wav
  • Providing audio files for older web browsers or early internet media players from the 1990s and early 2000s that supported .au but not .wav
  • Supplying audio to telecommunications or signal-processing research software originally developed on Sun SPARC systems that reads AU files natively
  • Converting WAV recordings to AU format for use with NeXT/OpenStep era software or emulators that parse the AU header structure
  • Generating test audio in AU format for cross-platform audio library development where big-endian PCM compliance needs to be verified

Frequently Asked Questions

No, this conversion is lossless in practice. Both WAV (pcm_s16le) and AU (pcm_s16be) store uncompressed 16-bit PCM audio — the only difference is byte order. FFmpeg simply reverses the byte ordering of each 16-bit sample; no quantization, compression, or resampling occurs. The resulting AU file is an exact bit-for-bit equivalent of the audio content in the WAV source.
Both are 16-bit signed PCM formats, meaning each audio sample is represented as a 16-bit integer. The difference is endianness: pcm_s16le stores the low byte first (little-endian, used by x86/Windows systems), while pcm_s16be stores the high byte first (big-endian, used by Sun SPARC/Unix systems). The numerical values of the samples are identical — only the in-memory byte arrangement differs. This matters because software that reads raw PCM must know the byte order to decode samples correctly.
The AU format has an extremely minimal header — it contains only the magic number, data offset, data size, encoding type, sample rate, and channel count. It has no standardized metadata fields for tags like artist, title, or album. Any ID3 or INFO chunk metadata embedded in the WAV file will be lost during conversion to AU. If preserving metadata is important, consider keeping the original WAV file alongside the AU output.
The AU format only supports a limited set of encodings, and this tool targets pcm_s16be as the most universally compatible AU codec. If your WAV source contains 24-bit (pcm_s24le) or 32-bit (pcm_s32le) audio, FFmpeg will downsample the bit depth to 16-bit during transcoding, which introduces a small amount of quantization. To preserve higher bit depths, you would need to target a different output format altogether, as AU does not support 24-bit or 32-bit PCM.
Replace '-c:a pcm_s16be' with '-c:a pcm_mulaw' in the command: 'ffmpeg -i input.wav -c:a pcm_mulaw output.au'. µ-law (G.711) is a lossy logarithmic companding codec that compresses audio to 8 bits, commonly used in telephony. Similarly, you can use '-c:a pcm_alaw' for A-law encoding, or '-c:a pcm_s8' for signed 8-bit PCM. Note that all of these reduce bit depth and will degrade audio quality compared to the default 16-bit PCM output.
On Linux or macOS, use a shell loop: 'for f in *.wav; do ffmpeg -i "$f" -c:a pcm_s16be "${f%.wav}.au"; done'. On Windows Command Prompt, use: 'for %f in (*.wav) do ffmpeg -i "%f" -c:a pcm_s16be "%~nf.au"'. Each WAV file in the current directory will be individually converted and saved as a corresponding .au file. The browser-based tool processes one file at a time, so the FFmpeg command is especially useful for bulk batch jobs.

Technical Notes

The AU container format uses a minimal 24-byte header (or longer if an annotation field is included) followed by raw audio data — making it one of the simplest audio container formats ever standardized. Because AU was designed for Sun SPARC hardware, all multi-byte values in both the header and audio data use big-endian byte order. FFmpeg writes a standard AU header with the correct magic bytes (0x2E736E64, or '.snd') and populates data size, encoding type (3 for pcm_s16be), sample rate, and channel count from the source WAV. Notably, WAV supports multi-channel layouts and high sample rates that AU handles without issue, since pcm_s16be in AU supports arbitrary sample rates and channel counts in its header fields. However, AU is rarely supported by modern consumer audio software, and files above a few seconds may not be streamable in some legacy players due to the 32-bit data size field in the header, which caps addressable size at ~4GB — not a practical concern for most use cases. Files converted with this tool are strictly conformant AU files and should be readable by any AU-aware Unix tool or Java Sound API implementation.

Related Tools