当使用ffmpeg转换到.mp4时,从iPhone中捕获的视频将被旋转

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (60)

当我试图在我的应用程序中上传从iPhone上捕获的视频时,服务器会执行从.mov到.mp4的转换,以便在其他平台上播放。然而,问题是,当我拍摄视频(在纵向方向),它被转换(使用ffmpeg),然后从服务器播放,它似乎是旋转的。有什么想法吗?

提问于
用户回答回答于

根据你拥有的ffmpeg版本及其编译方式,以下其中一项应该可行

ffmpeg -vfilters "rotate=90" -i input.mov output.mp4

或者

ffmpeg -vf "transpose=1" -i input.mov output.mp4
用户回答回答于

FFMPEG 最近将默认行为更改为使用“旋转”元数据自动旋转输入视频源。

所以这个问题的新解决方案是将FFMPEG更新为2.7或git master分支。

在你的过滤器再次旋转之前,FFMPEG会旋转你的视频,导致原始问题再次出现。如果你不想升级到2.7,但希望确保你未来可以使用,则可以选择关闭自动旋转功能-noautorotate

ffmpeg -noautorotate -i input.mp4...

这将适用于2.7及更新版本的旧版本(如果升级到当时维护的最新补丁版本的分支机构,则可能性较高)。

扫码关注云+社区

领取腾讯云代金券