音频混音在音视频开发中是十分重要的一个环节,所谓音频混音就是将所有需要混音的数据相加得到混音数据,然后通过某个算法进行非法数据的处理;例如相加数值超过最大值,最小值等!

        在实际的音频开发中,要实现混音的流程如下:

ffmpeg 滤镜实现不同采样率多音频混音-LMLPHP

        因此我们的编码实现就分为五部分:寻找解码器,音频解码,混音,创建编码器,音频编码;

1.寻找解码器

ffmpeg 滤镜实现不同采样率多音频混音-LMLPHP

avformat_open_input:打开音频文件,解析其音频信息

avformat_find_stream_info:获取音频信息,返回媒体编号

av_find_best_stream:获取媒体流解码器

avcodec_alloc_context3:创建解码器参数结构

avcodec_parameters_to_context:将解析到的音频解码器参数复制到创建的解码器

avcodec_open2:初始化解码器

av_read_frame:读取音频数据

2. 音频解码

03-20 20:16