如何使用 ffmpeg 修复视频方向以匹配属性详细信息尺寸?

如何使用 ffmpeg 修复视频方向以匹配属性详细信息尺寸?

当我用手机垂直录制视频时,视频在大多数媒体视频播放器中都能正确显示。但后来我注意到,当我将视频加载到 Blender 中时,它会水平显示,就像逆时针旋转了 90 度一样。所以我检查了属性详细信息,它确实显示 1920x1080,即水平,但手机和媒体播放器在录制时会垂直显示。所以我尝试使用以下方法将其顺时针旋转 90 度:

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

因此现在它在视觉上从垂直旋转到水平,细节仍然显示 1920x1080,现在与视觉水平显示相匹配。所以现在我尝试在原始视频上做相反的事情,逆时针旋转:

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

它也从垂直旋转到水平,细节仍然显示 1920x1080。因此,逆时针和顺时针旋转 90 度都无法修复视频,但只能确保属性细节现在与视觉显示同步。

那么,如何修复原始视频以显示 1080x1920 来匹配视频的视觉垂直表示?我目前的解决方法是顺时针旋转它,然后使用以下方法逆时针旋转它:

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

看起来手机弄乱了元数据还是什么?有没有更好的方法可以解决这个问题,或者用其他命令来规范视频?

相关内容