如何将Macm的webm转换为mp4?


15

我在MacOSX Lion上,想要将webm转换为mp4(或其他iTunes兼容格式)的方法。ffmpeg似乎有可能,但是文档对我来说有点晦涩;分步指导将不胜感激。


您也可以使用Handbrake(如果已安装)。这是一个围绕ffmpeg的漂亮的开源GUI,非常轻松地很好地完成了这一任务。handbrake.fr
Joshua Pinter

Answers:


21

获取FFmpeg

如果要使用ffmpeg,请转到

如果您手动下载了该文件(而不是通过Homebrew进行下载),建议您将ffmpeg可执行文件复制到PATH中,以便可以从终端使用它。假设您将其下载到~/Downloads/ffmpeg/ffmpeg,然后执行以下操作:

sudo mkdir -p /usr/local/bin
sudo cp ~/Downloads/ffmpeg/ffmpeg /usr/local/bin/
sudo chmod +x !$ /usr/local/bin/ffmpeg

转换成MP4

现在,通过“至MP4”,我假设您的意思是分别将H.264和AAC用作视频和音频编解码器。为此,基本命令将是:

ffmpeg -i input.webm -c:v libx264 -c:a aac -strict experimental -b:a 192k output.mp4

如果要控制质量,请参阅x264编码指南。使用-crf选项进行设置,默认值为23,而较低则表示更好的质量(典型值为18到28)。在上面的示例中,它对视频使用默认质量23,对音频使用192 kBit / s恒定比特率。

至于音频,静态构建不支持libfdk-aac,但是如果您支持它,则应该改用它:

ffmpeg -i input.webm -c:v libx264 -c:a libfdk_aac output.mp4

与内部AAC编码器相比,FDK-AAC的质量更高。有关控制音频质量的信息,请参见AAC编码指南


我成功地在FreeBSD上以这种方式成功创建了MP4文件(来自MKV和WEBM),并且可以在FreeBSD上使用播放它们mplayer,但是Apple拒绝打开它们……
Mikhail

您的情况下谁是“苹果”?QuickTime还是Preview?您收到任何特定的错误消息吗?ffmpeg -i <您的文件>的输出是什么?
slhck

“苹果”是指他们的文件管理器。它不会从文件生成预览图像。尝试播放视频(通过双击)也会导致错误消息。同样,iMovie拒绝打开文件。
Mikhail T.

您的来源可能有一些特殊之处,导致失败。就像我说的,您在下面提供的命令会创建质量差的或多或少的“旧版”视频。让我知道到底有什么失败,我们会解决。
slhck

看起来现在是FDK-AAC参数 libfdk_aac(下划线而不是破折号)。
十二月

0

这就是我刚刚在FreeBSD上成功用于创建MP4文件的内容,MacOS会这样识别:

ffmpeg -i input_filename -acodec aac -b:a 128k -vcodec mpeg4 -b:v 1200k -flags +aic+mv4 output_filename.mp4

我从使用本教程的命令行开始,但由于未找到后者而更改libfaacaac...

在多媒体编解码器领域中,一定会有某种疯狂的现象影响程序员,这会导致他们将命令行选项从一个版本巧妙地更改为另一个版本。


尽管确实创建了一个MP4容器,但是您的命令使用了(旧的)MPEG-4 Part II编解码器,这不同于现代的H.264(请参见此处),这意味着对于任何给定的文件大小,您的视频质量都会降低。我建议不要使用此编解码器。macOS应该可以正常读取H.264视频。您可以选择“ 如何提出一个新问题”,包括有关所创建的视频和您的操作系统的详细信息,然后对我执行ping操作,然后看看为什么它不起作用。
slhck
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.