关于AAC的编码我找了相当多的相关资料,最开始是打算使用雷霄骅同学所贡献的ffmpeg方式来做,一开始本来通过ffmpeg进行视频解码时已经使用了最新的接口,最后在参照雷神博客时发现了暗坑,雷神用的库版本支持aac编码格式为AV_SAMPLE_FMT_S16,但是新版已经只支持AV_SAMPLE_FMT_FLTP,如果参照雷神的逻辑来使用,基本上没有办法编码成功。于是只能放弃ffmpeg自带aac编码器,使用比较常用的faac来进行编码。
faac官网链接:http://www.audiocoding.com/faac.html
官网下载有时会有些问题,可以下载我的faac1.28 链接:https://pan.baidu.com/s/1xqvyZotTmPPB0D5ica8MyA 密码:xgza
下载解压后进入libfaac,用vs打开libfaac_dll_drm.sln重新生成release版本,就可以在ReleaseDLL文件里找到dll和lib文件。将库加到工程里后就可以开始编码了。
首先声明编码所需类和变量
unsigned long sampleRate = 44100; //编码采样率
unsigned