佳能CR3格式主要基于带有自定义标签的ISO基本媒体文件格式(ISO / IEC 14496-12)和新的' crx'编解码器。一些标签包含TIFF结构(例如IFD,Makernotes ...)
ExifTool的作者Phil Harvey已经确定了一些自定义TIFF标签:Canon CR3标签
CR3文件格式及其新的CRX编解码器都支持无损的“原始”。和有损' Craw'压缩。 CR2,即使是无损的原始格式,M50或EOSR也不再使用基于TIFF的格式。压缩。
CRX编解码器已经由Alexey Danilchenko反向工程,在FastRawViewer 1.5.1中实现,源代码于2019年10月发布,请参阅https://github.com/LibRaw/LibRaw/blob/master/src/decoders/crx.cpp
' Craw'表示“紧凑原始”。 CR3格式还支持双像素图片,图像序列(使用“原始连拍”模式创建的“胶卷”)和电影(CRM)。
从1DX Mark III开始,佳能使用另一种文件格式来处理10位HDR图片:HEIF,请参阅https://github.com/lclevy/canon_cr3/blob/master/heif.md。 CR3还可以存储HDR图像(使用HEVC),请参阅下面的HDR部分。
Cinema Raw Light(来自C200)的文件格式与CR3非常相似,并且也使用crx编解码器.CNCV值为' CanonCRM0001 / 02.09.00 / 00.00.00'
> python parse_cr3.py -v 2 A003C013_170923CU_CANON.CRM文件大小0x21a36e7000000:ftyp:major_brand = b' crx' minor_version = 1,[b' crx&#39 ;, b' isom'] x18)00018:moov:(0x4120)00020:uuid:b' 85c0b687820f11e08111f4ce462b6a48' (0x2a80)00038:CNCV:b' CanonCRM0001 / 02.09.00 / 00.00.00' (0x26)0005e:b' CCTP' b' 000000000000000000000001000000184343445400000000' 0x2c)0003a:b' CCDT' b' 00000000000000000000000000000000000001' (0x18)...
" CanonCR3_001 / 00.09.00 / 00.00.00"适用于EOS R,EOS RP,M50、250D,90D,M6 Mark II,M200和250D
00000004 00000001 0000000000006b88 0000000000010018(xpacket uuid的偏移量和大小)00000002 0000000000016ba0 0000000000056d90(预览uuid的偏移量和大小)00000003 000000000006d930 00000000025022b8(mdat的偏移量和大小)00000004 0000000000000000 0000000000000000?
"就CRX解码器而言,该CMP1本质上是用于编码图像的图像头(每个图像轨道都存在)。解码器使用CMP1数据解码图像轨道。"
CFA布局-仅在飞机数量> 1. 0:RGGB,1:GRBG,2:GBRG,3:BGGR。看到1代表小,0代表大(原始或抓取)
小波级别数(为小波压缩图像设置)。 0代表原始,3代表小龙虾
1 =图像水平有一个以上的图块(为小波压缩图像设置)。看到1个代表Craw big,否则显示0个
1 =图像在垂直方向上有多个图块(为小波压缩图像设置)。总是0
mdat轨道标头大小(mdat比特流数据从该标头开始)。原始小= 0x70,原始大= 0xd8,爬行小= 0x220,爬行大= 0x438
12是标签长度(4 * 3),15是当前图片(DPP中的#16),36是该卷中的图像数。
> python parse_cr3.py -v 2 canon_eos_m50_02.cr3 ... 06451:CRAW:(0x70)width = 6000,height = 4000064ab:b' JPEG' b' 00000000' (0xc)064b7:b'免费' b' 0000' (0xa)064c1:b&st39&st; b' 00000000000000010000000100000001' (0x18)064d9:b&st39; scsc' b' 0000000000000001000000010000000100000001' (0x1c)064f5:stsz:版本= 0,大小= 0x30d6ef,计数= 1(0x14)06509:b'免费' b' 00000000000000' (0xf)06518:co64:version = 0,size = 6d940,count = 1(0x18)...从mdat提取jpeg(trak0)6000x4000 ... offset = 0x6d940,size = 0x30d6ef
> python parse_cr3.py canon_eos_m50_02.cr3 ... 06635:CRAW:(0xd4)width = 1624,height = 10800668f:CMP1:(0x3c)066cb:CDI1:(0x34)066d7:IAD1:(0x28)066ff:b&# 39;免费' b' 0000' (0xa)06709:b&st39&st; b' 00000000000000010000000100000001' (0x18)06721:b&st39; scsc' b' 0000000000000001000000010000000100000001' (0x1c)0673d:stsz:版本= 0,大小= 0x1cbc40,计数= 1(0x14)06751:b' free' b' 00000000000000' (0xf)06760:co64:版本= 0,大小= 37b030,计数= 1(0x18)...从mdat提取SD crx(trak1)1624x1080 ...偏移量= 0x37b030,大小= 0x1cbc40ff01 001cbbd0 0 ff02 0007b5c0 0 1 0 0000000 ff03 0007b5c0 0 0 04 00001 b' 00000000002027a5000004000f03e0347565417b810ded0ef68019d59085af6a' (37b0a0)ff02 00070600 1 1 0 0000000 ff03 00070600 0 0 04 00002 b' 00000000002028ff00000a6000680ccecfdd76905615eb87c07047a8e10bb5a4' (3f6660)ff02 00070640 2 1 0 0000000 ff03 00070640 0 0 04 00006 b' 00000000002028d500000000004001800880baa0035a513e5a91891b50050ad5' (466c60)ff02 0006f9d0 3 1 0 0000000 ff03 0006f9d0 0 0 04 00006 b' 0000000000202cab0000020002a2b7747063b83a27ff1625fb4d52b4c41823e5' (4d72a0)
> python parse_cr3.py -v 2 canon_eos_m50_02.cr3 ... 0687d:CRAW:(0xe4)width = 6288,height = 4056068d7:CMP1:(0x3c)06913:CDI1:(0x44)0691f:IAD1:(0x38)06957 :b'免费' b' 0000' (0xa)06961:b&st39&st; b' 00000000000000010000000100000001' (0x18)06979:b&st39; stsc' b' 0000000000000001000000010000000100000001' (0x1c)06995:stsz:版本= 0,大小= 0x201ef28,计数= 1(0x14)069a9:b'免费' b' 00000000000000' (0xf)069b8:co64:版本= 0,大小= 546c70,计数= 1(0x18)...从mdat提取HD crx(trak2)6288x4056 ...偏移量= 0x546c70,大小= 0x201ef28ff01 00ff40b8 0 ff02 00405528 0 1 0 0000000 ff03 00405528 0 0 04 00006 b' 0000000000202e45000000000040039226003b15c982d276151ca7cef3aa0b22' (546d48)ff02 003fc8a8 1 1 0 0000000 ff03 003fc8a8 0 0 04 00003 b' 0000000000202fbd000000000040016000000000e801b88ac3590cd6c022df4d' (94c270)ff02 003fc6e8 2 1 0 0000000 ff03 003fc6e8 0 0 04 00005 b' 0000000000202f9d0000000002000000000a80110bf884163afc8d3d28f76fe1' (d48b18)ff02 003f5c00 3 1 0 0000000 ff03 003f5c00 0 0 04 00000 b' 0000000000202f6100000000004003ae0000000062a9c1c8002b0471075d0a2d' (1145200)ff01 0102ad98 1 ff02 0040cb88 0 1 0 0000000 ff03 0040cb88 0 0 04 00006 b' 0000000000202f6b0000000000a0064e819b8854c64481e72f454f50a3242ab2' (153ae00)ff02 0040eb50 1 1 0 0000000 ff03 0040eb50 0 0 04 00006 b' 0000000000202feb00000000004003c20000000000800b68026fcbbd264dfba5' (1947988)ff02 0040ed48 2 1 0 0000000 ff03 0040ed48 0 0 04 00002 b' 0000000000202fa10001c00001b0034367370ac4dec63b510ad0e2415a17c15f' (1d564d8)ff02 00400978 3 1 0 0000000 ff03 00400978 0 0 04 00007 b' 00000000002031db000000000040062400000001b0005e43835fa07a05efb670' (2165220)
0x2565b90:18000000 01000000 ................ 0x2565ba0:00010000 0000e207 02150c01 1c010000 ................ 0x2565bb0:10000000 03000000 00010000 ffffffff .. .............. 0x2565bc0:18000000 04000000 0001ffff 2d000100 .....................-... 0x2565bd0:ffffffff ffffffff 28000000 05000000 ........ (....... 0x2565be0:0001ffff 3f000a00 01005000 00320000 ....?..... P..2 ...... 0x256fbc0:00000000 0002b006 00009800 94042600 ..... ....& .0x256fbd0:6d004d00 01000001 ff070100 00000100 mM ............ 0x256fbe0:05000000 00000000 ........
Warning: Can only detect less than 5000 characters
Warning: Can only detect less than 5000 characters