Patch #1223

Decoding ShutterCount for Pentax images

Added by Robin Mills 6 months ago. Updated 6 months ago.

Status:ClosedStart date:09 Sep 2016
Priority:NormalDue date:
Assignee:Robin Mills% Done:

100%

Category:makernoteEstimated time:2.00 hours
Target version:0.26

Associated revisions

Revision 4477
Added by Robin Mills 6 months ago

#1223 Thank you to Alexey for reporting this and providing the patch.

Revision 4478
Added by Robin Mills 6 months ago

#1223 Correction to r4477 to fix Cygwin build breaker. #include <cstdint> demands C++11 support on GCC 4.9.3 on the buildserver. Code compiles without cstdint and iomanip

History

#1 Updated by Robin Mills 6 months ago

Firstly. I would like to thank Alexey for reporting this and providing the patch. A good job. Thank You, Alexey.

I have no idea what ShutterCount is. So I'm accepting Alexey's code in good faith. For sure it has made a difference and has not broken the test suite.

592 rmills@rmillsmm:~/gnu/exiv2/ttt $ exiv2 -vVg svn ; exiv2 -pa --grep Shutter /Users/rmills/jenkins/testfiles/992/pentax/*.DNG /Users/rmills/jenkins/testfiles/992/pentax/*.PEF 
exiv2 0.25 001900 (64 bit build)
svn=4476
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K-R.DNG  Exif.PentaxDng.ShutterCount                  Undefined   4  245 27 195 71
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K30.DNG  Exif.PentaxDng.ShutterCount                  Undefined   4  240 27 195 147
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K50.DNG  Exif.PentaxDng.ShutterCount                  Undefined   4  232 15 214 204
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K-3-II.PEF  Exif.PentaxDng.ShutterCount                  Undefined   4  234 57 226 253
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K-7.PEF  Exif.Pentax.ShutterCount                     Undefined   4  247 5 247 15
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K-m.PEF  Exif.Pentax.ShutterCount                     Undefined   4  245 47 215 29
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K100.PEF  Exif.Pentax.ShutterCount                     Undefined   4  245 60 152 79
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K5.PEF  Exif.Pentax.ShutterCount                     Undefined   4  237 51 235 101
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K5IIS.PEF  Exif.Pentax.ShutterCount                     Undefined   4  234 14 219 37
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_KX.PEF  Exif.Pentax.ShutterCount                     Undefined   4  237 57 227 37
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_STAR_DL2.PEF  Exif.Pentax.ShutterCount                     Undefined   4  243 45 204 151
593 rmills@rmillsmm:~/gnu/exiv2/ttt $ 
625 rmills@rmillsmm:~/gnu/exiv2/trunk $ exiv2 -vVg svn ; exiv2 -pa --grep Shutter /Users/rmills/jenkins/testfiles/992/pentax/*.DNG /Users/rmills/jenkins/testfiles/992/pentax/*.PEF
exiv2 0.25 001900 (64 bit build)
svn=4477
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K-R.DNG  Exif.PentaxDng.ShutterCount                  Undefined   4  12991
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K30.DNG  Exif.PentaxDng.ShutterCount                  Undefined   4  115
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K50.DNG  Exif.PentaxDng.ShutterCount                  Undefined   4  554
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K-3-II.PEF  Exif.PentaxDng.ShutterCount                  Undefined   4  1
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K-7.PEF  Exif.Pentax.ShutterCount                     Undefined   4  2017
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K-m.PEF  Exif.Pentax.ShutterCount                     Undefined   4  236
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K100.PEF  Exif.Pentax.ShutterCount                     Undefined   4  24757
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K5.PEF  Exif.Pentax.ShutterCount                     Undefined   4  150
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_K5IIS.PEF  Exif.Pentax.ShutterCount                     Undefined   4  3544
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_KX.PEF  Exif.Pentax.ShutterCount                     Undefined   4  3542
/Users/rmills/jenkins/testfiles/992/pentax/RAW_PENTAX_STAR_DL2.PEF  Exif.Pentax.ShutterCount                     Undefined   4  1635
626 rmills@rmillsmm:~/gnu/exiv2/trunk $ 
I've also made some minor formatting changes to the code. In particular, I've removed Author and other credits as that information is stored in SVN.

I've extracted the metadata from one PEF and one DNG and added them to the test suite:

626 rmills@rmillsmm:~/gnu/exiv2/trunk $ dir test/data/RAW*
-rw-r--r--+ 1 rmills  staff    59K  9 Sep 09:13 test/data/RAW_PENTAX_K100.exv
-rw-r--r--+ 1 rmills  staff   9.2K  9 Sep 09:12 test/data/RAW_PENTAX_K30.exv
627 rmills@rmillsmm:~/gnu/exiv2/trunk $
And lastly, thanks to Alexey for fixing the unused variable in easyaccess.cpp. Perhaps I should have opened another issue to deal with that, however I have not done this to save my time.

#2 Updated by Robin Mills 6 months ago

  • Status changed from Assigned to Closed
  • % Done changed from 80 to 100

I am closing this issue as it has successfully built on M/L/Cygwin/MinGW and Visual Studio.

http://exiv2.dyndns.org:8080/job/Exiv2-trunk/2619/

There's a lot of grumbling coming from the test suite concerning WebP, ICC and other stuff which isn't related to this issue. The trunk builds and passes OK when I build manually (on my laptop and/or buildserver desktop). I'm undertaking buildserver maintenance at the moment to start publishing a daily build for MinGW/32. I'll investigate and fix the buildserver. These buildserver/test issues have nothing to do with the changes submitted in this issue.

Also available in: Atom PDF

Redmine Appliance - Powered by TurnKey Linux