fdk aac

github 地址: https://github.com/mstorsjo/fdk-aac

fdk-aac 提供了跨平台的编解码 aac 的功能。

编译

fdk-aac提供了CMake构建静态库和动态库。

1
2
3
4
5
6
7
cd fdk-aac
mkidr build
#BUILD_SHARED_LIBS 控制构建静态库还是动态库
cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=OFF
cmake --build --config Release
# install
cmake --install <dir> --prefix <prefix>

文档

在documentation目录下,有两个pdf文件,分别对应编码和解码相关的文档。

1
2
aacDecoder.pdf
aacEncoder.pdf

demo

fdk-aac 提供一个编码的示例aac-enc.c, 主要介绍如何实现aac 编码功能
该demo 可以通过cmake来调试。
首先在cmake 中启用该程序,给cmake 传递参数-DBUILD_PROGRAMS=TRUE

运行构建后的程序

1
aac-enc [-r bitrate] [-t aot] [-a afterburner] [-s sbr] [-v vbr] in.wav out.aac

该程序可以读取wav音频文件,编码为aac,将编码后的数据写入out.aac 文件中。

注意事项

fdk-aac 只支持采样格式为int16类型的定点格式,不支持如float32类型的浮点格式。

fdk-aac 默认一帧1024个采样。


fdk aac
https://yxibng.github.io/2022/09/23/aac/2022-09-23-fdk-aac/
作者
yxibng
发布于
2022年9月23日
许可协议