| 3 | | [[http://en.wikipedia.org/wiki/Advanced_Audio_Coding|Advanced Audio Coding (AAC)]] is the successor format to MP3, and is defined in MPEG-4 part 3 (ISO/IEC 14496-3). It is often used within an MP4 container format; for music the `.m4a` extension is customarily used. The second-most common use is within MKV (Matroska) files because it has better support for embedded text-based soft subtitles than MP4. The examples in this guide will use the extensions MP4 and M4A. |
| 4 | | |
| 5 | | FFmpeg supports three AAC-LC encoders (`aac`, `libfdk_aac`, `aac_at`) and two HE-AAC (v1/2) encoder (`libfdk_aac`, `aac_at`). The license of `libfdk_aac` is not compatible with GPL, so the GPL does not permit distribution of binaries containing incompatible code when GPL-licensed code is also included. Therefore this encoder have been designated as "non-free", and you cannot download a pre-built ffmpeg that supports it. This can be resolved by [[CompilationGuide|compiling ffmpeg]] yourself. |
| | 3 | [[http://en.wikipedia.org/wiki/Advanced_Audio_Coding|Advanced Audio Coding (AAC)]] is the successor format to MP3, and is defined in MPEG-4 part 3 (ISO/IEC 14496-3). It is often used within an MP4 container format; for music the `.m4a` extension (m4a actually is different in the bitstream so it is not enough to change the .mp4 to m4a) is customarily used. The second-most common use is within MKV and .mka (Matroska) files because it has better support for embedded text-based soft subtitles than MP4. The examples in this guide will use the extensions MP4 and M4A. |
| | 4 | |
| | 5 | FFmpeg supports three AAC-LC encoders (`aac`, `libfdk_aac`, `aac_at`) and two HE-AAC (v1/2) encoders (`libfdk_aac`, `aac_at`). The license of `libfdk_aac` is not compatible with GPL, so the GPL does not permit distribution of binaries containing incompatible code when GPL-licensed code is also included. Therefore this encoder have been designated as "non-free", and you cannot download a pre-built ffmpeg that supports it. This can be resolved by [[CompilationGuide|compiling ffmpeg]] yourself. |
| 102 | | Unfortunately, many devices that can play AAC-LC (the default profile for `libfdk_aac`) simply cannot play either version of HE-AAC, so this is not recommended for surround sound audio, which normally needs to be compatible with such hardware players. If you are only going to play it on your computer, or you are sure that your hardware player supports HE-AAC, you can aim for a bit rate of 160kb/s for version 1, or 128kb/s for version 2. As always, experiment to see what works for your ears. |
| | 102 | Unfortunately, many devices that can play AAC-LC (the default profile for `libfdk_aac`) simply cannot play either version of HE-AAC, so this is not recommended for surround sound audio, which normally needs to be compatible with such hardware players, and the bug exists that LFE is not correctly decoded in ffmpeg decoder in HE-AAC. If you are only going to play it on your computer, or you are sure that your hardware player supports HE-AAC, you can aim for a bit rate of 160kb/s for version 1, or 128kb/s for version 2. As always, experiment to see what works for your ears. |
| 123 | | The native FFmpeg AAC encoder. This is currently the second highest-quality AAC encoder available in FFmpeg and does not require an external library like the other AAC encoders described here. This is the default AAC encoder. |
| 124 | | |
| 125 | | By default, the native encoder produces AAC-LC, which is a "low complexity" profile of baseline AAC. It actually supports the more powerful "main" and "long-term prediction" profiles ([[https://ffmpeg.org/ffmpeg-codecs.html#aac|documentation]]), but these are less tested. |
| | 123 | The native FFmpeg AAC encoder, highest quality. This is the default AAC encoder and since 9.1 nmr coder is used which is better than other coders, but even twoloop is better than FDK AAC. |
| | 124 | |
| | 125 | By default, the native encoder produces AAC-LC, which is a "low complexity" profile of baseline AAC. It actually supports "long-term prediction" profile, but "main" profile was removed ([[https://ffmpeg.org/ffmpeg-codecs.html#aac|documentation]]). |