我正在写一些东西来获取由富士 3D 相机等相机生成的 MPO 多画面文件中包含的信息。
我有提议的规范,显然是为了混淆而写的,可以从这里获得: CIPA 多图片规范 PDF并导航了正常的 exif 部分并提取了 MFP 信息。
描述标题列表的第 5.2.3 节标题列表:
4 byte endian flag
4 byte offset
-- start of MP Index --
2 byte count
12 byte version
12 byte number of images
12 byte MP entry
12 byte Individual unique ID list
12 byte total number of capture frames
4 byte offset to next IFD.
该图显示了指向偏移量的 MP 条目和唯一 ID 列表(这将产生 12 个字节)。但是,在下面的描述中,它表明 MP 条目应该是每个图像的 16 个字节(在我的带有两个图像的示例图像中,它是),并且每个图像的单个唯一 ID 是 33 个字节(我的示例没有没有这个)。
最多图像的数量,一切都应该是。我有 2 张图片,版本正确,似乎有 3 个块(计数)。但是,第三个块(即 MP Entry)具有正确的代码、正确的字节数和正确的类型,但包含以下信息
32 00 00 00 52 00 00 00 02 00 02 20 40 63 1B 00
00 00 00 00 00 00 00 00 02 00 02 00 EE 6F 1B 00
文字说这个的内容应该是
offset length name
0x00 4 Individual Image attribute
0x04 4 individual Image Size
0x08 4 Individual image offset
0x10 2 dependant image 1 entry number
0x12 2 dependant image 2 entry number
显然,如果有两个图像(它们实际上是 10MP jpegs)它们的大小为 52 字节和 0,那么这毫无意义。
任何人都可以看看这个并检查我对它的解释是否会发疯,或者有人知道这里应该是什么吗?
抱歉,我知道这有点复杂,但我真的看不出哪里出了问题。