FFmpeg swr_convert 音频重采样,编码的噪音问题

FFmpeg提供了这样一个API, swr_convert, 可以进行音频重采样,进而进行编码.

我们常见的应用场景,比如写mp4,我们需要将pcm转 AAC。

最新的FFmpeg已经不支持libfaac这个库了,换来的是libfdk-aac.

这点在configure --help 里面可以找到.


个人最近的一个项目里面,我们用了libfdk-aac来完成pcm-->AAC的重采样.

但是发现了一个问题,写好mp4以后,用播放器播放,背景声音总偶尔有点咔咔的噪音问题,

用mplayer几乎感觉不到。但是苹果的QuickTIme就能听到.

这对于我们这种用户体验至上的强迫症来说,是完全受不了的。哪怕一点噪音.


于是我们换了好几种采集音频的方式,比如openAL, iOS/Android/Mac自带的音频采集接口,都试过。

并用Audicity这样的软件,导入裸流,确保采集的pcm音频流没有问题。


于是就怀疑是重采样的问题。 又懒得花一两天去折腾。

于是用回libfaac 来做pcm到AAC的实时转换.(libfaac在我们过去几年的项目中运用的非常稳定,成熟。)

结果: 非常漂亮.  


小广告:

FFmpeg音视频高级开发实战5 iOS/Android/windows/Linux

http://edu.csdn.net/course/detail/2314



发布了33 篇原创文章 · 获赞 14 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/chenchao_shenzhen/article/details/78628121