You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by ni...@apache.org on 2010/09/03 19:01:44 UTC
svn commit: r992375 - in /tika/trunk:
tika-core/src/main/java/org/apache/tika/metadata/TIFF.java
tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
tika-parsers/src/test/java/org/apache/tika/parser/jpeg/JpegParserTest.java
Author: nick
Date: Fri Sep 3 17:01:44 2010
New Revision: 992375
URL: http://svn.apache.org/viewvc?rev=992375&view=rev
Log:
Add TIFF/Exif Flash property and support (TIKA-504)
Modified:
tika/trunk/tika-core/src/main/java/org/apache/tika/metadata/TIFF.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/jpeg/JpegParserTest.java
Modified: tika/trunk/tika-core/src/main/java/org/apache/tika/metadata/TIFF.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-core/src/main/java/org/apache/tika/metadata/TIFF.java?rev=992375&r1=992374&r2=992375&view=diff
==============================================================================
--- tika/trunk/tika-core/src/main/java/org/apache/tika/metadata/TIFF.java (original)
+++ tika/trunk/tika-core/src/main/java/org/apache/tika/metadata/TIFF.java Fri Sep 3 17:01:44 2010
@@ -52,13 +52,17 @@ public interface TIFF {
Property.internalInteger("tiff:SamplesPerPixel");
/**
+ * Did the Flash fire when taking this image?
+ */
+ Property FLASH_FIRED =
+ Property.internalBoolean("exif:Flash");
+
+ /**
* "Exposure time in seconds."
*/
Property EXPOSURE_TIME =
Property.internalRational("exif:ExposureTime");
- // TODO "exif:Flash"
-
/**
* "F-Number."
* The f-number is the focal length divided by the "effective" aperture
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java?rev=992375&r1=992374&r2=992375&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java Fri Sep 3 17:01:44 2010
@@ -185,6 +185,21 @@ public class ImageMetadataExtractor {
return;
}
+ if(tag.getTagName().equals("Flash") ||
+ tag.getTagType() == 37385) {
+ String flash = tag.getDescription();
+ if(flash.indexOf("Flash fired") > -1) {
+ metadata.set(Metadata.FLASH_FIRED, Boolean.TRUE.toString());
+ }
+ else if(flash.indexOf("Flash did not fire") > -1) {
+ metadata.set(Metadata.FLASH_FIRED, Boolean.FALSE.toString());
+ }
+ else {
+ metadata.set(Metadata.FLASH_FIRED, flash);
+ }
+ return;
+ }
+
if(tag.getTagName().equals("F-Number") ||
tag.getTagType() == 33437) {
Object fnumber = directory.getObject(tag.getTagType());
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/jpeg/JpegParserTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/jpeg/JpegParserTest.java?rev=992375&r1=992374&r2=992375&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/jpeg/JpegParserTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/jpeg/JpegParserTest.java Fri Sep 3 17:01:44 2010
@@ -46,6 +46,7 @@ public class JpegParserTest extends Test
assertEquals("6.25E-4", metadata.get(Metadata.EXPOSURE_TIME)); // 1/1600
assertEquals("5.6", metadata.get(Metadata.F_NUMBER));
+ assertEquals("false", metadata.get(Metadata.FLASH_FIRED));
assertEquals("194.0", metadata.get(Metadata.FOCAL_LENGTH));
assertEquals("400", metadata.get(Metadata.ISO_SPEED_RATINGS));
assertEquals("Canon", metadata.get(Metadata.EQUIPMENT_MAKE));
@@ -56,8 +57,6 @@ public class JpegParserTest extends Test
assertEquals("240.0", metadata.get(Metadata.RESOLUTION_VERTICAL));
assertEquals("Inch", metadata.get(Metadata.RESOLUTION_UNIT));
- // TODO - Flash
-
// Common tags
assertEquals("Date/Time for when the photo was taken, unspecified time zone",
"2009-10-02T23:02:49", metadata.get(Metadata.DATE));
@@ -88,6 +87,7 @@ public class JpegParserTest extends Test
assertEquals("6.25E-4", metadata.get(Metadata.EXPOSURE_TIME)); // 1/1600
assertEquals("5.6", metadata.get(Metadata.F_NUMBER));
+ assertEquals("false", metadata.get(Metadata.FLASH_FIRED));
assertEquals("194.0", metadata.get(Metadata.FOCAL_LENGTH));
assertEquals("400", metadata.get(Metadata.ISO_SPEED_RATINGS));
assertEquals("Canon", metadata.get(Metadata.EQUIPMENT_MAKE));