背景
最近工作中遇到一个音频混合后,导出文件播放音量不一致问题。
问题描述
给定若干个音频,时长不一:
当把它们混合在一起时,发现刚开始音量很小,而尾部部分音量又很大(等于原音频)。
ffmpeg -i 24281_1.mp3 -i 24281_2.mp3 -i 24281_3.mp3 -i 24281_4.mp3 \
-i 24281_5.mp3 -i 24281_6.mp3 -i 24281_7.mp3 \
-filter_complex "[0:a][1:a][2:a][3:a][4:a][5:a][6:a]amix=inputs=7:duration=longest[Audio]" \
-map "[Audio]" -acodec mp3 -y amix.mp3
结果amix.mp3
的音量是一开始最小,逐渐变大,直到最后一段变成和源文件一样大。
原因分析
尝试了多种方法无法解决。最终发现stackover关于该问题有一个讨论: