Changeset 5038


Ignore:
Timestamp:
03/03/10 21:55:15 (10 years ago)
Author:
grum
Message:

Manage multiple lenses for one Id for Pentax camera
Add some minors features

Location:
extensions/AMetaData/JpegMetaData
Files:
1 added
8 edited

Legend:

Unmodified
Added
Removed
  • extensions/AMetaData/JpegMetaData/Common/MakerNotesSignatures.class.php

    r4705 r5038  
    3737 * This class provides theses public functions : 
    3838 *  - (static) getMaker 
    39  *  - (static) setExifMaker 
    40  *  - (static) getExifMaker 
    4139 * 
    4240 * ----------------------------------------------------------------------------- 
     
    9189    const UnknownHeaderSize   = 0; 
    9290 
    93     static private $exifMaker = ""; 
    9491 
    9592    static public function getMaker($datas) 
     
    121118    } 
    122119 
    123     /** 
    124      * this function is used by IFD Reader to store all information about maker 
    125      * and camera model 
    126      * 
    127      * the stored value if used within a grep like "/canon/i" to determine the 
    128      * maker note. 
    129      * For more information about this tricks see the how the tag 0x927c is 
    130      * managed in the function "processSpecialTag" of the file 
    131      * IfdReader.class.php 
    132      * 
    133      * @param String $value : the maker or the camera model 
    134      */ 
    135     static public function setExifMaker($value) 
    136     { 
    137       if(is_array($value)) 
    138       { 
    139         foreach($value as $val) 
    140         { 
    141           self::$exifMaker.=$val." "; 
    142         } 
    143       } 
    144       else 
    145       { 
    146         self::$exifMaker.=$value." "; 
    147       } 
    148       return(self::$exifMaker); 
    149     } 
    150  
    151     /** 
    152      * this function is used by IFD Reader to store all information about maker 
    153      * and camera model 
    154      * 
    155      * @return String 
    156      */ 
    157     static public function getExifMaker() 
    158     { 
    159       return(self::$exifMaker); 
    160     } 
    161  
    162120  } 
    163121 
  • extensions/AMetaData/JpegMetaData/Readers/CanonReader.class.php

    r4972 r5038  
    412412    protected function processSubTag0x000d($values, $add=true) 
    413413    { 
    414       $name=MakerNotesSignatures::getExifMaker(); 
     414      $name=GlobalTags::getExifMaker(); 
    415415 
    416416      if(preg_match("/\b1DS?$/", $name)) 
  • extensions/AMetaData/JpegMetaData/Readers/IfdReader.class.php

    r4998 r5038  
    7171 
    7272  require_once(JPEG_METADATA_DIR."Common/Data.class.php"); 
     73  require_once(JPEG_METADATA_DIR."Common/GlobalTags.class.php"); 
    7374  require_once(JPEG_METADATA_DIR."Common/MakerNotesSignatures.class.php"); 
    7475  require_once(JPEG_METADATA_DIR."Readers/GenericReader.class.php"); 
     
    362363           */ 
    363364          $returned=ConvertData::toStrings($values); 
    364           MakerNotesSignatures::setExifMaker($returned); 
     365          GlobalTags::setExifMaker($returned); 
    365366          break; 
    366367        case 0x011A: // XResolution, tag 0x011A 
     
    414415        case 0x829D: // FNumber, tag 0x829D 
    415416          if($values[1]==0) $values[1]=1; 
    416           $returned=ConvertData::toFNumber($values[0]/$values[1]); 
     417          $returned=ConvertData::toFNumber(GlobalTags::setExifAperture($values[0]/$values[1])); 
    417418          break; 
    418419        case 0x8769: // Exif IFD Pointer, tag 0x8769 
     
    480481          break; 
    481482        case 0x9202: // ApertureValue, tag0x9202 
     483          if($values[1]==0) $values[1]=1; 
     484          if(GlobalTags::getExifAperture()=="") 
     485          { 
     486            // set only if empty (if not empty, it means the value was already 
     487            // set with the FNumber tag) 
     488            GlobalTags::setExifAperture(pow(1.414213562, $values[0]/$values[1])); 
     489          } 
     490          //no break, $returned value is the same than the 0x9205 tag 
    482491        case 0x9205: // MaxApertureValue, tag0x9205 
    483492          if($values[1]==0) $values[1]=1; 
     
    517526        case 0x920A: // FocalLength, tag 0x920A 
    518527          if($values[1]==0) $values[1]=1; 
    519           $returned=ConvertData::toFocalLength($values[0]/$values[1]); 
     528          $returned=ConvertData::toFocalLength(GlobalTags::setExifFocal($values[0]/$values[1])); 
    520529          break; 
    521530        case 0x927c: // MakerNote, tag 0x927c 
     
    561570               * the camera model contains "Canon" 
    562571               */ 
    563               if(preg_match("/.*canon.*/i",MakerNotesSignatures::getExifMaker())) 
     572              if(preg_match("/.*canon.*/i",GlobalTags::getExifMaker())) 
    564573              { 
    565574                require_once(JPEG_METADATA_DIR."Readers/CanonReader.class.php"); 
  • extensions/AMetaData/JpegMetaData/Readers/NikonReader.class.php

    r4935 r5038  
    347347          } 
    348348 
    349           if(preg_match("/.*d70.*/i",MakerNotesSignatures::getExifMaker())) 
     349          if(preg_match("/.*d70.*/i",GlobalTags::getExifMaker())) 
    350350          { 
    351351            $bit5=1; 
     
    376376          break; 
    377377        case 0x0098: // "LensData" 
    378           if($this->shutterCount==-1 or $this->serialNumber=="") 
     378          if(($this->shutterCount==-1 or $this->serialNumber=="") and 
     379            ( substr($values,0,2)=="02" )) 
    379380          { 
    380381            $this->toDecode[0x0098]=Array($values, $type); 
    381             $returned=""; 
    382           } 
    383           else 
    384           { 
    385             $returned=$this->readLensData($values); 
    386           } 
     382          } 
     383          $returned=$this->readLensData($values); 
    387384          break; 
    388385        case 0x0099: // "RawImageCenter" 
     
    481478      } 
    482479 
     480      if(is_array($returned)) 
     481        $returned=$returned[0]; 
    483482 
    484483      unset($data); 
     
    567566        return(0+$this->serialNumber); 
    568567      } 
    569       elseif(preg_match("/.*d50.*/i",MakerNotesSignatures::getExifMaker())) 
     568      elseif(preg_match("/.*d50.*/i",GlobalTags::getExifMaker())) 
    570569      { 
    571570        //D50 
  • extensions/AMetaData/JpegMetaData/Readers/PentaxReader.class.php

    r4998 r5038  
    5454 
    5555 
     56  require_once(JPEG_METADATA_DIR."Common/GlobalTags.class.php"); 
    5657  require_once(JPEG_METADATA_DIR."TagDefinitions/PentaxTags.class.php"); 
    5758  require_once(JPEG_METADATA_DIR."Readers/MakerNotesReader.class.php"); 
     
    232233        case 0x003e: // "PreviewImageBorders", 
    233234          $returned=ConvertData::toHexDump($values, ByteType::UBYTE); 
     235          break; 
     236        case 0x003f: // "LensType", 
     237          $tag=$this->tagDef->getTagById(0x003f); 
     238          $id=$values[1]+($values[0]<<8); 
     239          if(!array_key_exists($id, $tag['tagValues.special'])) $id=0xffff; 
     240 
     241          $returned=""; 
     242 
     243          $lensesList=$tag['tagValues.special'][$id]; 
     244          if(is_array($lensesList)) 
     245          { 
     246            foreach($lensesList as $lens) 
     247            { 
     248              /* 
     249               * If there is more than one lens associated with a lens id 
     250               * 
     251               * 1/ try to found the min/max focals of the lens 
     252               * 2/ try to found the min/max aperture of the lens 
     253               * 3/ if focal is fixed, make min = max 
     254               * 4/ if aperture is constant, make min)max 
     255               * 5/ look if : min focal <= photo focal <= max focal  and 
     256               *              photo aperture >= min aperture 
     257               *            if yes, the lens is returned, otherwise test next 
     258               *            lens 
     259               */ 
     260              preg_match("/.*\s(?:([0-9]+){1}(?:-([0-9]+))?)mm.*/i", $lens, $focals); 
     261              preg_match("/.*\sF(?:([0-9\.]+){1}(?:-([0-9\.]+))?).*/i", $lens, $apertures); 
     262 
     263              if(count($focals)==2) 
     264              { 
     265                //focal is not a zoom, min = max 
     266                $focals[]=$focal[1]; 
     267              } 
     268              elseif(count($focals)==0) 
     269              { 
     270                $focal=Array(0,0,0); 
     271              } 
     272 
     273 
     274              if(count($apertures)==2) 
     275              { 
     276                //aperture is constant, min = max 
     277                $apertures[]=$apertures[1]; 
     278              } 
     279              elseif(count($apertures)==0) 
     280              { 
     281                $apertures=Array(0,0,0); 
     282              } 
     283 
     284              $focal=GlobalTags::getExifFocal(); 
     285              if($focal=="") $focal=-1; 
     286 
     287              $aperture=GlobalTags::getExifAperture(); 
     288              if($aperture=="") $aperture=-1; 
     289 
     290              if($focals[1]<=$focal && $focal<=$focals[2] && $aperture>=$apertures[1] && $returned=="") 
     291              { 
     292                $returned=$lens; 
     293              } 
     294 
     295              unset($lens); 
     296              unset($focals); 
     297              unset($apertures); 
     298            } 
     299            if($returned=="") 
     300            { 
     301              // no lens seems to be valid, returns the lens list 
     302              $returned=$lensesList; 
     303            } 
     304          } 
     305          else 
     306          { 
     307            // not a list, just a single lens 
     308            $returned=$lensesList; 
     309          } 
     310 
     311          unset($tag); 
     312          unset($id); 
    234313          break; 
    235314        case 0x0040: // "SensitivityAdjust", from exiftool 
  • extensions/AMetaData/JpegMetaData/TagDefinitions/MagicTags.class.php

    r5004 r5038  
    146146        'tagValues'    => Array( 
    147147          "{exif.Pentax.LensType}", 
     148          "{exif.Nikon.LensData}", 
    148149          "{exif.Nikon.Lens}", 
    149150          "{exif.Canon.CanonCameraSettings.LensType}", 
  • extensions/AMetaData/JpegMetaData/TagDefinitions/NikonTags.class.php

    r4931 r5038  
    679679        'tagName'     => "LensData", 
    680680        'schema'      => "Nikon", 
    681         'translatable'=> true, 
     681        'translatable'=> false, 
    682682        'combiTag'    => 0, 
    683683        'implemented' => true, 
     
    734734          '2D 48 80 80 30 30 21 02' => 'AF Micro-Nikkor 200mm f/4D IF-ED', 
    735735          '2E 48 5C 82 30 3C 28 02' => 'AF Nikkor 70-210mm f/4-5.6D', 
    736           '2F 48 30 44 24 24 29 02' => 'AF Zoom-Nikkor 20-35mm f/2.8D IF',  //doublon? 
     736          '2F 48 30 44 24 24 29 02' => Array( 
     737            /* 
     738             * Different lenses can have the same Id. 
     739             * The Nikon Id are made with the focal min/max and the aperture 
     740             * min/max values. 
     741             * 
     742             * So, it's not possible to apply the method used with the Canon 
     743             * lens Id. 
     744             * 
     745             * For multiple lenses with the same key, the method used is to 
     746             * return the first lens 
     747             */ 
     748                                          'AF Zoom-Nikkor 20-35mm f/2.8D IF', 
     749                                          'Tokina AT-X 235 AF PRO (AF 20-35mm f/2.8)', 
     750                                       ), 
    737751          '30 48 98 98 24 24 24 02' => 'AF-I Nikkor 400mm f/2.8D IF-ED', 
    738752          '30 48 98 98 24 24 F1 02' => 'AF-I Nikkor 400mm f/2.8D IF-ED + TC-14E', 
     
    740754          '30 48 98 98 24 24 F2 02' => 'AF-I Nikkor 400mm f/2.8D IF-ED + TC-20E', 
    741755          '31 54 56 56 24 24 25 02' => 'AF Micro-Nikkor 60mm f/2.8D', 
    742           '32 54 6A 6A 24 24 35 02' => 'AF Micro-Nikkor 105mm f/2.8D', //doublon? 
     756 
     757          '32 54 6A 6A 24 24 35 02' => Array( 
     758                                          'AF Micro-Nikkor 105mm f/2.8D', 
     759                                          'Sigma Macro 105mm f/2.8 EX DG', 
     760                                       ), 
    743761          '33 48 2D 2D 24 24 31 02' => 'AF Nikkor 18mm f/2.8D', 
    744762          '34 48 29 29 24 24 32 02' => 'AF Fisheye Nikkor 16mm f/2.8D', 
     
    816834          '78 40 37 6E 2C 3C 7C 0E' => 'AF-S VR Zoom-Nikkor 24-120mm f/3.5-5.6G IF-ED', 
    817835          '79 40 3C 80 2C 3C 7F 06' => 'AF Zoom-Nikkor 28-200mm f/3.5-5.6G IF-ED', 
    818           '7A 3C 1F 37 30 30 7E 06' => 'AF-S DX Zoom-Nikkor 12-24mm f/4G IF-ED', //doublon ? 
     836          '7A 3C 1F 37 30 30 7E 06' => Array( 
     837                                        'AF-S DX Zoom-Nikkor 12-24mm f/4G IF-ED', 
     838                                        'Tokina AT-X 124 AF PRO DX II (AF 12-24mm f/4)', 
     839                                       ), 
    819840          '7B 48 80 98 30 30 80 0E' => 'AF-S VR Zoom-Nikkor 200-400mm f/4G IF-ED', 
    820841          '7D 48 2B 53 24 24 82 06' => 'AF-S DX Zoom-Nikkor 17-55mm f/2.8G IF-ED', 
     
    874895          '79 48 5C 5C 24 24 1C 06' => 'Sigma Macro 70mm F2.8 EX DG', 
    875896          '02 48 65 65 24 24 02 00' => 'Sigma 90mm F2.8 Macro', 
    876           '32 54 6A 6A 24 24 35 02' => 'Sigma Macro 105mm F2.8 EX DG', //doublon ? 
    877897          'E5 54 6A 6A 24 24 35 02' => 'Sigma Macro 105mm F2.8 EX DG', 
    878898          '48 48 76 76 24 24 4B 06' => 'Sigma 150mm F2.8 EX DG APO Macro HSM', 
     
    10051025          '00 48 1C 29 24 24 00 06' => 'Tokina AT-X 116 PRO DX (AF 11-16mm f/2.8)', 
    10061026          '00 3C 1F 37 30 30 00 06' => 'Tokina AT-X 124 AF PRO DX (AF 12-24mm f/4)', 
    1007           '7A 3C 1F 37 30 30 7E 06' => 'Tokina AT-X 124 AF PRO DX II (AF 12-24mm f/4)', //doublon ? 
    10081027          '00 48 29 50 24 24 00 06' => 'Tokina AT-X 165 PRO DX (AF 16-50mm f/2.8)', 
    10091028          '00 40 2A 72 2C 3C 00 06' => 'Tokina AT-X 16.5-135 DX (AF 16.5-135mm F3.5-5.6)', 
    1010           '2F 48 30 44 24 24 29 02' => 'Tokina AT-X 235 AF PRO (AF 20-35mm f/2.8)', //doublon ? 
    10111029          '2F 40 30 44 2C 34 29 02' => 'Tokina AF 235 II (AF 20-35mm f/3.5-4.5)', 
    10121030          '25 48 3C 5C 24 24 1B 02' => 'Tokina AT-X 270 AF PRO II (AF 28-70mm f/2.6-2.8)', 
     
    10811099      // SerialNumber, tag 0x00a0 
    10821100      0x00a0 => Array( 
    1083         'tagName'     => "SerialNumber", 
     1101        'tagName'     => "SerialNumber2", 
    10841102        'schema'      => "Nikon", 
    10851103        'translatable'=> false, 
  • extensions/AMetaData/JpegMetaData/TagDefinitions/PentaxTags.class.php

    r4931 r5038  
    862862        'combiTag'    => 2, 
    863863        'implemented' => true, 
    864         'tagValues'   => Array( 
     864        'tagValues.special'   => Array( 
    865865          0x0000 => "M-42 or No Lens", 
    866866          0x0100 => "K,M Lens", 
    867867          0x0200 => "A Series Lens", 
    868           0x0300 => "SIGMA", 
     868          0x0300 => "Sigma", 
    869869          0x0311 => "smc PENTAX-FA SOFT 85mm F2.8", 
    870870          0x0312 => "smc PENTAX-F 1.7X AF ADAPTER", 
     
    873873          0x0315 => "smc PENTAX-F 80-200mm F4.7-5.6", 
    874874          0x0316 => "smc PENTAX-F FISH-EYE 17-28mm F3.5-4.5", 
    875           0x0317 => "smc PENTAX-F 100-300mm F4.5-5.6", 
     875          0x0317 => Array( 
     876                      "smc PENTAX-F 100-300mm F4.5-5.6", 
     877                      "Sigma AF 28-300mm F3.5-5.6 DL IF", 
     878                      "Sigma AF 28-300mm F3.5-6.3 DG IF Macro", 
     879                    ), 
    876880          0x0318 => "smc PENTAX-F 35-135mm F3.5-4.5", 
    877           0x0319 => "smc PENTAX-F 35-105mm F4-5.6 or SIGMA or Tokina", 
     881          0x0319 => Array( 
     882                      "smc PENTAX-F 35-105mm F4-5.6", 
     883                      "Sigma AF 28-300mm F3.5-5.6 DL IF", 
     884                      "Sigma 55-200mm F4-5.6 DC", 
     885                      "Sigma AF 28-300mm F3.5-5.6 DL IF", 
     886                      "Sigma AF 28-300mm F3.5-6.3 DG IF Macro", 
     887                      "Tokina 80-200mm F2.8 ATX-Pro", 
     888                    ), 
    878889          0x031a => "smc PENTAX-F* 250-600mm F5.6 ED[IF]", 
    879           0x031b => "smc PENTAX-F 28-80mm F3.5-4.5", 
    880           0x031c => "smc PENTAX-F 35-70mm F3.5-4.5", 
    881           0x031d => "PENTAX-F 28-80mm F3.5-4.5 or SIGMA AF 18-125mm F3.5-5.6 DC", 
     890          0x031b => Array( 
     891                      "smc PENTAX-F 28-80mm F3.5-4.5", 
     892                      "Tokina AT-X Pro AF 28-70mm F2.6-2.8", 
     893                    ), 
     894          0x031c => Array( 
     895                      "smc PENTAX-F 35-70mm F3.5-4.5", 
     896                      "Tokina 19-35mm F3.5-4.5 AF", 
     897                    ), 
     898          0x031d => Array( 
     899                      "PENTAX-F 28-80mm F3.5-4.5", 
     900                      "Sigma AF 18-125mm F3.5-5.6 DC", 
     901                      "Tokina AT-X PRO 28-70mm F2.6-2.8", 
     902                    ), 
    882903          0x031e => "PENTAX-F 70-200mm F4-5.6", 
    883           0x031f => "smc PENTAX-F 70-210mm F4-5.6", 
     904          0x031f => Array( 
     905                      "smc PENTAX-F 70-210mm F4-5.6", 
     906                      "Tokina AF 730 75-300mm F4.5-5.6", 
     907                      "Takumar-F 70-210mm F4-5.6", 
     908                    ), 
    884909          0x0320 => "smc PENTAX-F 50mm F1.4", 
    885910          0x0321 => "smc PENTAX-F 50mm F1.7", 
    886911          0x0322 => "smc PENTAX-F 135mm F2.8 [IF]", 
    887912          0x0323 => "smc PENTAX-F 28mm F2.8", 
    888           0x0324 => "SIGMA 20mm F1.8 EX DG ASPHERICAL RF", 
     913          0x0324 => "Sigma 20mm F1.8 EX DG ASPHERICAL RF", 
    889914          0x0326 => "smc PENTAX-F* 300mm F4.5 ED[IF]", 
    890915          0x0327 => "smc PENTAX-F* 600mm F4 ED[IF]", 
    891916          0x0328 => "smc PENTAX-F MACRO 100mm F2.8", 
    892           0x0329 => "smc PENTAX-F MACRO 50mm F2.8 or Sigma 50mm F2,8 MACRO", 
    893           0x032c => "Tamron 35-90mm F4 AF or various SIGMA models", 
    894           0x032e => "SIGMA APO 70-200mm F2.8 EX", 
     917          0x0329 => Array( 
     918                      "smc PENTAX-F MACRO 50mm F2.8", 
     919                      "Sigma 50mm F2.8 Macro", 
     920                    ), 
     921          0x032c => Array( 
     922                      "Tamron 35-90mm F4 AF", 
     923                      "Sigma AF 10-20mm F4-5.6 EX DC", 
     924                      "Sigma 12-24mm F4.5 EX DG", 
     925                      "Sigma 17-70mm F2.8-4.5 DC Macro", 
     926                      "Sigma 18-50mm F3.5-5.6 DC", 
     927                    ), 
     928          0x032e => Array( 
     929                      "Sigma APO 70-200mm F2.8 EX", 
     930                      "Sigma EX APO 100-300mm F4 IF", 
     931                    ), 
    895932          0x0332 => "smc PENTAX-FA 28-70mm F4 AL", 
    896           0x0333 => "SIGMA 28mm F1.8 EX DG ASPHERICAL MACRO", 
    897           0x0334 => "smc PENTAX-FA 28-200mm F3.8-5.6 AL[IF]", 
     933          0x0333 => "Sigma 28mm F1.8 EX DG ASPHERICAL MACRO", 
     934          0x0334 => Array( 
     935                      "smc PENTAX-FA 28-200mm F3.8-5.6 AL[IF]", 
     936                      "Tamron AF LD 28-200mm F3.8-5.6 [IF] Aspherical (171D)", 
     937                    ), 
    898938          0x0335 => "smc PENTAX-FA 28-80mm F3.5-5.6 AL", 
    899939          0x03f7 => "smc PENTAX-DA FISH-EYE 10-17mm F3.5-4.5 ED[IF]", 
     
    904944          0x03fd => "smc PENTAX-DA 14mm F2.8 ED[IF]", 
    905945          0x03fe => "smc PENTAX-DA 16-45mm F4 ED AL", 
    906           0x03ff => "SIGMA", 
     946          0x03ff => Array( 
     947                      "Sigma 18-200mm F3.5-6.3 DC", 
     948                      "Sigma DL-II 35-80mm F4-5.6", 
     949                      "Sigma DL Zoom 75-300mm F4-5.6", 
     950                      "Sigma DF EX Aspherical 28-70mm F2.8", 
     951                      "Sigma AF Tele 400mm F5.6 Multi-coated", 
     952                      "Sigma 24-60mm F2.8 EX DG", 
     953                      "Sigma 70-300mm F4-5.6 Macro", 
     954                      "Sigma 55-200mm F4-5.6 DC", 
     955                      "Sigma 18-50mm F2.8 EX DC", 
     956                    ), 
    907957          0x0401 => "smc PENTAX-FA SOFT 28mm F2.8", 
    908958          0x0402 => "smc PENTAX-FA 80-320mm F4.5-5.6", 
     
    911961          0x040c => "smc PENTAX-FA 50mm F1.4", 
    912962          0x040f => "smc PENTAX-FA 28-105mm F4-5.6 [IF]", 
    913           0x0410 => "TAMRON AF 80-210mm F4-5.6 (178D)", 
    914           0x0413 => "TAMRON SP AF 90mm F2.8 (172E)", 
     963          0x0410 => "Tamron AF 80-210mm F4-5.6 (178D)", 
     964          0x0413 => "Tamron SP AF 90mm F2.8 (172E)", 
    915965          0x0414 => "smc PENTAX-FA 28-80mm F3.5-5.6", 
    916966          0x0416 => "TOKINA 28-80mm F3.5-5.6", 
    917967          0x0417 => "smc PENTAX-FA 20-35mm F4 AL", 
    918968          0x0418 => "smc PENTAX-FA 77mm F1.8 Limited", 
    919           0x0419 => "TAMRON SP AF 14mm F2.8", 
    920           0x041a => "smc PENTAX-FA MACRO 100mm F3.5", 
    921           0x041b => "TAMRON AF28-300mm F/3.5-6.3 LD Aspherical[IF] MACRO (285D)", 
     969          0x0419 => "Tamron SP AF 14mm F2.8", 
     970          0x041a => Array( 
     971                      "smc PENTAX-FA MACRO 100mm F3.5", 
     972                      "Cosina 100mm F3.5 Macro", 
     973                    ), 
     974          0x041b => "Tamron AF28-300mm F/3.5-6.3 LD Aspherical[IF] MACRO (285D)", 
    922975          0x041c => "smc PENTAX-FA 35mm F2 AL", 
    923           0x041d => "TAMRON AF 28-200mm F/3.8-5.6 LD Super II MACRO (371D)", 
     976          0x041d => "Tamron AF 28-200mm F/3.8-5.6 LD Super II MACRO (371D)", 
    924977          0x0422 => "smc PENTAX-FA 24-90mm F3.5-4.5 AL[IF]", 
    925978          0x0423 => "smc PENTAX-FA 100-300mm F4.7-5.8", 
    926           0x0424 => "TAMRON AF70-300mm F/4-5.6 LD MACRO", 
    927           0x0425 => "TAMRON SP AF 24-135mm F3.5-5.6 AD AL (190D)", 
     979          0x0424 => "Tamron AF70-300mm F/4-5.6 LD MACRO", 
     980          0x0425 => "Tamron SP AF 24-135mm F3.5-5.6 AD AL (190D)", 
    928981          0x0426 => "smc PENTAX-FA 28-105mm F3.2-4.5 AL[IF]", 
    929982          0x0427 => "smc PENTAX-FA 31mm F1.8AL Limited", 
    930           0x0429 => "TAMRON AF 28-200mm Super Zoom F3.8-5.6 Aspherical XR [IF] MACRO (A03)", 
     983          0x0429 => "Tamron AF 28-200mm Super Zoom F3.8-5.6 Aspherical XR [IF] MACRO (A03)", 
    931984          0x042b => "smc PENTAX-FA 28-90mm F3.5-5.6", 
    932985          0x042c => "smc PENTAX-FA J 75-300mm F4.5-5.8 AL", 
    933           0x042d => "TAMRON 28-300mm F3.5-6.3 Ultra zoom XR", 
     986          0x042d => Array( 
     987                      "Tamron AF 28-300mm F3.5-6.3 XR Di LD Aspherical [IF] Macro", 
     988                      "Tamron 28-300mm F3.5-6.3 Ultra zoom XR", 
     989                    ), 
    934990          0x042e => "smc PENTAX-FA J 28-80mm F3.5-5.6 AL", 
    935991          0x042f => "smc PENTAX-FA J 18-35mm F4-5.6 AL", 
    936           0x0431 => "TAMRON SP AF 28-75mm F2.8 XR Di (A09)", 
     992          0x0431 => "Tamron SP AF 28-75mm F2.8 XR Di (A09)", 
    937993          0x0433 => "smc PENTAX-D FA 50mm F2.8 MACRO", 
    938994          0x0434 => "smc PENTAX-D FA 100mm F2.8 MACRO", 
     
    9491005          0x04f7 => "smc PENTAX-DA 10-17mm F3.5-4.5 ED [IF] Fisheye zoom", 
    9501006          0x04f8 => "smc PENTAX-DA 12-24mm F4 ED AL [IF]", 
    951           0x04f9 => "TAMRON XR DiII 18-200mm F3.5-6.3 (A14)", 
     1007          0x04f9 => "Tamron XR DiII 18-200mm F3.5-6.3 (A14)", 
    9521008          0x04fa => "smc PENTAX-DA 50-200mm F4-5.6 ED", 
    9531009          0x04fb => "smc PENTAX-DA 40mm F2.8 Limited", 
     
    9981054          0x07e7 => "smc PENTAX-DA 18-250mm F3.5-6.3ED AL [IF]", 
    9991055          0x07e9 => "smc PENTAX-DA 35mm F2.8 Macro Limited", 
    1000           0x07ea => "smc PENTAX-DA* 300 mm F4ED [IF] SDM (SDM not used)", 
     1056          0x07ea => "smc PENTAX-DA* 300mm F4ED [IF] SDM (SDM not used)", 
    10011057          0x07eb => "smc PENTAX-DA* 200mm F2.8 ED [IF] SDM (SDM not used)", 
    10021058          0x07ec => "smc PENTAX-DA 55-300mm F4-5.8 ED", //from exiftool 
    1003           0x07ee => "TAMRON AF 18-250mm F3.5-6.3 Di II LD Aspherical [IF] MACRO", 
     1059          0x07ee => "Tamron AF 18-250mm F3.5-6.3 Di II LD Aspherical [IF] MACRO", 
    10041060          0x07f1 => "smc PENTAX-DA* 50-135mm F2.8 ED [IF] SDM (SDM not used)", 
    10051061          0x07f2 => "smc PENTAX-DA* 16-50mm F2.8 ED AL [IF] SDM (SDM not used)", 
     
    10091065          0x08e3 => "smc PENTAX DA* 60-250mm F4 [IF] SDM", //from exiftool 
    10101066          0x08e8 => "smc PENTAX-DA 17-70mm F4 AL [IF] SDM", //from exiftool 
    1011           0x08ea => "smc PENTAX-DA* 300 mm F4ED [IF] SDM", 
     1067          0x08ea => "smc PENTAX-DA* 300mm F4ED [IF] SDM", 
    10121068          0x08eb => "smc PENTAX-DA* 200mm F2.8 ED [IF] SDM", 
    10131069          0x08f1 => "smc PENTAX-DA* 50-135mm F2.8 ED [IF] SDM", 
    10141070          0x08f2 => "smc PENTAX-DA* 16-50mm F2.8 ED AL [IF] SDM", 
    1015           0x08ff => "Sigma lens" //from exiftool 
    1016         ) 
     1071          0x08ff => Array( 
     1072                      "Sigma 70-200mm F2.8 EX DG Macro HSM II", 
     1073                      "Sigma APO 150-500mm F5-6.3 DG OS HSM", 
     1074                    ), 
     1075          0xffff => "Unknown", 
     1076        ), 
    10171077      ), // < LensType 
    10181078 
Note: See TracChangeset for help on using the changeset viewer.