如何找到松下EXIF中设置的时区
Posted
技术标签:
【中文标题】如何找到松下EXIF中设置的时区【英文标题】:How to find time zone set in Panasonic EXIF 【发布时间】:2022-01-11 05:27:15 【问题描述】:松下 Lumix GX8 没有 GPS,所以通常不知道它在哪里。但是,可以手动设置时间并设置时区。但我不知道 EXIF 数据中是否有这些信息。
TimeStamp 显示 UTM 时间,所有其他与时间相关的 EXIF 数据都是本地时间(无论为相机设置什么时间。所以相机正在存储偏移量,但我想直接获取它。
在红宝石中
require …
photo = MiniExiftool.new(fn) # fn is a filename
timeZone = (photo.CreateDate - photo.TimeStamp)/3600
puts "timeZone: #timeZone"
按预期工作。但是可以通过EXIF直接找到偏移量吗?
exiftool.org 有
Panasonic TimeInfo Tags
Index1 Tag Name Writable Values / Notes
0 PanasonicDateTime undef[8]
但对于 GX8,PanasonicDateTime 为空。
exiftool -G1 -a -s -time:all "file.rw2"
[System] FileModifyDate : 2021:12:05 18:40:45-08:00
[System] FileAccessDate : 2021:12:05 19:17:28-08:00
[System] FileInodeChangeDate : 2021:12:05 18:40:45-08:00
[IFD0] ModifyDate : 2021:11:25 15:31:34
[ExifIFD] DateTimeOriginal : 2021:11:25 15:31:34
[ExifIFD] CreateDate : 2021:11:25 15:31:34
[Panasonic] TimeStamp : 2021:11:25 22:31:34
[ExifIFD] SubSecTime : 277
[ExifIFD] SubSecTimeOriginal : 277
[ExifIFD] SubSecTimeDigitized : 277
[GPS] GPSTimeStamp : 22:31:34
[GPS] GPSDateStamp : 2021:11:25
[ExifIFD] DateTimeOriginal : 2021:11:25 15:31:34
[ExifIFD] CreateDate : 2021:11:25 15:31:34
[ExifIFD] SubSecTimeOriginal : 277
[ExifIFD] SubSecTimeDigitized : 277
[GPS] GPSTimeStamp : 22:31:34
[GPS] GPSDateStamp : 2021:11:25
[Composite] SubSecCreateDate : 2021:11:25 15:31:34.277
[Composite] SubSecDateTimeOriginal : 2021:11:25 15:31:34.277
[Composite] SubSecModifyDate : 2021:11:25 15:31:34.277
[Composite] GPSDateTime : 2021:11:25 22:31:34Z
[Composite] GPSDateTime : 2021:11:25 22:31:34Z
【问题讨论】:
您是否使用 exiftool 检查过输出?试试这个命令exiftool -G1 -a -s -time:all file.jpg
这将显示所有与时间相关的标签及其位置。
Ruby 不太可能找到您提到使用 exiftool 找到的 Panasonic 特定标签,因为它们是 MakerNotes,它们是保存在 EXIF 块的子部分中的专有标签。不同相机制造商编写 MakerNotes 的方式并不一致,甚至同一制造商的不同相机之间可能会有所不同。这还没有考虑到有时 MakerNotes 是加密的。
@StarGeek。我一直在命令行上使用 exiftool,您的选项有助于限制需要阅读的内容。我会把它添加到 OP 中。感谢您提供有关 MakerNotes 的信息。正如我提到的 exiftool.org 有一些松下领域。并且很多确实出现了,但猜不是我想要的那个。我将使用我的解决方法。
【参考方案1】:
EXIF 支持 UTC 偏移量:
9010.H
“OffsetTime”(增加132.H
“DateTime”)
9011.H
“OffsetTimeOriginal”(增加9003.H
“DateTimeOriginal”)
9011.H
“OffsetTimeDigitized”(用于扩充 9004.H
“DateTimeDigitized”)
来源:CIPA's Exif standard 2.31 from 2016,语义第 49 页,数字第 54 页。
您已经看到其他时间增强字段:SubSecTime
、SubSecTimeOriginal
和 SubSecTimeDigitized
也可用于提供毫秒。现在由 EXIF 编写器将您的时区转换为 UTC 偏移量并写入附加字段。如果任何 Panasonic 软件没有将其写入官方 EXIF 字段,请寻求他们的支持。
链接Why don't Exif tags contain time zone information?
【讨论】:
谢谢。我的相机是 Exif 2.30,就在此更改之前。我的相机于 2016 年年中问世,除了非常高端的产品外,不会经常更新。刚刚检查,最后一次更新是在 2016 年。我将继续使用我的解决方法。以上是关于如何找到松下EXIF中设置的时区的主要内容,如果未能解决你的问题,请参考以下文章
如何根据文本字段 Material UI 中设置的值将对象设置为状态
在客户端的 JavaScript 中访问 JPEG EXIF 旋转数据
如何设置 Varnish 在端口 80 上运行。/etc/default/varnish 中设置的 DAEMON_OPTS 故障