Convert ALAC to AAC — Free Online Tool

Convert ALAC (.m4a) files to AAC format, transcoding Apple's lossless audio into efficient lossy compression using the native FFmpeg AAC encoder at 128k bitrate. Ideal for shrinking lossless Apple Music exports or iTunes library files for streaming, web playback, or storage-constrained devices.

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

ALAC (Apple Lossless Audio Codec) stores audio as a perfectly reconstructed, bit-for-bit copy of the original PCM audio, just compressed without any data loss. During this conversion, FFmpeg fully decodes the ALAC stream back to raw PCM audio, then re-encodes it from scratch using the AAC codec. This is a lossy transcode — the encoder applies perceptual audio compression, discarding audio data deemed inaudible to human ears to achieve a much smaller file size. The output is a raw AAC bitstream in an .aac container (ADTS format), rather than an MPEG-4 container. Because AAC does not support chapters, any chapter markers embedded in the source ALAC file will be dropped. Metadata tags such as artist, album, and track title may also be partially or fully lost depending on the player reading the ADTS stream.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg tool. In this browser-based tool, FFmpeg runs locally via WebAssembly (FFmpeg.wasm), so no audio data is sent to any server.
-i input.m4a Specifies the input file — an ALAC audio file in an MPEG-4 container (.m4a). FFmpeg will detect the ALAC audio stream automatically from this container.
-c:a aac Sets the audio codec to FFmpeg's built-in native AAC encoder, which will re-encode the decoded ALAC PCM audio into lossy AAC compression.
-b:a 128k Targets an audio bitrate of 128 kilobits per second for the AAC output. This is a widely used default that balances file size and audio quality well for music and general audio content.
output.aac Defines the output filename and format. The .aac extension tells FFmpeg to write a raw ADTS AAC bitstream, which is broadly compatible with media players but does not support metadata tags or chapter markers.

Common Use Cases

  • Reducing the file size of an iTunes or Apple Music library export before uploading tracks to a streaming platform or podcast host that requires AAC or lossy audio
  • Preparing ALAC-encoded audiobook files from an Apple device for playback on Android devices or non-Apple media players that support AAC but not ALAC
  • Converting lossless Apple Music downloads to AAC for use in a web audio player or HTML5 audio element where bandwidth efficiency matters
  • Archiving a large ALAC music collection in a smaller footprint while retaining Apple ecosystem and mobile compatibility via AAC
  • Creating AAC audio files from ALAC masters for distribution to clients or collaborators who need a universally compatible, lightweight audio format
  • Transcoding ALAC recordings from a DAW export to AAC for embedding in a video project or social media upload where lossless audio is unnecessary

Frequently Asked Questions

Because ALAC is lossless, you are starting from a perfect copy of the original audio — so the only quality loss introduced is by the AAC encoder itself. At 128k bitrate (the default), AAC generally produces transparent or near-transparent quality for most music and speech content, meaning most listeners will not hear a difference in normal listening conditions. However, the conversion is irreversible: once encoded to AAC, the discarded audio data cannot be recovered, so keep your original ALAC files if long-term archival quality matters.
ALAC uses lossless compression, which still stores all the audio data and typically results in files that are 40–60% the size of raw PCM WAV, but still much larger than lossy formats. AAC at 128k bitrate uses perceptual coding to discard audio data the human ear is unlikely to notice, achieving compression ratios far beyond lossless methods. A 50MB ALAC file can easily compress to 5–10MB as AAC at 128k, depending on audio complexity and duration.
ALAC files stored in an MPEG-4 container (.m4a) often carry rich iTunes-style metadata tags. When outputting to a raw .aac file (ADTS container), metadata support is very limited — most players will not read tags from ADTS AAC files at all. If metadata preservation is important, consider outputting to .m4a instead of .aac by changing the output filename, which keeps the MPEG-4 container and its tagging capabilities while using the AAC codec.
No. ALAC stored in an MPEG-4 container supports chapter markers, and audiobooks from iTunes or Apple Books often include them. AAC in ADTS format (.aac) does not support chapters, so they will be stripped during this conversion. If chapter navigation is important, you should instead convert to an M4A/M4B container with AAC audio, which retains MPEG-4 chapter support.
Replace the value after -b:a with your desired bitrate. For example, use -b:a 256k for higher quality at a larger file size, or -b:a 96k for a smaller file with slightly reduced quality. AAC generally achieves excellent quality at 128k–192k for music, and 64k–96k is often sufficient for voice or podcast content. The command would look like: ffmpeg -i input.m4a -c:a aac -b:a 192k output.aac
Yes, if your FFmpeg build includes libfdk_aac (it is not included in standard pre-built binaries due to licensing), you can replace -c:a aac with -c:a libfdk_aac in the command. The Fraunhofer FDK AAC encoder is widely regarded as producing higher quality output than FFmpeg's native AAC encoder, especially at lower bitrates. However, the native aac encoder available in this browser-based tool is still high quality and more than adequate for most use cases at 128k and above.

Technical Notes

ALAC is an Apple-developed lossless codec stored in an MPEG-4 (.m4a) container, meaning the source audio is a mathematically perfect reconstruction of the original PCM recording — there is no generational quality loss from the ALAC encoding itself. The FFmpeg command here uses FFmpeg's built-in native AAC encoder, which has been marked stable since FFmpeg 3.x and produces good quality output. The output is written as a raw ADTS AAC bitstream (.aac), which is the simplest AAC container but lacks support for metadata, chapters, or cover art. If you need those features, changing the output extension to .m4a will instruct FFmpeg to wrap the AAC audio in an MPEG-4 container instead, preserving compatibility with iTunes and Apple devices while enabling tag and artwork support. Note that ALAC does not support multiple audio tracks, so there is no multi-track handling concern for this conversion. The -b:a parameter sets a target bitrate for the AAC encoder; actual bitrate may vary slightly as FFmpeg's native AAC encoder operates in a hybrid mode. For critical listening applications, consider using 192k or 256k to maximize quality from the lossless source material.

Related Tools