如何使用 FFMPEG 将 MKV 文件转换为分辨率为 640x360 的 H.264/AVC?

如何使用 FFMPEG 将 MKV 文件转换为分辨率为 640x360 的 H.264/AVC?

我有一个 MKV 视频,我想将其放入我的手机(诺基亚 XM 5800)中,并且基于我可以在上面播放 H.264/AVC 格式的视频。基于什么我读过了,容器应该是 MP4,我可以使用 XVID 编解码器对其进行编码。问题是我不知道怎么办。

由于我使用的是 Linux (Arch),我想知道是否可以使用 FFMPEG 来实现这一点。如果是这样,请告诉我如何做到这一点。我希望视频使用设备的本机屏幕尺寸 640x360,并具有相当好的视频和音频质量。

如果您还可以建议其他可以使其更轻松的工具,请提出建议。

我也更喜欢命令行工具而不是 GUI 工具。

答案1

阿维多路复用器有一个有用的 GUI 界面,可让您调整大小和转码。 mencoder(部分播放器)也可以做到这一点,但它也是命令行。

我认为ffmpeg你想要的线路是这样的:

ffmpeg -s 640x360 -i in.mkv -vcodec libx264 -o new.mp4
  • -s设置输出大小
  • -i是输入文件
  • -vcodec设置输出编解码器(请参阅ffmpeg -codecs参考资料 获取完整列表)
  • -o设置输出文件名(请参阅ffmpeg -formats参考资料 获取完整列表)

答案2

分割而不重新编码:

ffmpeg -ss [start-time] -t [length-time] -i [in-file-path] \
       -vcodec copy -acodec copy [out-file-path]

例子:

ffmpeg -ss 00:00:00.00 -t 00:10:00.00 -i "/some/path/to/file.mp4" \
       -vcodec copy -acodec copy "/some/path/to/new file.mp4"

相关内容