Skip to content
I Hate Online Tools

AAC to FLAC

Convert AAC to FLAC in your browser. Nothing is uploaded.

Runs in this tab. The file stays here.

This runs in your browser. Nothing is uploaded. Longer clips take longer here than they would on a fast server — that is the trade-off for not sending the file.

Format hubs: AAC · FLAC · Convert

About AAC to FLAC

Converts AAC to FLAC in your browser. Raw or ADTS AAC. Decoded here; encode goes to M4A. Output is FLAC. Nothing is uploaded.

AAC is raw or ADTS AAC. Decoded here; encode goes to M4A. FLAC is lossless compressed audio. This page is only that pair. It is not a generic dump box that guesses the destination after an upload. If you have a different container, use that format's hub instead of forcing the file through the wrong decoder.

The recording is read into memory and converted with FFmpeg compiled to WebAssembly, loaded from this origin once (~30 MB) and then cached. You can open the network tab first: you should see this origin load, and on the first video or audio visit a local ffmpeg-core.wasm, not a POST of the file. After the page (and encoder, if this is media) has loaded, wifi can go off. That is the whole product, not a badge.

FLAC is a lossless or uncompressed target. It will not restore detail a lossy AAC file already threw away. It stores the current samples or pixels more honestly, usually in a larger file. That is useful when the next tool in a chain insists on FLAC, not when you are trying to “improve” a compressed original.

Related conversions sit on this same origin. AAC to another destination, or another source into FLAC, are separate pages so the titles stay specific. The AAC hub and the FLAC hub list every pair I actually ship. Missing pairs are missing because the encoder or decoder is not here — not because they are paid.

Start from the AAC hub if you are leaving this format, or the FLAC hub if you need to arrive in it. Those pages are indexes, not upload forms. A generic dropdown still exists under Video convert and Audio convert when you would rather pick the destination after you drop the file. Stills use jSquash or canvas; clips and recordings share the same FFmpeg core as the rest of the media tools. You can disconnect after that core has loaded.

How to use AAC to FLAC

  1. 1Drop a AAC file. The in-browser encoder loads from this site the first time you open a video or audio tool.
  2. 2Click Convert. Encoding a long recording can take a while on a phone; that wait is local CPU, not an upload bar.
  3. 3Download the FLAC result. It was never on my disk.

What it won't do

  • Input is AAC (audio/aac,.aac). A different container belongs on its own pair.
  • The encoder is GPL FFmpeg in WebAssembly, single-thread, from this origin. Exotic codecs inside a familiar extension can still fail.

Common questions

Does converting AAC to FLAC upload the file?

No. This is a static page. The recording stays in the tab. The network panel should show this origin, not a POST of your AAC file.

Will AAC to FLAC look or sound the same?

Pixels or samples that are already in the AAC file are kept. Anything AAC already discarded is gone. FLAC will not invent it back.

Why is there a separate AAC to FLAC page instead of one converter?

Searchers type this pair. A generic convert tool with a dropdown is easy to build and easy to bury. Each pair is its own URL, its own title, and a file picker that expects AAC. The generic pickers still live at video convert and audio convert if you want a dropdown.

Can I convert FLAC back to AAC on this site?

Not as FLAC → AAC. AAC is decode-only or FLAC is not something I write back. Use the format hub for what actually exists.

Related tools

Why this one doesn't upload your file

There is no server to upload to. This page is a static file, and the work happens in your browser using the same graphics and WebAssembly code that renders every other site you visit. Your file is read from disk into memory, processed, and handed back as a download. Once the page has loaded you can disconnect from the network entirely and it keeps working. The longer explanation

Install the app