我应该将MP3或AAC编解码器用于.mp4文件吗?

时间:2012-02-06 23:35:08

标签: ffmpeg mp3 h.264 mp4 aac

我们在Mac OS X上使用 ffmpeg 进行了编码处理。此过程将采用源视频和几个文件:.m3u8视频,.mp4视频和.mp3音频文件

默认情况下,我们使用了m3u8进程中的视频,该视频是带有AAC(通过 libfaac )音频的h264(通过 libx264 )视频。

我们主要在移动设备上使用这些视频(因此是m3u8文件),但我们也使用Android,Windows Phone等的.mp4文件。越来越多的我们还需要通过网络提供这些相同的视频一个Flash播放器或HTML5播放器。

因此,我们希望为所有这些用途提供最好的音频/视频编解码器组合......我感到困惑的是.mp4文件的“标准”是什么?

如果.mp4使用mp3编解码器,那么除了QuickTime之外它在任何地方播放都很好,在QuickTime中视频播放但没有音频(在VLC播放器中工作得很好。)

我被告知这是因为QuickTime如何使用文件扩展来假设有关视频的信息,而不是试图从文件中实际获取编解码器数据?这确实有道理,如果我们编码相同的文件但是使用AAC作为音频编解码器,那么它在QuickTime中工作得很好。

所以---什么是“正确的”或“理想的”音频/视频编解码器组合---使用AAC是最好和最安全的(即它可以在广泛的设备上工作),即使它不是“免费“编解码器?

4 个答案:

答案 0 :(得分:5)

预留兼容性问题,您可能需要考虑从mp3转换为aac所导致的质量损失。由于你的原始音频是mp3编码的,你可以通过重新转换mp3比特流而不是转码到aac来获得更好的最终结果(即使aac比给定比特率的mp3更好)。

如果你的工作流程需要降低原始mp3的比特率,那么我的观点就失去了相关性。

答案 1 :(得分:3)

AAC是首选,因为许多现代设备(如平板电脑和手机)都可能配备硬件解码器,从而实现更好的电池消耗和更低的CPU消耗。同样适用于h264

答案 2 :(得分:2)

http://en.wikipedia.org/wiki/HTML5_video - 向下滚动以查找兼容性表格。好像MP3或AAC都适用于H.264

答案 3 :(得分:0)

如你所说,绝对使用AAC编解码器,它适用于更广泛的设备,最好在HTML5中使用