移动录音的定位问题

时间:2012-05-11 17:35:16

标签: iphone video ffmpeg

当我使用FFMPEG从iPhone 4转换.mov文件和从Android转换.3gp时。 我需要将视频旋转90度,但iPhone 4s需要180度......

有什么方法可以解决这个问题吗?

3 个答案:

答案 0 :(得分:2)

我不记得Android如何处理这个问题,但是iPhone会在mov文件元数据中记录方向信息。根据录制时相机的保持方式,转换后视频可能需要0度,90度,180度甚至270度才能直立播放。 到目前为止,我还不知道ffmpeg要解析这个元数据的任何补充,所以你必须使用ffprobe -show_streams或类似的东西手动完成,然后适当地设置旋转。 < / p>

更新:正如kibitzer points out ffmpeg现在检测到视频已旋转,但尚未提供自动轮播修复。相反,您仍然需要解析轮换信息,并使用transposevfliphflip视频过滤器的组合来正确旋转视频。

答案 1 :(得分:2)

较新的ffmpeg会返回 rotate:元数据标题(运行ffmpeg -i时),指定视频旋转的角度,因此您无需解析旋转矩阵您可以使用ffmpeg的过滤器旋转视频。

例如,如果ffmpeg输出 rotate:90 ,那么你会运行如下:

ffmpeg -y -i rotated_vid.mov -vf "transpose=1" correct_video.avi

答案 2 :(得分:0)

我使用一个名为mediainfo的程序来显示方向角并输入ffmpeg选项:

-vf%ROTATE%

95%的案例中的ffmpeg了解方向,但在某些硬件中存在某些情况......