FFmpeg 命令将 MP4 文件旋转 90º

FFmpeg 命令将 MP4 文件旋转 90º

我可以使用 ffmpeg 旋转(保存、重新编码).mp4 文件吗?

我在邮件列表上找到的唯一内容是,-vfilters "rotate=90"但 ffmpeg 说“没有 vfilters”。我试过了-vf,它说“没有旋转”。

如果我尝试在 VLC 中执行此操作,它根本不会旋转并且会杀死音频。我在 Mac 上。

FFmpeg version git-svn-r23607, Copyright (c) 2000-2010 the FFmpeg developers
  built on Jun 14 2010 23:52:55 with gcc 4.2.1 (Apple Inc. build 5659)
  configuration: 
  libavutil     50.19. 0 / 50.19. 0
  libavcodec    52.76. 0 / 52.76. 0
  libavformat   52.68. 0 / 52.68. 0
  libavdevice   52. 2. 0 / 52. 2. 0
  libavfilter    1.20. 0 /  1.20. 0
  libswscale     0.11. 0 /  0.11. 0
Hyper fast Audio and Video encoder

答案1

也许应该在--enable-vfilters编译之前进行配置?顺便说一句,mencoder 做得很好,但你必须重新编码视频:

mencoder -oac copy -ovc lavc -vf rotate=1 original.mp4 -o 90_CW_rotated.mp4 mencoder -oac copy -ovc lavc -vf rotate=2 original.mp4 -o 90_CCW_rotated.mp4

答案2

使用从 SVN 提取的当前版本,您可以使用 -vf“transpose=1”旋转视频。
以下是示例:

ffmpeg -vf "transpose=1" -i input.mp4 output.mp4

转置命令的文档和选项在这里

(以下是我构建 ffmpeg 的方法,希望对您有帮助)

svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ffmpeg
cd ffmpeg
./configure --enable-shared  --disable-mmx --arch=x86_64
make
sudo make install

相关内容