关于廉价笔式相机拍摄视频Date与Date Modified元数据异常的原因咨询
结合你提到的运动相机MOV文件正常、笔式相机AVI出问题的情况,这种异常通常和设备固件的元数据处理逻辑、不同视频格式的时间戳存储机制有关,具体原因大概有这几个:
廉价设备的固件逻辑缺陷:很多低成本笔式相机的固件开发不够完善,针对AVI格式的时间戳写入只做了最基础的处理——比如只保证文件创建时的
Created时间戳(对应相机当时的系统时间)正确,但没有把拍摄日期同步写入到Date和Date Modified字段里。相比之下,运动相机的固件通常更成熟,会把拍摄时间正确映射到MOV格式的标准元数据字段,系统能自动识别并同步到文件的时间戳上。AVI与MOV的元数据存储差异:MOV(QuickTime)格式有统一的标准字段来存储拍摄日期,操作系统(比如Windows/macOS)能直接读取这个字段并映射到文件的
Date/Date Modified属性;但AVI格式没有官方统一的拍摄日期元数据规范,不同厂商的实现五花八门。廉价相机可能根本没把拍摄时间写入到系统能识别的AVI元数据位置,导致系统只能用文件最后被修改的时间(比如相机写完视频数据的时间,甚至是出厂预设的固定时间)来填充Date Modified。相机内部时间戳的写入时机问题:有些笔式相机在拍摄视频时,会先创建文件(此时生成正确的
Created时间),但后续写入视频数据时,没有更新文件的Date Modified时间为拍摄结束的时间,而是保留了某个中间环节的时间(比如相机启动时间、固件默认时间)。而运动相机通常会在拍摄结束时,把拍摄的起止时间同步更新到文件的时间戳上。操作系统对不同格式的时间戳解析逻辑不同:部分系统对MOV文件会优先读取其内置的拍摄日期元数据来显示
Date属性,而对AVI文件则默认使用文件系统层面的修改时间。如果相机没给AVI写入对应的拍摄元数据,系统就只能显示错误的时间戳。
内容的提问来源于stack exchange,提问作者David J. Myers

