I think that licence is OK.
Using that libray for plugin is realy simple. I've done some test some
time ago.
All you have to do is something like this (content is byte[])
Metadata metadata =
JpegMetadataReader.extractMetadataFromJpegSegmentReader(new
JpegSegmentReader(content));
And then you can read all EXIF and IPTC data you need:
Directory exifDirectory =
metadata.getDirectory(ExifDirectory.class);
String exifCameraMake =
exifDirectory.getString(ExifDirectory.TAG_MAKE);
String exifCameraModel =
exifDirectory.getString(ExifDirectory.TAG_MODEL);
String exifCopyright =
exifDirectory.getString(ExifDirectory.TAG_COPYRIGHT);
String exifArtist =
exifDirectory.getString(ExifDirectory.TAG_ARTIST);
String exifSubjectLocation =
exifDirectory.getString(ExifDirectory.TAG_SUBJECT_LOCATION);
String exifSubjectLocation2 =
exifDirectory.getString(ExifDirectory.TAG_SUBJECT_LOCATION_2);
String exifUserComment =
exifDirectory.getString(ExifDirectory.TAG_USER_COMMENT);
String exifWinTitle =
exifDirectory.getString(ExifDirectory.TAG_WIN_TITLE);
String exifWinComment =
exifDirectory.getString(ExifDirectory.TAG_WIN_COMMENT);
String exifWinAuthor =
exifDirectory.getString(ExifDirectory.TAG_WIN_AUTHOR);
String exifWinKeywords =
exifDirectory.getString(ExifDirectory.TAG_WIN_KEYWORDS);
String exifWinSubject =
exifDirectory.getString(ExifDirectory.TAG_WIN_SUBJECT);
Directory iptcDirectory =
metadata.getDirectory(IptcDirectory.class);
String iptcCaption =
iptcDirectory.getString(IptcDirectory.TAG_CAPTION);
String iptcWriter =
iptcDirectory.getString(IptcDirectory.TAG_WRITER);
String iptcHeadline =
iptcDirectory.getString(IptcDirectory.TAG_HEADLINE);
String iptcKeywords =
iptcDirectory.getString(IptcDirectory.TAG_KEYWORDS);
String iptcCredit =
iptcDirectory.getString(IptcDirectory.TAG_CREDIT);
String iptcCopyrightNotice =
iptcDirectory.getString(IptcDirectory.TAG_COPYRIGHT_NOTICE);
String iptcObjectName =
iptcDirectory.getString(IptcDirectory.TAG_OBJECT_NAME);
String iptcCategory =
iptcDirectory.getString(IptcDirectory.TAG_CATEGORY);
String iptcSupplementalCategories =
iptcDirectory.getString(IptcDirectory.TAG_SUPPLEMENTAL_CATEGORIES);
String iptcSource =
iptcDirectory.getString(IptcDirectory.TAG_SOURCE);
String iptcCity = iptcDirectory.getString(IptcDirectory.TAG_CITY);
String iptcState =
iptcDirectory.getString(IptcDirectory.TAG_PROVINCE_OR_STATE);
String iptcCountry =
iptcDirectory.getString(IptcDirectory.TAG_COUNTRY_OR_PRIMARY_LOCATION);
But I think that jpeg plugin should have some additional search
criteria, such as image height and width and dominant colors (e.g.
dominant color search on http://www.ifimages.com/). What would it take
to have lucene range queries in nutch ? Something like: "height:[500
TO 600] width:[300 TO 400].
Sekula
Philippe EUGENE wrote:
I think it makes sense.
For a general search engine it will allow to search on image comments
for
instance.
For an image search engine it will allow to search on technical metadata
(exposure time, date, ...)
Ok. I can try to make this plug-in next week.
I can use this java library :
http://www.drewnoakes.com/code/exif/
I hope there is no Licensing problem using this library inside Nutch
Project.
--
Philippe