Free AAC test files and sample generator
Efficient lossy audio codec and successor to MP3, used by Apple and streaming services.
What is a .aac file?
AAC: Advanced Audio Coding. AAC is the codec that replaced MP3 nearly everywhere: better sound at the same bitrate, and the default for YouTube, Apple Music and digital broadcasting. A bare .aac file is an ADTS stream, a run of frames, each with a header describing the profile, sample rate and channel count. Because every frame is self-describing, a decoder can join the stream at any point, which is why the same framing carries AAC over the air in digital radio. That also makes it a good subject for truncation tests: cut an ADTS file anywhere and it still plays up to the cut.
Why generate a test AAC file?
- Test an audio upload field, a size limit or a duration check.
- Exercise a transcoder, a media player or a podcast importer.
- Check how a player handles a bare codec stream rather than a container.
What you can put inside a .aac file
You get 4 content options for AAC, so the file holds something meaningful rather than random padding: Silence, Tone (beep), Noise, Voice (synthetic). For AAC these are alternatives, so choose the one that matches what you need to test.
How a .aac file is identified
Every .aac file begins with FF F1, an ADTS frame sync; an ID3 tag may precede it. That is what a validator inspecting content rather than the file name looks for.
How the size lands on the exact byte
An ID3 tag ahead of the audio takes the padding, so every audio frame stays intact.
Negative testing with broken AAC files
- Invalid. Identifiable, but wrong inside, so it fails during parsing.
- Corrupted. The leading bytes are destroyed, so the
FF F1identifying a .aac is gone. Same length as the valid file. - Incomplete. Truncated part-way, so it is genuinely shorter.
- Empty. Chosen under Content rather than File Condition: valid structure, no data.
Which failure to reach for, and what to assert for each, is covered in how to make a corrupted file for testing. For upload limits and type checks see testing file upload validation.
Sample AAC content
[Binary audio], ADTS stream, AAC-LC 128 kbps, 48 kHz mono.
This shows the shape of the file. Your download is generated fresh at the size you choose, so the values will differ.
How to open and verify the file
Play it in VLC, or inspect the frames with `ffprobe file.aac`. Files from here carry real audio, a tone, noise or a synthetic voice, encoded by your own browser's AAC encoder, not silence.
Media type audio/aac · extension .aac · category Audio
Generate a .aac file → · questions about sizes, privacy or cost are answered on the site FAQ.
Frequently asked questions about AAC files
What identifies a .aac file?
A .aac file begins with the bytes FF F1, an ADTS frame sync; an ID3 tag may precede it. Those bytes are what a content-sniffing validator looks for, and what the Corrupted condition destroys.
How can a .aac file be an exact number of bytes?
An ID3 tag ahead of the audio takes the padding, so every audio frame stays intact.
What can go inside the AAC file?
There are 4 content options for .aac: Silence, Tone (beep), Noise, Voice (synthetic). For AAC these are alternatives, so pick the one matching what you need to test.
Can I download several broken AAC files at once?
Yes, select more than one File Condition and you get one ZIP containing a .aac per condition, each named after its condition.
Can the AAC file use UTF-16 or a byte-order mark?
No, and deliberately. A .aac file is a container rather than plain text, so rewriting its bytes as UTF-16 would not produce a UTF-16 document. It would produce a broken file. Use a text format such as CSV, JSON or XML for encoding tests.
How do I open or verify the AAC file?
Play it in VLC, or inspect the frames with ffprobe file.aac. Files from here carry real audio, a tone, noise or a synthetic voice, encoded by your own browser's AAC encoder, not silence.