我在使用 MacOSX Lion,想要一种将 webm 转换为 mp4(或其他 iTunes 兼容格式)的方法。这ffmpeg
似乎是一种可能性,但是文档对我来说有点难懂;如果能提供分步说明就更好了。
答案1
获取 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
FDK-AAC 提供比内部 AAC 编码器更好的质量。如需控制音频质量,请参阅AAC 编码指南。
答案2
这就是我在 FreeBSD 上成功使用的方法,创建了 MacOS 可以识别的 MP4 文件:
ffmpeg -i input_filename -acodec aac -b:a 128k -vcodec mpeg4 -b:v 1200k -flags +aic+mv4 output_filename.mp4
我从命令行开始使用本教程,但由于未找到后者而不得不libfaac
改为...aac
肯定存在某种影响多媒体编解码器领域程序员的特殊疯狂,导致他们巧妙地将命令行选项从一个版本更改为另一个版本。