旋转Android视频以在网络上显示

问题描述:

我正在构建网站。我试图将第一个视频加载到它上面。这个MP4视频是纵向的,并在Android设备上录制。旋转Android视频以在网络上显示

当我把这个mp4加载到我的网站上时,它在Chrome上完美地(以纵向)播放;但是,它在Firefox浏览器中以横向播放方式播放。我意识到这是因为Chrome使用存储在mp4中的旋转元数据以正确的方向播放视频,而IE不使用此元数据。

我试图使用FFMPEG和转置,元数据&旋转命令的各种组合来纠正此问题。我正在使用MediaInfo查看与使用FFMPEG生成的文件相关的元数据。

我的问题是: 1)如果使用移调= 1,然后在FF & IE & Windows媒体播放器,将得到的视频实际上是通过旋转180度,并且所述元数据表示文件宽度和深度是与原始文件相同。 2)如果我使用-metadata:s:v rotate = 0(我也试过rotate = 90),那么MediaInfo告诉我,生成的文件宽度为&深度现在是纵向,但是FF & IE & WMP不会播放结果文件。 WMP播放声音,但没有图像,并且FF给出错误消息“加载此资源时出错”。

什么ffmpeg命令我需要用来转换一个人像MP4录制的Android设备成mp4,将在Firefox上以正确的方向播放?

在此先感谢

你将不得不重新编码,以“身体”,如果你想不尊重旋转元数据浏览器或者使用球员正确的方向发挥它旋转视频。

ffmpeg一个现代版会自动根据旋转元数据旋转视频(并避免将输入旋转元数据输出),所以只需运行:

ffmpeg -i input.mp4 -c:a copy -movflags +faststart output.mp4 
+0

辉煌 - 您的解决方案工作第一次。 https://www.aboutdogs.co.nz/why-is-video-so-hard/尝试投票您的答案,但我还没有所需的声誉:-( – Kim