FFmpeg 输出 AAC

本文最后更新于:4 年前

Reference

  • 《FFmpeg 从入门到精通》

AAC

与 MP3 相比,AAC 是一种编码效率更高、编码音质更好的音频编码格式,常见的使用 AAC 编码后的文件存储格式为 m4a。


抽取 MP4 文件中的音频为 AAC

1、输入命令:

1
ffmpeg -i sample.mp4 -c:a aac -b:a 160k output.aac

2、输出结果:

使用 q 参数

q 表示 qscale,有效范围为 0.1~2,用于设置 AAC 音频的 VBR 质量。

1、输入命令:

1
ffmpeg -i sample.mp4 -c:a aac -q:a 2 output.aac

2、输出结果:


FDK AAC 第三方的 AAC 编解码 Codec 库

FDK AAC 是 FFmpeg 支持的第三方编码库中质量最高的 AAC 编码库。

恒定码率(CBR)模式

1、输入命令:

1
ffmpeg -i sample.mp4 -c:a libfdk_aac -b:a 128k output.aac

2、输出结果:

动态码率(VBR)模式

VBR|每声道码率(kbit/s)|码率信息
–|–
1|20~32|LC、HE、HEv2
2|32~40|LC、HE、HEv2
3|48~56|LC、HE、HEv2
4|64~72|LC
5|96~112|LC

  • LC:Low Complexity AAC,这种编码相对来说体积比较大,质量稍差
  • HE:High-Efficiency AAC,这种编码相对来说体积稍小,质量较好
  • HEv2:High-Efficiency AAC version2,这种编码相对来说体积小,质量优

AAC 编码 LC、HE、HEv2 推荐参数

编码类型码率范围(bit/s)支持的采样率/kHz推荐的采样率/kHz声道数
HE-AAC v2(AAC LC + SBR + P)8000 ~ 1199922.05, 24.0024.002
12000 ~ 1799932.0032.002
18000 ~ 3999932.00, 44.10, 48.0044.102
40000 ~ 5600032.00, 44.10, 48.0048.002
HE-AAC(AAC LC + SBR)8000 ~ 1199922.05, 24.0024.001
12000 ~ 1799932.0032.001
18000 ~ 3999932.00, 44.10, 48.0044.101
40000 ~ 5600032.00, 44.10, 48.0048.001
16000 ~ 2799932.00, 44.10, 48.0032.002
28000 ~ 6399932.00, 44.10, 48.0044.102
64000 ~ 12800032.00, 44.10, 48.0048.002
HE-AAC(AAC LC + SBR)64000 ~ 6999932.00, 44.10, 48.0032.005, 5.1
70000 ~ 15999932.00, 44.10, 48.0044.105, 5.1
160000 ~ 24599932.00, 44.10, 48.0048.005
160000 ~ 26599932.00, 44.10, 48.0048.005.1
AAC LC8000 ~ 1599911.025, 12.00, 16.0012.001
16000 ~ 2399916.0016.001
24000 ~ 3199916.00, 22.05, 24.0024.001
32000 ~ 5599932.0032.001
56000 ~ 16000032.00, 44.10, 48.0044.101
160001 ~ 28800048.0048.001
AAC LC16000 ~ 2399911.025, 12.00, 16.0012.002
24000 ~ 3199916.0016.002
32000 ~ 3999916.00, 22.05, 24.0022.052
40000 ~ 9599932.0032.002
96000 ~ 11199932.00, 44.10, 48.0032.002
112000 ~ 32000132.00, 44.10, 48.0044.102
320002 ~ 57600048.0048.002
AAC LC160000 ~ 23999932.0032.005, 5.1
240000 ~ 27999932.00, 44.10, 48.0032.005, 5.1
280000 ~ 80000032.00, 44.10, 48.0044.105, 5.1

压缩为 AAC 编码的 m4a 容器

1、输入命令:

1
ffmpeg -i sample.mp4 -c:a libfdk_aac output.m4a

2、输出结果:


高质量 AAC 设置

HE-AAC 音频编码设置

1、输入命令:

1
ffmpeg -i sample.mp4 -c:a libfdk_aac -profile:a aac_he -b:a 64k output.aac

2、输出结果:

HEv2-AAC 音频编码设置

1、输入命令:

1
ffmpeg -i sample.mp4 -c:a libfdk_aac -profile:a aac_he_v2 -b:a 32k output.aac

2、输出结果(失败):



FFmpeg 输出 AAC
https://weichao.io/a4d5af186c6a/
作者
魏超
发布于
2018年7月29日
更新于
2018年12月7日
许可协议