Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/115.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 使用Exiftool更新mov文件中的旋转值_Ios_Exiftool - Fatal编程技术网

Ios 使用Exiftool更新mov文件中的旋转值

Ios 使用Exiftool更新mov文件中的旋转值,ios,exiftool,Ios,Exiftool,Phil Harvey提供了一些使用Exiftool编写照片元数据的优秀示例 按照Phil的例子,我在更新JPG的现有元数据字段方面没有问题。然而,我现在正试图将相同的逻辑应用于视频元数据(MOV包装的H.264),但没有任何成功。我有一个视频,根据它拍摄的iPhone5(iOS7.1)是颠倒的-旋转值是180而不是0。因此,我正在执行“exiftool-Rotation=0[文件名]”,但得到的结果是: 已更新0个图像文件 1图像文件未更改 视频元数据有什么根本不同的地方吗?这可能是权限问题吗

Phil Harvey提供了一些使用Exiftool编写照片元数据的优秀示例

按照Phil的例子,我在更新JPG的现有元数据字段方面没有问题。然而,我现在正试图将相同的逻辑应用于视频元数据(MOV包装的H.264),但没有任何成功。我有一个视频,根据它拍摄的iPhone5(iOS7.1)是颠倒的-旋转值是180而不是0。因此,我正在执行“exiftool-Rotation=0[文件名]”,但得到的结果是:

已更新0个图像文件

1图像文件未更改

视频元数据有什么根本不同的地方吗?这可能是权限问题吗?我的execute语句不正确吗?是否有更好的方法

谢谢大家!

截至7月10日的更新: 根据Exiftool网站,我发现旋转字段无法编辑:

标记名称:旋转

可写:N

派生自:QuickTime:MatrixStructure,QuickTime:HandlerType

不幸的是,当我试图通过Exiftool更新MatrixStructure(也显示为“MatrixStructure”)时,它也失败了,并显示以下消息:“警告:抱歉,MatrixStructure不可写。”

因此,这里似乎不可能编辑相关的元数据。然而,尽管我使用的VLC和视频转码器都是颠倒处理iPhone文件的,但Adobe Premiere Pro CC和QuickTime player都是颠倒处理文件的。因此,在当前的元数据中,似乎肯定存在旋转以外的内容


再次感谢。

菲尔·哈维解释了更新特定标签的问题

作为另一种解决方案,我已经设法使用

ffmpeg -i input.mp4 -metadata:s:v rotate="180" -codec copy output.mp4
它适用于我的倒装GoPro视频


视频在VLC上以正确的方式播放,但不是Mediaplayer classic。

您可以使用最新的Exiftool旋转MOV

​ 请参考下表设置旋转。 它将应用QuickTime MOV轨迹1中的值

矩阵结构0 1 0-1 0 0 1080 0 1

垂直,主按钮向下,旋转=90

矩阵结构1 0 0 1 0 0 1

水平,主按钮为右,旋转=0

矩阵结构0-10101019201

垂直,主页按钮向上,旋转=270

矩阵结构-1 0 0 0-1 0 1920 1080 1

水平,主页按钮为左,旋转=180


我也有同样的问题。你找到解决办法了吗?
exiftool -Rotation=0 *.mov