Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Message from discussion exifr - Ruby EXIF reading library

Path: g2news1.google.com!news3.google.com!proxad.net!feeder1-2.proxad.net!fdn.fr!gegeweb.org!talisker.lacave.net!lacave.net!not-for-mail
From: Benjohn Barnes <benj...@fysh.org>
Newsgroups: comp.lang.ruby
Subject: exifr - Ruby EXIF reading library
Date: Tue, 3 Feb 2009 18:02:48 -0500
Organization: Service de news de lacave.net
Lines: 30
Message-ID: <4988CD1C.6060803@fysh.org>
NNTP-Posting-Host: bristol.highgroove.com
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: 8bit
X-Trace: talisker.lacave.net 1233702208 30530 65.111.164.187 (3 Feb 2009 23:03:28 GMT)
X-Complaints-To: abuse@lacave.net
NNTP-Posting-Date: Tue, 3 Feb 2009 23:03:28 +0000 (UTC)
X-Received-From: This message has been automatically forwarded from the
	ruby-talk mailing list by a gateway at comp.lang.ruby. If it is SPAM, it did
	not originate at comp.lang.ruby. Please report the original sender, and not
	us. Thanks! For more details about this gateway, please visit: http://blog.grayproductions.net/categories/the_gateway 
X-Mail-Count: 326821
X-Ml-Name: ruby-talk
X-Rubymirror: Yes
X-Ruby-Talk: <4988CD1C.6060...@fysh.org>

I've just made use of the EXIFR library. The docs are here:

	http://exifr.rubyforge.org/api/index.html

It's splendid, and highly recommended as absolutely as simple as can be, 
but completely effective. Thank you very much "R.W. van ‘t Veer". I 
particularly like that it's (I assume?) pure ruby. It certainly didn't 
seem to do anything unusual during:

	sudo gem install exifr

Why do I need this? I've just got 550 photos back from an online 
printing outfit, but to my dismay, they have stopped labelling the back 
of prints with photo's capture time (from EXIF meta-data). All they have 
now is the completely arbitrary filename.

No matter! EXIFR to the rescue! A quick script in irb along the lines of:

f = Dir.glob('*.jpg')
table = f.map {|file_name| [file_name, 
EXIFR::JPEG.new(file_name).exif.date_time_original]}
table.each {|name, date| puts "#{name} #{date}"}; nil	

And I've got a nice ASCII table from which I can quite quickly label the 
photos by hand. Hopefully by a nice warm fire with a cup of cocoa.


All the best,
	Benjohn