Ignore:
Timestamp:
Feb 27, 2010, 12:44:30 AM (15 years ago)
Author:
grum
Message:

Canon camera's maker note implementation + extended Xmp segments managed

Location:
extensions/AMetaData/JpegMetaData/TagDefinitions
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • extensions/AMetaData/JpegMetaData/TagDefinitions/CanonTags.class.php

    r4935 r4972  
    5454
    5555  /**
    56    * Define the tags for Nikon camera
     56   * Define the tags for Canon camera
    5757   */
    5858  class CanonTags extends KnownTags
     
    7474
    7575      /*
    76        * The 'CanonCameraSettings' tags is composed of 46 sub tags
     76       * The 'CanonCameraSettings' tags is composed by an array of sub tags
    7777       * Each subtag name is defined bu the class by the concatenation of
    78        * "CanonCameraSettings" and the subtag nam
     78       * "CanonCameraSettings" and the subtag name
    7979       *
    8080       * Giving something like :
     
    8282       *
    8383       * This kind of data needs a particular algorythm in the CanonReader class
     84       * provided by the processSubTag0x0001 function
     85       *
     86       * Keys are defined by a string build with :
     87       *  - the tag number in hexa "0x0001"
     88       *  - a dot "."
     89       *  - sub tag number in decimal "10"
     90       *  ==> "0x0001.10" => "CanonCameraSettings.CanonImageSize"
    8491       *
    8592       * >>> Begin of CanonCameraSettings subtags
    8693       *
    8794       */
    88       "0001.1" => Array(
     95      "0x0001.1" => Array(
    8996        'tagName'     => "CanonCameraSettings.MacroMode",
    9097        'schema'      => "Canon",
     
    98105      ),
    99106
    100       "0001.2" => Array(
     107      "0x0001.2" => Array(
    101108        'tagName'     => "CanonCameraSettings.SelfTimer",
    102109        'schema'      => "Canon",
    103         'translatable'=> false,
    104         'combiTag'    => 0,
    105         'implemented' => false,
    106       ),
    107 
    108       "0001.3" => Array(
     110        'translatable'=> true,
     111        'combiTag'    => 0,
     112        'implemented' => true,
     113      ),
     114
     115      "0x0001.3" => Array(
    109116        'tagName'     => "CanonCameraSettings.Quality",
    110117        'schema'      => "Canon",
     
    122129      ),
    123130
    124       "0001.4" => Array(
     131      "0x0001.4" => Array(
    125132        'tagName'     => "CanonCameraSettings.CanonFlashMode",
    126133        'schema'      => "Canon",
     
    140147      ),
    141148
    142       "0001.5" => Array(
     149      "0x0001.5" => Array(
    143150        'tagName'     => "CanonCameraSettings.ContinuousDrive",
    144151        'schema'      => "Canon",
     
    156163      ),
    157164
    158       "0001.7" => Array(
     165      "0x0001.7" => Array(
    159166        'tagName'     => "CanonCameraSettings.FocusMode",
    160167        'schema'      => "Canon",
     
    174181      ),
    175182
    176       "0001.9" => Array(
     183      "0x0001.9" => Array(
    177184        'tagName'     => "CanonCameraSettings.RecordMode",
    178185        'schema'      => "Canon",
     
    191198      ),
    192199
    193       "0001.10" => Array(
     200      "0x0001.10" => Array(
    194201        'tagName'     => "CanonCameraSettings.CanonImageSize",
    195202        'schema'      => "Canon",
     
    211218      ),
    212219
     220      "0x0001.11" => Array(
     221        'tagName'     => "CanonCameraSettings.EasyMode",
     222        'schema'      => "Canon",
     223        'translatable'=> true,
     224        'combiTag'    => 0,
     225        'implemented' => true,
     226        'tagValues'   => Array(
     227            0x00 => "Full auto",
     228            0x01 => "Manual",
     229            0x02 => "Landscape",
     230            0x03 => "Fast shutter",
     231            0x04 => "Slow shutter",
     232            0x05 => "Night",
     233            0x06 => "Gray Scale",
     234            0x07 => "Sepia",
     235            0x08 => "Portrait",
     236            0x09 => "Sports",
     237            0x0a => "Macro",
     238            0x0b => "Black & White",
     239            0x0c => "Pan focus",
     240            0x0d => "Vivid",
     241            0x0e => "Neutral",
     242            0x0f => "Flash Off",
     243            0x10 => "Long Shutter",
     244            0x11 => "Super Macro",
     245            0x12 => "Foliage",
     246            0x13 => "Indoor",
     247            0x14 => "Fireworks",
     248            0x15 => "Beach",
     249            0x16 => "Underwater",
     250            0x17 => "Snow",
     251            0x18 => "Kids & Pets",
     252            0x19 => "Night Snapshot",
     253            0x1a => "Digital Macro",
     254            0x1b => "My Colors",
     255            0x1c => "Still Image",
     256            0x1d => "Color Accent",
     257            0x1e => "Color Swap",
     258            0x20 => "Aquarium",
     259            0x21 => "ISO 3200",
     260            0x26 => "Creative Auto",
     261            0x105 => "Sunset",
     262          ),
     263      ),
     264
     265      "0x0001.12" => Array(
     266        'tagName'     => "CanonCameraSettings.DigitalZoom",
     267        'schema'      => "Canon",
     268        'translatable'=> true,
     269        'combiTag'    => 0,
     270        'implemented' => true,
     271        'tagValues'   => Array(
     272            0 => "None",
     273            1 => "2x",
     274            2 => "4x",
     275            3 => "Other",
     276          ),
     277      ),
     278
     279      "0x0001.13" => Array(
     280        'tagName'     => "CanonCameraSettings.Contrast",
     281        'schema'      => "Canon",
     282        'translatable'=> false,
     283        'combiTag'    => 0,
     284        'implemented' => false,
     285      ),
     286
     287      "0x0001.14" => Array(
     288        'tagName'     => "CanonCameraSettings.Saturation",
     289        'schema'      => "Canon",
     290        'translatable'=> false,
     291        'combiTag'    => 0,
     292        'implemented' => false,
     293      ),
     294
     295      "0x0001.15" => Array(
     296        'tagName'     => "CanonCameraSettings.Sharpness",
     297        'schema'      => "Canon",
     298        'translatable'=> false,
     299        'combiTag'    => 0,
     300        'implemented' => false,
     301      ),
     302
     303      "0x0001.16" => Array(
     304        'tagName'     => "CanonCameraSettings.CameraISO",
     305        'schema'      => "Canon",
     306        'translatable'=> false,
     307        'combiTag'    => 0,
     308        'implemented' => false,
     309      ),
     310
     311      "0x0001.17" => Array(
     312        'tagName'     => "CanonCameraSettings.MeteringMode",
     313        'schema'      => "Canon",
     314        'translatable'=> true,
     315        'combiTag'    => 0,
     316        'implemented' => true,
     317        'tagValues'   => Array(
     318            0x00 => "Default",
     319            0x01 => "Spot",
     320            0x02 => "Average",
     321            0x03 => "Evaluative",
     322            0x04 => "Partial",
     323            0x05 => "Center-weighted average",
     324        ),
     325      ),
     326
     327      "0x0001.18" => Array(
     328        'tagName'     => "CanonCameraSettings.FocusRange",
     329        'schema'      => "Canon",
     330        'translatable'=> true,
     331        'combiTag'    => 0,
     332        'implemented' => true,
     333        'tagValues'   => Array(
     334            0x00 => "Manual",
     335            0x01 => "Auto",
     336            0x02 => "Not Known",
     337            0x03 => "Macro",
     338            0x04 => "Very Close",
     339            0x05 => "Close",
     340            0x06 => "Middle Range",
     341            0x07 => "Far Range",
     342            0x08 => "Pan Focus",
     343            0x09 => "Super Macro",
     344            0x0a => "Infinity"
     345        ),
     346      ),
     347
     348      "0x0001.18" => Array(
     349        'tagName'     => "CanonCameraSettings.FocusRange",
     350        'schema'      => "Canon",
     351        'translatable'=> true,
     352        'combiTag'    => 0,
     353        'implemented' => true,
     354        'tagValues'   => Array(
     355            0x00 => "Manual",
     356            0x01 => "Auto",
     357            0x02 => "Not Known",
     358            0x03 => "Macro",
     359            0x04 => "Very Close",
     360            0x05 => "Close",
     361            0x06 => "Middle Range",
     362            0x07 => "Far Range",
     363            0x08 => "Pan Focus",
     364            0x09 => "Super Macro",
     365            0x0a => "Infinity"
     366        ),
     367      ),
     368
     369      "0x0001.19" => Array(
     370        'tagName'     => "CanonCameraSettings.AFPoint",
     371        'schema'      => "Canon",
     372        'translatable'=> true,
     373        'combiTag'    => 0,
     374        'implemented' => true,
     375        'tagValues'   => Array(
     376            0x2005 => "Manual AF point selection",
     377            0x3000 => "None (MF)",
     378            0x3001 => "Auto AF point selection",
     379            0x3002 => "Right",
     380            0x3003 => "Center",
     381            0x3004 => "Left",
     382            0x4001 => "Auto AF point selection",
     383            0x4006 => "Face Detect"
     384        ),
     385      ),
     386
     387      "0x0001.20" => Array(
     388        'tagName'     => "CanonCameraSettings.CanonExposureMode",
     389        'schema'      => "Canon",
     390        'translatable'=> true,
     391        'combiTag'    => 0,
     392        'implemented' => true,
     393        'tagValues'   => Array(
     394            0 => "Easy",
     395            1 => "Program AE",
     396            2 => "Shutter speed priority AE",
     397            3 => "Aperture-priority AE",
     398            4 => "Manual",
     399            5 => "Depth-of-field AE",
     400            6 => "M-Dep",
     401            7 => "Bulb"
     402        ),
     403      ),
     404
     405      "0x0001.22" => Array(
     406        'tagName'     => "CanonCameraSettings.LensType",
     407        'schema'      => "Canon",
     408        'translatable'=> false,
     409        'combiTag'    => 0,
     410        'implemented' => true,
     411        'tagValues.special' => Array(
     412              /* some lenses have the same Id. In this case associated name is
     413               * not a single string, but an Array
     414               *
     415               * the lens CanonReader->processSubTag0x0001 function try to find
     416               * to good lens by looking in each name if the ShortFocal-LongFocal
     417               * correspond
     418               */
     419         0xffff => "Unknown lens",
     420              1 => "Canon EF 50mm f/1.8",
     421              2 => "Canon EF 28mm f/2.8",
     422              3 => "Canon EF 135mm f/2.8 Soft",
     423              4 => Array(
     424                      "Canon EF 35-105mm f/3.5-4.5",
     425                      "Sigma UC Zoom 35-135mm f/4-5.6",
     426                    ),
     427              5 => "Canon EF 35-70mm f/3.5-4.5",
     428              6 => Array(
     429                      "Canon EF 28-70mm f/3.5-4.5",
     430                      "Sigma 18-50mm f/3.5-5.6 DC",
     431                      "Sigma 18-125mm f/3.5-5.6 DC IF ASP",
     432                      "Tokina AF193-2 19-35mm f/3.5-4.5",
     433                    ),
     434              7 => "Canon EF 100-300mm f/5.6L",
     435              8 => Array(
     436                      "Canon EF 100-300mm f/5.6",
     437                      "Sigma 70-300mm f/4-5.6 DG Macro",
     438                      "Tokina AT-X242AF 24-200mm f/3.5-5.6",
     439                    ),
     440              9 => Array(
     441                      "Canon EF 70-210mm f/4",
     442                      "Sigma 55-200mm f/4-5.6 DC",
     443                    ),
     444              10 => Array(
     445                      "Canon EF 50mm f/2.5 Macro",
     446                      "Sigma 50mm f/2.8 EX",
     447                      "Sigma 28mm f/1.8",
     448                      "Sigma 105mm f/2.8 Macro EX",
     449                    ),
     450              11 => "Canon EF 35mm f/2",
     451              13 => "Canon EF 15mm f/2.8 Fisheye",
     452              14 => "Canon EF 50-200mm f/3.5-4.5L",
     453              15 => "Canon EF 50-200mm f/3.5-4.5",
     454              16 => "Canon EF 35-135mm f/3.5-4.5",
     455              17 => "Canon EF 35-70mm f/3.5-4.5A",
     456              18 => "Canon EF 28-70mm f/3.5-4.5",
     457              20 => "Canon EF 100-200mm f/4.5A",
     458              21 => "Canon EF 80-200mm f/2.8L",
     459              22 => Array(
     460                        "Canon EF 20-35mm f/2.8L",
     461                        "Tokina AT-X280AF PRO 28-80mm f/2.8 Aspherical",
     462                      ),
     463              23 => "Canon EF 35-105mm f/3.5-4.5",
     464              24 => "Canon EF 35-80mm f/4-5.6 Power Zoom",
     465              25 => "Canon EF 35-80mm f/4-5.6 Power Zoom",
     466              26 => Array(
     467                        "Canon EF 100mm f/2.8 Macro",
     468                        "Cosina 100mm f/3.5 Macro AF",
     469                        "Tamron SP AF 90mm f/2.8 Di Macro",
     470                        "Tamron SP AF 180mm f/3.5 Di Macro",
     471                        "Carl Zeiss Planar T* 50mm f/1.4",
     472                      ),
     473              27 => "Canon EF 35-80mm f/4-5.6",
     474              28 => Array(
     475                        "Canon EF 80-200mm f/4.5-5.6",
     476                        "Tamron SP AF 28-105mm f/2.8 LD Aspherical IF",
     477                        "Tamron SP AF 28-75mm f/2.8 XR Di LD Aspherical [IF] Macro",
     478                        "Tamron AF 70-300mm f/4.5-5.6 Di LD 1:2 Macro Zoom",
     479                        "Tamron AF Aspherical 28-200mm f/3.8-5.6",
     480                      ),
     481              29 => "Canon EF 50mm f/1.8 MkII",
     482              30 => "Canon EF 35-105mm f/4.5-5.6",
     483              31 => Array(
     484                        "Canon EF 75-300mm f/4-5.6",
     485                        "Tamron SP AF 300mm f/2.8 LD IF",
     486                      ),
     487              32 => Array(
     488                        "Canon EF 24mm f/2.8",
     489                        "Sigma 15mm f/2.8 EX Fisheye",
     490                      ),
     491              33 => "Voigtlander Ultron 40mm f/2 SLII Aspherical",
     492              35 => "Canon EF 35-80mm f/4-5.6",
     493              36 => "Canon EF 38-76mm f/4.5-5.6",
     494              37 => Array(
     495                        "Canon EF 35-80mm f/4-5.6",
     496                        "Tamron 70-200mm f/2.8 Di LD IF Macro",
     497                        "Tamron AF 28-300mm f/3.5-6.3 XR Di VC LD Aspherical [IF] Macro Model A20",
     498                      ),
     499              38 => "Canon EF 80-200mm f/4.5-5.6",
     500              39 => "Canon EF 75-300mm f/4-5.6",
     501              40 => "Canon EF 28-80mm f/3.5-5.6",
     502              41 => "Canon EF 28-90mm f/4-5.6",
     503              42 => Array(
     504                        "Canon EF 28-200mm f/3.5-5.6",
     505                        "Tamron AF 28-300mm f/3.5-6.3 XR Di VC LD Aspherical [IF] Macro Model A20",
     506                      ),
     507              43 => "Canon EF 28-105mm f/4-5.6",
     508              44 => "Canon EF 90-300mm f/4.5-5.6",
     509              45 => "Canon EF-S 18-55mm f/3.5-5.6",
     510              46 => "Canon EF 28-90mm f/4-5.6",
     511              48 => "Canon EF-S 18-55mm f/3.5-5.6 IS",
     512              49 => "Canon EF-S 55-250mm f/4-5.6 IS",
     513              50 => "Canon EF-S 18-200mm f/3.5-5.6 IS",
     514              51 => "Canon EF-S 18-135mm f/3.5-5.6 IS",
     515              94 => "Canon TS-E 17mm f/4L",
     516              95 => "Canon TS-E 24.0mm f/3.5 L II",
     517              124 => "Canon MP-E 65mm f/2.8 1-5x Macro Photo",
     518              125 => "Canon TS-E 24mm f/3.5L",
     519              126 => "Canon TS-E 45mm f/2.8",
     520              127 => "Canon TS-E 90mm f/2.8",
     521              129 => "Canon EF 300mm f/2.8L",
     522              130 => "Canon EF 50mm f/1.0L",
     523              131 => Array(
     524                        "Canon EF 28-80mm f/2.8-4L",
     525                        "Sigma 8mm f/3.5 EX DG Circular Fisheye",
     526                        "Sigma 17-35mm f/2.8-4 EX DG Aspherical HSM",
     527                        "Sigma 17-70mm f/2.8-4.5 DC Macro",
     528                        "Sigma APO 50-150mm f/2.8 [II] EX DC HSM",
     529                        "Sigma APO 120-300mm f/2.8 EX DG HSM",
     530                      ),
     531              132 => "Canon EF 1200mm f/5.6L",
     532              134 => "Canon EF 600mm f/4L IS",
     533              135 => "Canon EF 200mm f/1.8L",
     534              136 => "Canon EF 300mm f/2.8L",
     535              137 => Array(
     536                        "Canon EF 85mm f/1.2L",
     537                        "Sigma 18-50mm f/2.8-4.5 DC OS HSM",
     538                        "Sigma 50-200mm f/4-5.6 DC OS HSM",
     539                        "Sigma 18-250mm f/3.5-6.3 DC OS HSM",
     540                        "Sigma 24-70mm f/2.8 IF EX DG HSM",
     541                        "Sigma 18-125mm f/3.8-5.6 DC OS HSM",
     542                      ),
     543              138 => "Canon EF 28-80mm f/2.8-4L",
     544              139 => "Canon EF 400mm f/2.8L",
     545              140 => "Canon EF 500mm f/4.5L",
     546              141 => "Canon EF 500mm f/4.5L",
     547              142 => "Canon EF 300mm f/2.8L IS",
     548              143 => "Canon EF 500mm f/4L IS",
     549              144 => "Canon EF 35-135mm f/4-5.6 USM",
     550              145 => "Canon EF 100-300mm f/4.5-5.6 USM",
     551              146 => "Canon EF 70-210mm f/3.5-4.5 USM",
     552              147 => "Canon EF 35-135mm f/4-5.6 USM",
     553              148 => "Canon EF 28-80mm f/3.5-5.6 USM",
     554              149 => "Canon EF 100mm f/2 USM",
     555              150 => Array(
     556                        "Canon EF 14mm f/2.8L",
     557                        "Sigma 20mm EX f/1.8",
     558                        "Sigma 30mm f/1.4 DC HSM",
     559                        "Sigma 24mm f/1.8 DG Macro EX",
     560                      ),
     561              151 => "Canon EF 200mm f/2.8L",
     562              152 => Array(
     563                        "Canon EF 300mm f/4L IS",
     564                        "Sigma 12-24mm f/4.5-5.6 EX DG ASPHERICAL HSM",
     565                        "Sigma 14mm f/2.8 EX Aspherical HSM",
     566                        "Sigma 10-20mm f/4-5.6",
     567                        "Sigma 100-300mm f/4",
     568                      ),
     569              153 => Array(
     570                        "Canon EF 35-350mm f/3.5-5.6L",
     571                        "Sigma 50-500mm f/4-6.3 APO HSM EX",
     572                        "Tamron AF 28-300mm f/3.5-6.3 XR LD Aspherical [IF] Macro",
     573                        "Tamron AF 18-200mm f/3.5-6.3 XR Di II LD Aspherical [IF] Macro Model A14",
     574                        "Tamron 18-250mm f/3.5-6.3 Di II LD Aspherical [IF] Macro",
     575                      ),
     576              154 => "Canon EF 20mm f/2.8 USM",
     577              155 => "Canon EF 85mm f/1.8 USM",
     578              156 => "Canon EF 28-105mm f/3.5-4.5 USM",
     579              160 => Array(
     580                        "Canon EF 20-35mm f/3.5-4.5 USM",
     581                        "Tamron AF 19-35mm f/3.5-4.5",
     582                      ),
     583              161 => Array(
     584                        "Canon EF 28-70mm f/2.8L",
     585                        "Sigma 24-70mm EX f/2.8",
     586                        "Tamron 90mm f/2.8",
     587                        "Tamron AF 17-50mm f/2.8 Di-II LD Aspherical",
     588                      ),
     589              162 => "Canon EF 200mm f/2.8L",
     590              163 => "Canon EF 300mm f/4L",
     591              164 => "Canon EF 400mm f/5.6L",
     592              165 => "Canon EF 70-200mm f/2.8 L",
     593              166 => "Canon EF 70-200mm f/2.8 L + 1.4x",
     594              167 => "Canon EF 70-200mm f/2.8 L + 2x",
     595              168 => "Canon EF 28mm f/1.8 USM",
     596              169 => Array(
     597                        "Canon EF 17-35mm f/2.8L",
     598                        "Sigma 18-200mm f/3.5-6.3 DC OS",
     599                        "Sigma 15-30mm f/3.5-4.5 EX DG Aspherical",
     600                        "Sigma 18-50mm f/2.8 Macro",
     601                        "Sigma 50mm f/1.4 EX DG HSM",
     602                      ),
     603              170 => "Canon EF 200mm f/2.8L II",
     604              171 => "Canon EF 300mm f/4L",
     605              172 => "Canon EF 400mm f/5.6L",
     606              173 => Array(
     607                        "Canon EF 180mm Macro f/3.5L",
     608                        "Sigma 180mm EX HSM Macro f/3.5",
     609                        "Sigma APO Macro 150mm f/2.8 EX DG HSM",
     610                      ),
     611              174 => "Canon EF 135mm f/2L",
     612              175 => "Canon EF 400mm f/2.8L",
     613              176 => "Canon EF 24-85mm f/3.5-4.5 USM",
     614              177 => "Canon EF 300mm f/4L IS",
     615              178 => "Canon EF 28-135mm f/3.5-5.6 IS",
     616              179 => "Canon EF 24mm f/1.4L",
     617              180 => "Canon EF 35mm f/1.4L",
     618              181 => "Canon EF 100-400mm f/4.5-5.6L IS + 1.4x",
     619              182 => "Canon EF 100-400mm f/4.5-5.6L IS + 2x",
     620              183 => "Canon EF 100-400mm f/4.5-5.6L IS",
     621              184 => "Canon EF 400mm f/2.8L + 2x",
     622              185 => "Canon EF 600mm f/4L IS",
     623              186 => "Canon EF 70-200mm f/4L",
     624              187 => "Canon EF 70-200mm f/4L + 1.4x",
     625              188 => "Canon EF 70-200mm f/4L + 2x",
     626              189 => "Canon EF 70-200mm f/4L + 2.8x",
     627              190 => "Canon EF 100mm f/2.8 Macro",
     628              191 => "Canon EF 400mm f/4 DO IS",
     629              193 => "Canon EF 35-80mm f/4-5.6 USM",
     630              194 => "Canon EF 80-200mm f/4.5-5.6 USM",
     631              195 => "Canon EF 35-105mm f/4.5-5.6 USM",
     632              196 => "Canon EF 75-300mm f/4-5.6 USM",
     633              197 => "Canon EF 75-300mm f/4-5.6 IS USM",
     634              198 => "Canon EF 50mm f/1.4 USM",
     635              199 => "Canon EF 28-80mm f/3.5-5.6 USM",
     636              200 => "Canon EF 75-300mm f/4-5.6 USM",
     637              201 => "Canon EF 28-80mm f/3.5-5.6 USM",
     638              202 => "Canon EF 28-80mm f/3.5-5.6 USM IV",
     639              208 => "Canon EF 22-55mm f/4-5.6 USM",
     640              209 => "Canon EF 55-200mm f/4.5-5.6",
     641              210 => "Canon EF 28-90mm f/4-5.6 USM",
     642              211 => "Canon EF 28-200mm f/3.5-5.6 USM",
     643              212 => "Canon EF 28-105mm f/4-5.6 USM",
     644              213 => "Canon EF 90-300mm f/4.5-5.6 USM",
     645              214 => "Canon EF-S 18-55mm f/3.5-4.5 USM",
     646              215 => "Canon EF 55-200mm f/4.5-5.6 II USM",
     647              224 => "Canon EF 70-200mm f/2.8L IS",
     648              225 => "Canon EF 70-200mm f/2.8L IS + 1.4x",
     649              226 => "Canon EF 70-200mm f/2.8L IS + 2x",
     650              227 => "Canon EF 70-200mm f/2.8L IS + 2.8x",
     651              228 => "Canon EF 28-105mm f/3.5-4.5 USM",
     652              229 => "Canon EF 16-35mm f/2.8L",
     653              230 => "Canon EF 24-70mm f/2.8L",
     654              231 => "Canon EF 17-40mm f/4L",
     655              232 => "Canon EF 70-300mm f/4.5-5.6 DO IS USM",
     656              233 => "Canon EF 28-300mm f/3.5-5.6L IS",
     657              234 => "Canon EF-S 17-85mm f4-5.6 IS USM",
     658              235 => "Canon EF-S 10-22mm f/3.5-4.5 USM",
     659              236 => "Canon EF-S 60mm f/2.8 Macro USM",
     660              237 => "Canon EF 24-105mm f/4L IS",
     661              238 => "Canon EF 70-300mm f/4-5.6 IS USM",
     662              239 => "Canon EF 85mm f/1.2L II",
     663              240 => "Canon EF-S 17-55mm f/2.8 IS USM",
     664              241 => "Canon EF 50mm f/1.2L",
     665              242 => "Canon EF 70-200mm f/4L IS",
     666              243 => "Canon EF 70-200mm f/4L IS + 1.4x",
     667              244 => "Canon EF 70-200mm f/4L IS + 2x",
     668              245 => "Canon EF 70-200mm f/4L IS + 2.8x",
     669              246 => "Canon EF 16-35mm f/2.8L II",
     670              247 => "Canon EF 14mm f/2.8L II USM",
     671              248 => "Canon EF 200mm f/2L IS",
     672              249 => "Canon EF 800mm f/5.6L IS",
     673              250 => "Canon EF 24 f/1.4L II",
     674              254 => "Canon EF 100mm f/2.8L Macro IS USM",
     675              488 => "Canon EF-S 15-85mm f/3.5-5.6 IS USM",
     676        ),
     677      ),
     678
     679      "0x0001.23" => Array(
     680        'tagName'     => "CanonCameraSettings.LongFocal",
     681        'schema'      => "Canon",
     682        'translatable'=> false,
     683        'combiTag'    => 0,
     684        'implemented' => true,
     685      ),
     686
     687      "0x0001.24" => Array(
     688        'tagName'     => "CanonCameraSettings.ShortFocal",
     689        'schema'      => "Canon",
     690        'translatable'=> false,
     691        'combiTag'    => 0,
     692        'implemented' => true,
     693      ),
     694
     695      "0x0001.25" => Array(
     696        'tagName'     => "CanonCameraSettings.FocalUnits",
     697        'schema'      => "Canon",
     698        'translatable'=> false,
     699        'combiTag'    => 0,
     700        'implemented' => true,
     701      ),
     702
     703      "0x0001.26" => Array(
     704        'tagName'     => "CanonCameraSettings.MaxAperture",
     705        'schema'      => "Canon",
     706        'translatable'=> false,
     707        'combiTag'    => 0,
     708        'implemented' => true,
     709      ),
     710
     711      "0x0001.27" => Array(
     712        'tagName'     => "CanonCameraSettings.MinAperture",
     713        'schema'      => "Canon",
     714        'translatable'=> false,
     715        'combiTag'    => 0,
     716        'implemented' => true,
     717      ),
     718
     719      "0x0001.28" => Array(
     720        'tagName'     => "CanonCameraSettings.FlashActivity",
     721        'schema'      => "Canon",
     722        'translatable'=> true,
     723        'combiTag'    => 0,
     724        'implemented' => true,
     725        'tagValues'   => Array(
     726            0x00 => "Did not fire",
     727            0x01 => "Fired",
     728        ),
     729      ),
     730
     731      "0x0001.29" => Array(
     732        'tagName'     => "CanonCameraSettings.FlashBits",
     733        'schema'      => "Canon",
     734        'translatable'=> true,
     735        'combiTag'    => 0,
     736        'implemented' => true,
     737        'tagValues.special' => Array(
     738            0x0001 => "Manual",                  //b0000000000000001
     739            0x0002 => "TTL",                     //b0000000000000010
     740            0x0004 => "A-TTL",                   //b0000000000000100
     741            0x0008 => "E-TTL",                   //b0000000000001000
     742            0x0010 => "FP sync enabled",         //b0000000000010000
     743            0x0080 => "2nd-curtain sync used",   //b0000000010000000
     744            0x0800 => "FP sync used",            //b0000100000000000
     745            0x2000 => "Built-in",                //b0010000000000000
     746            0x4000 => "External",                //b0100000000000000
     747        ),
     748      ),
     749
     750      "0x0001.32" => Array(
     751        'tagName'     => "CanonCameraSettings.FocusContinuous",
     752        'schema'      => "Canon",
     753        'translatable'=> true,
     754        'combiTag'    => 0,
     755        'implemented' => true,
     756        'tagValues'   => Array(
     757            0x00 => "Single",
     758            0x01 => "Continuous",
     759            0x08 => "Manual",
     760            0xFFFF => "Unknown",
     761        ),
     762      ),
     763
     764      "0x0001.33" => Array(
     765        'tagName'     => "CanonCameraSettings.AESetting",
     766        'schema'      => "Canon",
     767        'translatable'=> true,
     768        'combiTag'    => 0,
     769        'implemented' => true,
     770        'tagValues'   => Array(
     771            0x00 => "Normal AE",
     772            0x01 => "Exposure Compensation",
     773            0x02 => "AE Lock",
     774            0x03 => "AE Lock + Exposure Comp.",
     775            0x04 => "No AE"
     776        ),
     777      ),
     778
     779      "0x0001.34" => Array(
     780        'tagName'     => "CanonCameraSettings.ImageStabilization",
     781        'schema'      => "Canon",
     782        'translatable'=> true,
     783        'combiTag'    => 0,
     784        'implemented' => true,
     785        'tagValues'   => Array(
     786            0x00 => "Off",
     787            0x01 => "On",
     788            0x02 => "On, Shot Only",
     789            0x03 => "On, Panning",
     790            0xFFFF => "Unknown",
     791        ),
     792      ),
     793
     794      "0x0001.35" => Array(
     795        'tagName'     => "CanonCameraSettings.DisplayAperture",
     796        'schema'      => "Canon",
     797        'translatable'=> false,
     798        'combiTag'    => 0,
     799        'implemented' => false,
     800      ),
     801
     802      "0x0001.36" => Array(
     803        'tagName'     => "CanonCameraSettings.ZoomSourceWidth",
     804        'schema'      => "Canon",
     805        'translatable'=> false,
     806        'combiTag'    => 0,
     807        'implemented' => false,
     808      ),
     809
     810      "0x0001.37" => Array(
     811        'tagName'     => "CanonCameraSettings.ZoomTargetWidth",
     812        'schema'      => "Canon",
     813        'translatable'=> false,
     814        'combiTag'    => 0,
     815        'implemented' => false,
     816      ),
     817
     818      "0x0001.39" => Array(
     819        'tagName'     => "CanonCameraSettings.SpotMeteringMode",
     820        'schema'      => "Canon",
     821        'translatable'=> true,
     822        'combiTag'    => 0,
     823        'implemented' => true,
     824        'tagValues'   => Array(
     825            0x00 => "Center",
     826            0x01 => "AF Point",
     827            0xFFFF => "Unknown",
     828        ),
     829      ),
     830
     831      "0x0001.40" => Array(
     832        'tagName'     => "CanonCameraSettings.PhotoEffect",
     833        'schema'      => "Canon",
     834        'translatable'=> true,
     835        'combiTag'    => 0,
     836        'implemented' => true,
     837        'tagValues'   => Array(
     838            0x00 => "Off",
     839            0x01 => "Vivid",
     840            0x02 => "Neutral",
     841            0x03 => "Smooth",
     842            0x04 => "Sepia",
     843            0x05 => "B&W",
     844            0x06 => "Custom",
     845            0x64 => "My Color Data",
     846            0xFFFF => "Unknown",
     847        ),
     848      ),
     849
     850      "0x0001.41" => Array(
     851        'tagName'     => "CanonCameraSettings.ManualFlashOutput",
     852        'schema'      => "Canon",
     853        'translatable'=> true,
     854        'combiTag'    => 0,
     855        'implemented' => true,
     856        'tagValues'   => Array(
     857            0x0000 => "n/a",
     858            0x0500 => "Full",
     859            0x0502 => "Medium",
     860            0x0504 => "Low",
     861            0x7fff => "n/a",
     862        ),
     863      ),
     864
     865      "0x0001.42" => Array(
     866        'tagName'     => "CanonCameraSettings.ColorTone",
     867        'schema'      => "Canon",
     868        'translatable'=> true,
     869        'combiTag'    => 0,
     870        'implemented' => true,
     871        'tagValues'   => Array(
     872            0x0000 => "Normal",
     873        ),
     874      ),
     875
     876      "0x0001.46" => Array(
     877        'tagName'     => "CanonCameraSettings.SRAWQuality",
     878        'schema'      => "Canon",
     879        'translatable'=> true,
     880        'combiTag'    => 0,
     881        'implemented' => true,
     882        'tagValues'   => Array(
     883            0x00 => "n/a",
     884            0x01 => "sRAW1 (mRAW)",
     885            0x02 => "sRAW2 (sRAW)"
     886        ),
     887      ),
    213888
    214889      /*
     
    243918      ), // <
    244919
     920      /*
     921       * The 'CanonShotInfo' tags is composed by an array of sub tags
     922       *
     923       * Like the CanonCameraSettings tag, this kind of data needs a particular
     924       * algorythm in the CanonReader class, provided by the processSubTag0x0004
     925       * function
     926       *
     927       * >>> Begin of CanonShotInfo subtags
     928       *
     929       */
     930      "0x0004.1" => Array(
     931        'tagName'     => "CanonShotInfo.AutoISO",
     932        'schema'      => "Canon",
     933        'translatable'=> false,
     934        'combiTag'    => 0,
     935        'implemented' => true,
     936      ),
     937
     938      "0x0004.2" => Array(
     939        'tagName'     => "CanonShotInfo.BaseISO",
     940        'schema'      => "Canon",
     941        'translatable'=> false,
     942        'combiTag'    => 0,
     943        'implemented' => true,
     944      ),
     945
     946      "0x0004.3" => Array(
     947        'tagName'     => "CanonShotInfo.MeasuredEV",
     948        'schema'      => "Canon",
     949        'translatable'=> false,
     950        'combiTag'    => 0,
     951        'implemented' => false,
     952      ),
     953
     954      "0x0004.4" => Array(
     955        'tagName'     => "CanonShotInfo.TargetAperture",
     956        'schema'      => "Canon",
     957        'translatable'=> false,
     958        'combiTag'    => 0,
     959        'implemented' => true,
     960      ),
     961
     962      "0x0004.5" => Array(
     963        'tagName'     => "CanonShotInfo.TargetExposureTime",
     964        'schema'      => "Canon",
     965        'translatable'=> false,
     966        'combiTag'    => 0,
     967        'implemented' => true,
     968      ),
     969
     970      "0x0004.6" => Array(
     971        'tagName'     => "CanonShotInfo.ExposureCompensation",
     972        'schema'      => "Canon",
     973        'translatable'=> false,
     974        'combiTag'    => 0,
     975        'implemented' => true,
     976      ),
     977
     978      "0x0004.7" => Array(
     979        'tagName'     => "CanonShotInfo.WhiteBalance",
     980        'schema'      => "Canon",
     981        'translatable'=> true,
     982        'combiTag'    => 0,
     983        'implemented' => true,
     984        'tagValues'   => Array(
     985            0x00 => "Auto",
     986            0x01 => "Daylight",
     987            0x02 => "Cloudy",
     988            0x03 => "Tungsten",
     989            0x04 => "Fluorescent",
     990            0x05 => "Flash",
     991            0x06 => "Custom",
     992            0x07 => "Black & White",
     993            0x08 => "Shade",
     994            0x09 => "Manual Temperature (Kelvin)",
     995            0x0A => "PC Set1",
     996            0x0B => "PC Set2",
     997            0x0C => "PC Set3",
     998            0x0E => "Daylight Fluorescent",
     999            0x0F => "Custom 1",
     1000            0x10 => "Custom 2",
     1001            0x11 => "Underwater",
     1002            0x12 => "Custom 3",
     1003            0x13 => "Custom 4",
     1004            0x14 => "PC Set4",
     1005            0x15 => "PC Set5",
     1006        ),
     1007      ),
     1008
     1009      "0x0004.8" => Array(
     1010        'tagName'     => "CanonShotInfo.SlowShutter",
     1011        'schema'      => "Canon",
     1012        'translatable'=> true,
     1013        'combiTag'    => 0,
     1014        'implemented' => true,
     1015        'tagValues'   => Array(
     1016            0x00 => "Off",
     1017            0x01 => "Night Scene",
     1018            0x02 => "On",
     1019            0x03 => "None",
     1020        ),
     1021      ),
     1022
     1023      "0x0004.9" => Array(
     1024        'tagName'     => "CanonShotInfo.SequenceNumber",
     1025        'schema'      => "Canon",
     1026        'translatable'=> false,
     1027        'combiTag'    => 0,
     1028        'implemented' => true,
     1029      ),
     1030
     1031      "0x0004.10" => Array(
     1032        'tagName'     => "CanonShotInfo.OpticalZoomCode",
     1033        'schema'      => "Canon",
     1034        'translatable'=> false,
     1035        'combiTag'    => 0,
     1036        'implemented' => false,
     1037      ),
     1038
     1039      "0x0004.13" => Array(
     1040        'tagName'     => "CanonShotInfo.FlashGuideNumber",
     1041        'schema'      => "Canon",
     1042        'translatable'=> false,
     1043        'combiTag'    => 0,
     1044        'implemented' => true,
     1045      ),
     1046
     1047      "0x0004.14" => Array(
     1048        'tagName'     => "CanonShotInfo.AFPointsInFocus",
     1049        'schema'      => "Canon",
     1050        'translatable'=> true,
     1051        'combiTag'    => 0,
     1052        'implemented' => false,
     1053        'tagValues'   => Array(
     1054            // (used by D30, D60 and some PowerShot/Ixus models)
     1055            0x3000 => "None (MF)",
     1056            0x3001 => "Right",
     1057            0x3002 => "Center",
     1058            0x3003 => "Center+Right",
     1059            0x3004 => "Left",
     1060            0x3005 => "Left+Right",
     1061            0x3006 => "Left+Center",
     1062            0x3007 => "All",
     1063        ),
     1064      ),
     1065
     1066      "0x0004.15" => Array(
     1067        'tagName'     => "CanonShotInfo.FlashExposureComp",
     1068        'schema'      => "Canon",
     1069        'translatable'=> false,
     1070        'combiTag'    => 0,
     1071        'implemented' => true,
     1072      ),
     1073
     1074      "0x0004.16" => Array(
     1075        'tagName'     => "CanonShotInfo.AutoExposureBracketing",
     1076        'schema'      => "Canon",
     1077        'translatable'=> true,
     1078        'combiTag'    => 0,
     1079        'implemented' => true,
     1080        'tagValues'   => Array(
     1081            -1 => "On",
     1082            0 => "Off",
     1083            1 => "On (shot 1)",
     1084            2 => "On (shot 2)",
     1085            3 => "On (shot 3)",
     1086        ),
     1087      ),
     1088
     1089      "0x0004.17" => Array(
     1090        'tagName'     => "CanonShotInfo.AEBBracketValue",
     1091        'schema'      => "Canon",
     1092        'translatable'=> false,
     1093        'combiTag'    => 0,
     1094        'implemented' => true,
     1095      ),
     1096
     1097      "0x0004.18" => Array(
     1098        'tagName'     => "CanonShotInfo.ControlMode",
     1099        'schema'      => "Canon",
     1100        'translatable'=> true,
     1101        'combiTag'    => 0,
     1102        'implemented' => true,
     1103        'tagValues'   => Array(
     1104            0 => "n/a",
     1105            1 => "Camera Local Control",
     1106            3 => "Computer Remote Control",
     1107        ),
     1108      ),
     1109
     1110      "0x0004.19" => Array(
     1111        'tagName'     => "CanonShotInfo.FocusDistanceUpper",
     1112        'schema'      => "Canon",
     1113        'translatable'=> false,
     1114        'combiTag'    => 0,
     1115        'implemented' => false,
     1116      ),
     1117
     1118      "0x0004.20" => Array(
     1119        'tagName'     => "CanonShotInfo.FocusDistanceLower",
     1120        'schema'      => "Canon",
     1121        'translatable'=> false,
     1122        'combiTag'    => 0,
     1123        'implemented' => false,
     1124      ),
     1125
     1126      "0x0004.21" => Array(
     1127        'tagName'     => "CanonShotInfo.FNumber",
     1128        'schema'      => "Canon",
     1129        'translatable'=> false,
     1130        'combiTag'    => 0,
     1131        'implemented' => false,
     1132      ),
     1133
     1134      "0x0004.22" => Array(
     1135        'tagName'     => "CanonShotInfo.ExposureTime",
     1136        'schema'      => "Canon",
     1137        'translatable'=> false,
     1138        'combiTag'    => 0,
     1139        'implemented' => false,
     1140      ),
     1141
     1142      "0x0004.23" => Array(
     1143        'tagName'     => "CanonShotInfo.MeasuredEV2",
     1144        'schema'      => "Canon",
     1145        'translatable'=> false,
     1146        'combiTag'    => 0,
     1147        'implemented' => false,
     1148      ),
     1149
     1150      "0x0004.24" => Array(
     1151        'tagName'     => "CanonShotInfo.BulbDuration",
     1152        'schema'      => "Canon",
     1153        'translatable'=> false,
     1154        'combiTag'    => 0,
     1155        'implemented' => false,
     1156      ),
     1157
     1158      "0x0004.26" => Array(
     1159        'tagName'     => "CanonShotInfo.CameraType",
     1160        'schema'      => "Canon",
     1161        'translatable'=> true,
     1162        'combiTag'    => 0,
     1163        'implemented' => true,
     1164        'tagValues'   => Array(
     1165            248 => "EOS High-end",
     1166            250 => "Compact",
     1167            252 => "EOS Mid-range",
     1168            255 => "DV Camera",
     1169        ),
     1170      ),
     1171
     1172      "0x0004.27" => Array(
     1173        'tagName'     => "CanonShotInfo.AutoRotate",
     1174        'schema'      => "Canon",
     1175        'translatable'=> true,
     1176        'combiTag'    => 0,
     1177        'implemented' => true,
     1178        'tagValues'   => Array(
     1179       0xFFFF => "Unknown",
     1180            0 => "None",
     1181            1 => "Rotate 90 CW",
     1182            2 => "Rotate 180",
     1183            3 => "Rotate 270 CW",
     1184        ),
     1185      ),
     1186
     1187      "0x0004.28" => Array(
     1188        'tagName'     => "CanonShotInfo.NDFilter",
     1189        'schema'      => "Canon",
     1190        'translatable'=> true,
     1191        'combiTag'    => 0,
     1192        'implemented' => true,
     1193        'tagValues'   => Array(
     1194            0 => "Off",
     1195            1 => "On",
     1196       0xFFFF => "Unknown",
     1197        ),
     1198      ),
     1199
     1200      "0x0004.29" => Array(
     1201        'tagName'     => "CanonShotInfo.SelfTimer2",
     1202        'schema'      => "Canon",
     1203        'translatable'=> false,
     1204        'combiTag'    => 0,
     1205        'implemented' => false,
     1206      ),
     1207
     1208      "0x0004.33" => Array(
     1209        'tagName'     => "CanonShotInfo.FlashOutput",
     1210        'schema'      => "Canon",
     1211        'translatable'=> false,
     1212        'combiTag'    => 0,
     1213        'implemented' => false,
     1214      ),
     1215
     1216      /*
     1217       * <<< Begin of CanonShotInfo subtags
     1218       *
     1219       */
     1220
     1221
    2451222      // CanonPanorama, tag 0x0005
    2461223      0x0005 => Array(
     
    3131290        'combiTag'    => 0,
    3141291        'implemented' => false,
     1292        'tagValues.special' => Array(
     1293          '40D'      => Array(3, 4, 6, 21, 24, 27, 29, 48, 67, 69, 111, 115, 214, 216, 218, 255, 307, 319, 2347),
     1294          '1DMarkIV' => Array(3, 4, 6, 7, 21, 25, 30, 53, 84, 86, 488, 493),
     1295        )
    3151296      ), // < CanonCameraInfo
     1297
     1298      /*
     1299       * The 'CanonCameraInfo' tags structure depends of the camera model
     1300       *
     1301       * Like the CanonCameraSettings tag, this kind of data needs a particular
     1302       * algorythm in the CanonReader class, provided by the processSubTag0x000d
     1303       * functions
     1304       *
     1305       * >>> Begin of CanonCameraInfo subtags
     1306       *
     1307       */
     1308
     1309      /*
     1310       * Canon EOS 40D CameraInfo tags
     1311       */
     1312      "0x000d.40D.3" => Array(
     1313        'tagName'     => "CanonCameraInfo.FNumber",
     1314        'schema'      => "Canon",
     1315        'translatable'=> false,
     1316        'combiTag'    => 0,
     1317        'implemented' => false,
     1318        'pos'         => 3,
     1319        'type'        => ByteType::UBYTE,
     1320      ),
     1321
     1322      "0x000d.40D.4" => Array(
     1323        'tagName'     => "CanonCameraInfo.ExposureTime",
     1324        'schema'      => "Canon",
     1325        'translatable'=> false,
     1326        'combiTag'    => 0,
     1327        'implemented' => false,
     1328        'pos'         => 4,
     1329        'type'        => ByteType::UBYTE,
     1330      ),
     1331
     1332      "0x000d.40D.6" => Array(
     1333        'tagName'     => "CanonCameraInfo.ISO",
     1334        'schema'      => "Canon",
     1335        'translatable'=> false,
     1336        'combiTag'    => 0,
     1337        'implemented' => false,
     1338        'pos'         => 6,
     1339        'type'        => ByteType::UBYTE,
     1340      ),
     1341
     1342      "0x000d.40D.21" => Array(
     1343        'tagName'     => "CanonCameraInfo.FlashMeteringMode",
     1344        'schema'      => "Canon",
     1345        'translatable'=> true,
     1346        'combiTag'    => 0,
     1347        'implemented' => true,
     1348        'pos'         => 21,
     1349        'type'        => ByteType::UBYTE,
     1350        'tagValues'   => Array(
     1351            0 => "E-TTL",
     1352            3 => "TTL",
     1353            4 => "External Auto",
     1354            5 => "External Manual",
     1355            6 => "Off",
     1356        )
     1357      ),
     1358
     1359      "0x000d.40D.24" => Array(
     1360        'tagName'     => "CanonCameraInfo.CameraTemperature",
     1361        'schema'      => "Canon",
     1362        'translatable'=> false,
     1363        'combiTag'    => 0,
     1364        'implemented' => true,
     1365        'pos'         => 24,
     1366        'type'        => ByteType::UBYTE,
     1367      ),
     1368
     1369      "0x000d.40D.27" => Array(
     1370        'tagName'     => "CanonCameraInfo.MacroMagnification",
     1371        'schema'      => "Canon",
     1372        'translatable'=> false,
     1373        'combiTag'    => 0,
     1374        'implemented' => false,
     1375        'pos'         => 29,
     1376        'type'        => ByteType::UBYTE,
     1377      ),
     1378
     1379      "0x000d.40D.29" => Array(
     1380        'tagName'     => "CanonCameraInfo.FocalLength",
     1381        'schema'      => "Canon",
     1382        'translatable'=> false,
     1383        'combiTag'    => 0,
     1384        'implemented' => true,
     1385        'pos'         => 29,
     1386        'type'        => ByteType::USHORT,
     1387        'byteOrder'   => BYTE_ORDER_BIG_ENDIAN,
     1388      ),
     1389
     1390      "0x000d.40D.48" => Array(
     1391        'tagName'     => "CanonCameraInfo.CameraOrientation",
     1392        'schema'      => "Canon",
     1393        'translatable'=> true,
     1394        'combiTag'    => 0,
     1395        'implemented' => true,
     1396        'pos'         => 48,
     1397        'type'        => ByteType::UBYTE,
     1398        'tagValues'   => Array(
     1399            0 => "Horizontal (normal)",
     1400            1 => "Rotate 90 CW",
     1401            2 => "Rotate 270 CW",
     1402        )
     1403      ),
     1404
     1405      "0x000d.40D.67" => Array(
     1406        'tagName'     => "CanonCameraInfo.FocusDistanceUpper",
     1407        'schema'      => "Canon",
     1408        'translatable'=> false,
     1409        'combiTag'    => 0,
     1410        'implemented' => false,
     1411        'pos'         => 67,
     1412        'type'        => ByteType::USHORT,
     1413        'byteOrder'   => BYTE_ORDER_BIG_ENDIAN,
     1414      ),
     1415
     1416      "0x000d.40D.69" => Array(
     1417        'tagName'     => "CanonCameraInfo.FocusDistanceLower",
     1418        'schema'      => "Canon",
     1419        'translatable'=> false,
     1420        'combiTag'    => 0,
     1421        'implemented' => false,
     1422        'pos'         => 69,
     1423        'type'        => ByteType::USHORT,
     1424        'byteOrder'   => BYTE_ORDER_BIG_ENDIAN,
     1425      ),
     1426
     1427      "0x000d.40D.111" => Array(
     1428        'tagName'     => "CanonCameraInfo.WhiteBalance",
     1429        'schema'      => "Canon",
     1430        'translatable'=> false,
     1431        'combiTag'    => 0,
     1432        'implemented' => true,
     1433        'pos'         => 111,
     1434        'type'        => ByteType::USHORT,
     1435      ),
     1436
     1437      "0x000d.40D.115" => Array(
     1438        'tagName'     => "CanonCameraInfo.ColorTemperature",
     1439        'schema'      => "Canon",
     1440        'translatable'=> false,
     1441        'combiTag'    => 0,
     1442        'implemented' => false,
     1443        'pos'         => 115,
     1444        'type'        => ByteType::USHORT,
     1445      ),
     1446
     1447      "0x000d.40D.214" => Array(
     1448        'tagName'     => "CanonCameraInfo.LensType",
     1449        'schema'      => "Canon",
     1450        'translatable'=> false,
     1451        'combiTag'    => 0,
     1452        'implemented' => true,
     1453        'pos'         => 214,
     1454        'type'        => ByteType::USHORT,
     1455        'byteOrder'   => BYTE_ORDER_BIG_ENDIAN,
     1456      ),
     1457
     1458      "0x000d.40D.216" => Array(
     1459        'tagName'     => "CanonCameraInfo.ShortFocal",
     1460        'schema'      => "Canon",
     1461        'translatable'=> false,
     1462        'combiTag'    => 0,
     1463        'implemented' => true,
     1464        'pos'         => 216,
     1465        'type'        => ByteType::USHORT,
     1466        'byteOrder'   => BYTE_ORDER_BIG_ENDIAN,
     1467      ),
     1468
     1469      "0x000d.40D.218" => Array(
     1470        'tagName'     => "CanonCameraInfo.LongFocal",
     1471        'schema'      => "Canon",
     1472        'translatable'=> false,
     1473        'combiTag'    => 0,
     1474        'implemented' => true,
     1475        'pos'         => 218,
     1476        'type'        => ByteType::UBYTE,
     1477        'byteOrder'   => BYTE_ORDER_BIG_ENDIAN,
     1478      ),
     1479
     1480      "0x000d.40D.255" => Array(
     1481        'tagName'     => "CanonCameraInfo.FirmwareVersion",
     1482        'schema'      => "Canon",
     1483        'translatable'=> false,
     1484        'combiTag'    => 0,
     1485        'implemented' => true,
     1486        'pos'         => 255,
     1487        'type'        => ByteType::ASCII,
     1488        'length'      => 6,
     1489      ),
     1490
     1491      "0x000d.40D.307" => Array(
     1492        'tagName'     => "CanonCameraInfo.FileIndex",
     1493        'schema'      => "Canon",
     1494        'translatable'=> false,
     1495        'combiTag'    => 0,
     1496        'implemented' => false,
     1497        'pos'         => 307,
     1498        'type'        => ByteType::ULONG,
     1499      ),
     1500
     1501      "0x000d.40D.319" => Array(
     1502        'tagName'     => "CanonCameraInfo.DirectoryIndex",
     1503        'schema'      => "Canon",
     1504        'translatable'=> false,
     1505        'combiTag'    => 0,
     1506        'implemented' => false,
     1507        'pos'         => 319,
     1508        'type'        => ByteType::ULONG,
     1509      ),
     1510
     1511      "0x000d.40D.2347" => Array(
     1512        'tagName'     => "CanonCameraInfo.LensModel",
     1513        'schema'      => "Canon",
     1514        'translatable'=> false,
     1515        'combiTag'    => 0,
     1516        'implemented' => true,
     1517        'pos'         => 2347,
     1518        'type'        => ByteType::ASCII,
     1519        'length'      => 64,
     1520      ),
     1521
     1522
     1523      /*
     1524       * Canon EOS 40D CameraInfo tags
     1525       */
     1526      "0x000d.1DMarkIV.3" => Array(
     1527        'tagName'     => "CanonCameraInfo.FNumber",
     1528        'schema'      => "Canon",
     1529        'translatable'=> false,
     1530        'combiTag'    => 0,
     1531        'implemented' => false,
     1532        'pos'         => 3,
     1533        'type'        => ByteType::UBYTE,
     1534      ),
     1535
     1536      "0x000d.1DMarkIV.4" => Array(
     1537        'tagName'     => "CanonCameraInfo.ExposureTime",
     1538        'schema'      => "Canon",
     1539        'translatable'=> false,
     1540        'combiTag'    => 0,
     1541        'implemented' => false,
     1542        'pos'         => 4,
     1543        'type'        => ByteType::UBYTE,
     1544      ),
     1545
     1546      "0x000d.1DMarkIV.6" => Array(
     1547        'tagName'     => "CanonCameraInfo.ISO",
     1548        'schema'      => "Canon",
     1549        'translatable'=> false,
     1550        'combiTag'    => 0,
     1551        'implemented' => false,
     1552        'pos'         => 6,
     1553        'type'        => ByteType::UBYTE,
     1554      ),
     1555
     1556      "0x000d.1DMarkIV.7" => Array(
     1557        'tagName'     => "CanonCameraInfo.HighlightTonePriority",
     1558        'schema'      => "Canon",
     1559        'translatable'=> true,
     1560        'combiTag'    => 0,
     1561        'implemented' => true,
     1562        'pos'         => 7,
     1563        'type'        => ByteType::UBYTE,
     1564        'tagValues'   => Array(
     1565            0 => "Off",
     1566            1 => "On"
     1567        ),
     1568      ),
     1569
     1570      "0x000d.1DMarkIV.21" => Array(
     1571        'tagName'     => "CanonCameraInfo.FlashMeteringMode",
     1572        'schema'      => "Canon",
     1573        'translatable'=> true,
     1574        'combiTag'    => 0,
     1575        'implemented' => true,
     1576        'pos'         => 21,
     1577        'type'        => ByteType::UBYTE,
     1578        'tagValues'   => Array(
     1579            0 => "E-TTL",
     1580            3 => "TTL",
     1581            4 => "External Auto",
     1582            5 => "External Manual",
     1583            6 => "Off",
     1584        )
     1585      ),
     1586
     1587      "0x000d.1DMarkIV.25" => Array(
     1588        'tagName'     => "CanonCameraInfo.CameraTemperature",
     1589        'schema'      => "Canon",
     1590        'translatable'=> false,
     1591        'combiTag'    => 0,
     1592        'implemented' => true,
     1593        'pos'         => 25,
     1594        'type'        => ByteType::UBYTE,
     1595      ),
     1596
     1597      "0x000d.1DMarkIV.30" => Array(
     1598        'tagName'     => "CanonCameraInfo.FocalLength",
     1599        'schema'      => "Canon",
     1600        'translatable'=> false,
     1601        'combiTag'    => 0,
     1602        'implemented' => true,
     1603        'pos'         => 30,
     1604        'type'        => ByteType::USHORT,
     1605        'byteOrder'   => BYTE_ORDER_BIG_ENDIAN,
     1606      ),
     1607
     1608      "0x000d.1DMarkIV.53" => Array(
     1609        'tagName'     => "CanonCameraInfo.CameraOrientation",
     1610        'schema'      => "Canon",
     1611        'translatable'=> true,
     1612        'combiTag'    => 0,
     1613        'implemented' => true,
     1614        'pos'         => 53,
     1615        'type'        => ByteType::UBYTE,
     1616        'tagValues'   => Array(
     1617            0 => "Horizontal (normal)",
     1618            1 => "Rotate 90 CW",
     1619            2 => "Rotate 270 CW",
     1620        )
     1621      ),
     1622
     1623      "0x000d.1DMarkIV.84" => Array(
     1624        'tagName'     => "CanonCameraInfo.FocusDistanceUpper",
     1625        'schema'      => "Canon",
     1626        'translatable'=> false,
     1627        'combiTag'    => 0,
     1628        'implemented' => false,
     1629        'pos'         => 84,
     1630        'type'        => ByteType::USHORT,
     1631        'byteOrder'   => BYTE_ORDER_BIG_ENDIAN,
     1632      ),
     1633
     1634      "0x000d.1DMarkIV.86" => Array(
     1635        'tagName'     => "CanonCameraInfo.FocusDistanceLower",
     1636        'schema'      => "Canon",
     1637        'translatable'=> false,
     1638        'combiTag'    => 0,
     1639        'implemented' => false,
     1640        'pos'         => 86,
     1641        'type'        => ByteType::USHORT,
     1642        'byteOrder'   => BYTE_ORDER_BIG_ENDIAN,
     1643      ),
     1644
     1645
     1646      /*
     1647       * <<< end of CanonCameraInfo subtags
     1648       *
     1649       */
    3161650
    3171651      // CanonFileLength, tag 0x000e
     
    9302264    }
    9312265
    932   } // NikonTags
     2266  } // CanonTags
    9332267
    9342268
  • extensions/AMetaData/JpegMetaData/TagDefinitions/XmpTags.class.php

    r4931 r4972  
    17021702        'schema'       => "xmlns",
    17031703      ),
     1704      'aux:Firmware' => Array(
     1705        'implemented'  => true,
     1706        'translatable' => false,
     1707        'type'         => self::TYPE_SIMPLE,
     1708        'schema'       => "aux",
     1709      ),
    17041710      'aux:Lens' => Array(
    1705         'implemented'  => false,
     1711        'implemented'  => true,
    17061712        'translatable' => false,
    17071713        'type'         => self::TYPE_SIMPLE,
    17081714        'schema'       => "aux",
    17091715      ),
     1716      'aux:LensID' => Array(
     1717        'implemented'  => false,
     1718        'translatable' => false,
     1719        'type'         => self::TYPE_SIMPLE,
     1720        'schema'       => "aux",
     1721      ),
     1722      'aux:LensInfo' => Array(
     1723        'implemented'  => false,
     1724        'translatable' => false,
     1725        'type'         => self::TYPE_SIMPLE,
     1726        'schema'       => "aux",
     1727      ),
    17101728      'aux:SerialNumber' => Array(
    1711         'implemented'  => false,
     1729        'implemented'  => true,
    17121730        'translatable' => false,
    17131731        'type'         => self::TYPE_SIMPLE,
     
    18611879        'schema'       => "Iptc4xmpCore",
    18621880      ),
     1881
     1882      /*
     1883       * Note Schema
     1884       */
     1885      'xmlns:xmpNote' => Array(
     1886        'implemented'  => false,
     1887        'translatable' => false,
     1888        'type'         => self::TYPE_SIMPLE,
     1889        'schema'       => "xmlns",
     1890      ),
     1891
     1892      'xmpNote:HasExtendedXMP' => Array(
     1893        'implemented'  => false,
     1894        'translatable' => false,
     1895        'type'         => self::TYPE_SIMPLE,
     1896        'schema'       => "xmpNote",
     1897      ),
     1898
    18631899    );
    18641900
Note: See TracChangeset for help on using the changeset viewer.