如何使用 FFmpeg 将 WebM 转换为 MP4

在今天的教程中,我们将了解如何使用 FFmpeg 将 WebM 转为 MP4。WebM 和 MP4 都是视频容器格式,底层音频、视频和元数据可以从一种容器格式转移到另一种(也称为转换)。

现在,让我们学习使用简单的 FFmpeg 命令将 webm 转为 mp4。

FFmpeg 将 WebM 转换为 MP4 命令

要使用 FFmpeg 将 WebM 转换为 MP4,请使用以下命令:

ffmpeg -i input.webm -c:v libx264 -c:a aac output.mp4
  • -i标志表示输入文件,后跟输出文件的名称。在本例中,input.webm是要转换的 WebM 文件,output.mp4是转换后的 MP4 文件的名称。
  • -c:v libx264-c:a aac选项分别用于设置视频和音频的编解码器。在这里,libx264由于其效率, 是视频的流行选择,而aac是广泛支持的音频编解码器。

将 WebM 转为 MP4 的质量和比特率控制

ffmpeg -i input.webm -c:v libx264 -b:v 1M -c:a aac -b:a 128k output.mp4

这里,-b:v 1M将视频码率设置为1Mbit/s,将-b:a 128k音频码率设置为128Kbit/s。这些参数决定了输出文件的质量和大小。值越高,质量越好,但文件越大,反之亦然。

帧率调整

ffmpeg -i input.webm -c:v libx264 -r 24 -c:a aac output.mp4

-r选项允许您设置帧速率。此处,-r 24将帧速率设置为每秒 24 帧。此设置可以帮助同步视频和音频流,特别是在帧速率不同的文件中。

使用 FFmpeg 预设值提高效率

ffmpeg -i input.webm -c:v libx264 -preset veryfast -c:a aac output.mp4

-preset选项与转换过程的速度有关。预设范围从“超快”到“非常慢”。预设越快,转换速度就越快,但代价是文件大小变大。

使用流映射进行转换

如果 WebM 文件具有多个音频或字幕流,FFmpeg允许您将这些流映射到 MP4 文件。以下是在映射流时将 WebM 文件转换为 MP4 的方法:

ffmpeg -i input.webm -map 0:v -map 0:a -c:v libx264 -c:a aac output.mp4

-map选项选择要包含在输出文件中的流。-map 0:v映射所有视频流,而-map 0:a映射第一个输入文件中的所有音频流(在 : 之前用 0 指定 )。

使用 FFmpeg 批量转换

如果需要转换多个文件,可以使用简单的循环。例如,在类Unix系统中,可以使用以下命令:

for i in *.webm; do ffmpeg -i "$i" "${i%.*}.mp4"; done

在此循环中,${i%.*}.mp4会删除输入文件的扩展名并添加 .mp4 来生成输出文件名。

推荐阅读:

如何使用 FFmpeg 将 FLAC 转换为 MP3

FFmpeg 将 MOV 转换为 MP4 两种技巧

本文来自作者投稿,版权归原作者所有。如需转载,请注明出处:https://www.nxrte.com/jishu/30717.html

(0)

相关推荐

发表回复

登录后才能评论