Tommy 碎碎念

Tommy Wu's blog

« 上一篇 | 下一篇 »

Gallery 2.1 RC1 ISO 值的讀取問題
post by tommy @ 17 二月, 2006 10:50
前幾天將 Gallery 由 2.0.2 升級到 2.1 RC1, 解決了新版本 ffmpeg 與 dcraw 搭配的問題, 但是發現我的一些 D50 拍的照片, 在經過 ISOfix 修正 ISO 之後, 原本在 2.0.2 可以正常顯示, 但是新的版本不能.

Nikon D70/D50 所產生的 jpg 檔案, 是將 ISO 的值放在 MakerNote 的某個欄位中, 所以如果你用的軟體沒有特別做這個處理時, 並不能顯示該檔案的 ISO 值. 在網路上可以找到 ISOFix 這個軟體可以將 ISO 值放到一般軟體支援的 ISOSpeedRatings 欄位中.

這個作法可以讓 Gallery 2.0.x 正確顯示 ISO. 但是在 2.1 RC1 中不行. 在檢查了 Gallery 2.1 RC1 的原始碼後, 發現在 modules/exif/classes/ExifHelper.class 中, 對於 ISO 的讀取順序, 是先讀 MakerNote 裡頭的某幾個欄位, 如果都不存在, 最後才讀取 ISOSpeedRatings 這個欄位. 所以就把這個順序改了一下, 至少在我的 Gallery 中, 還沒看到有不能正常讀取的情形:

--- ExifHelper.class.orig       2006-02-13 22:30:59.102918749 +0800
+++ ExifHelper.class    2006-02-13 13:28:09.878226663 +0800
@@ -583,9 +583,9 @@
            array($gallery->i18n('Shutter Speed Value'),
                  'SubIFD.ShutterSpeedValue', 'SubIFD.ExposureTime');
        $data['ISO'] =
-           array($gallery->i18n('ISO'),
+           array($gallery->i18n('ISO'), 'SubIFD.ISOSpeedRatings',
                  'SubIFD.MakerNote.Settings 1.ISO', 'SubIFD.MakerNote.ISOSelection',
-                 'SubIFD.MakerNote.ISOSetting', 'SubIFD.ISOSpeedRatings');
+                 'SubIFD.MakerNote.ISOSetting');
        $data['FocalLength'] =
            array($gallery->i18n('Focal Length'), 'SubIFD.FocalLength');
        $data['Flash'] =

這個 patch 我有轉送給 Gallery 的團隊, 不過目前似乎不打算接受, 說沒有對所有的 Maker 與 Model 測試過 (我去那找所有的 Maker 與 Model? 我也不相信他們改成目前這樣有測過, 不然我的 D50 產生的檔案怎麼就不能讀?), 反正目前還在討論中, 如果真的不接受, 那就自己每次更新時再修正吧.

目前尚未接受這個 patch, 不過已經 submit 到 sourceforge 了, 要不要再說吧:
http://sourceforge.net/tracker/index.php?func=detail&aid=1433383&group_id=7130&atid=307130 

Del.icio.us Furl HEMiDEMi Technorati MyShare
commons icon [1] Re:Gallery 2.1 RC1 ISO 值的讀取問題 [ 回覆 ]

正奇怪ISO秀不出來說!推推推!

commons icon [2] Re:Gallery 2.1 RC1 ISO 值的讀取問題 [ 回覆 ]

如果是 nikon 的相機, ISO 也許用這一篇的修改方法會比較好.
http://blog.teatime.com.tw/1/post/237

迴響
暱稱:
標題:
個人網頁:
電子郵件:
authimage

迴響

  

Bad Behavior 已經阻擋了 95 個過去 7 天試圖闖關的垃圾迴響與引用。
Power by LifeType. Template design by JamesHuang. Valid XHTML and CSS