Hi all,
I'm new to image processing, so I'm sorry if this is a dumb question.
I'm trying to load the metadata from image files generated by a JAI-PULNIX
camera, model
TS-1327EN.
I am specifically interested in getting the following tag values:
ExifTagConstants.EXIF_TAG_IMAGE_DESCRIPTION,
ExifTagConstants.EXIF_TAG_DATE_TIME_ORIGINAL and
ExifTagConstants.EXIF_TAG_SUB_SEC_TIME_ORIGINAL.
But, when the following line of code is executed:
IImageMetadata metadata = Sanselan.getMetadata(file);
I get one of two errors:
java.io.IOException: Invalid Segment: insufficient data
at
org.apache.sanselan.common.BinaryFileFunctions.readByteArray(BinaryFileFunctions.java:497)
at
org.apache.sanselan.formats.jpeg.JpegUtils.traverseJFIF(JpegUtils.java:88)
at
org.apache.sanselan.formats.jpeg.JpegImageParser.readSegments(JpegImageParser.java:175)
at
org.apache.sanselan.formats.jpeg.JpegImageParser.readSegments(JpegImageParser.java:273)
at
org.apache.sanselan.formats.jpeg.JpegImageParser.getExifRawData(JpegImageParser.java:383)
at
org.apache.sanselan.formats.jpeg.JpegImageParser.getExifMetadata(JpegImageParser.java:363)
at
org.apache.sanselan.formats.jpeg.JpegImageParser.getMetadata(JpegImageParser.java:314)
at org.apache.sanselan.Sanselan.getMetadata(Sanselan.java:871)
at org.apache.sanselan.Sanselan.getMetadata(Sanselan.java:864)
at org.apache.sanselan.Sanselan.getMetadata(Sanselan.java:839)
at MetadataExample.metadataExample(MetadataExample.java:21)
or
java.io.IOException: Could not read block (block start: 1020, block length:
1447680,
data length: 900).
at
org.apache.sanselan.common.byteSources.ByteSourceArray.getBlock(ByteSourceArray.java:47)
at
org.apache.sanselan.formats.tiff.TiffReader.getTiffRawImageData(TiffReader.java:409)
at
org.apache.sanselan.formats.tiff.TiffReader.readDirectory(TiffReader.java:197)
at
org.apache.sanselan.formats.tiff.TiffReader.readDirectory(TiffReader.java:100)
at
org.apache.sanselan.formats.tiff.TiffReader.readDirectories(TiffReader.java:92)
at org.apache.sanselan.formats.tiff.TiffReader.read(TiffReader.java:399)
at
org.apache.sanselan.formats.tiff.TiffReader.readContents(TiffReader.java:390)
at
org.apache.sanselan.formats.tiff.TiffImageParser.getMetadata(TiffImageParser.java:125)
at org.apache.sanselan.ImageParser.getMetadata(ImageParser.java:76)
at
org.apache.sanselan.formats.jpeg.JpegImageParser.getExifMetadata(JpegImageParser.java:376)
at
org.apache.sanselan.formats.jpeg.JpegImageParser.getMetadata(JpegImageParser.java:314)
at org.apache.sanselan.Sanselan.getMetadata(Sanselan.java:871)
at org.apache.sanselan.Sanselan.getMetadata(Sanselan.java:864)
at org.apache.sanselan.Sanselan.getMetadata(Sanselan.java:839)
at MetadataExample.metadataExample(MetadataExample.java:21)
I'm attaching two files. One for each of the errors.
Is there something wrong with the encoding of these images?
If that is the case I could contact JAI-PULNIX and ask them to fix, but I'm not
sure
what the problem is.
Any help would be much appreciated.
Thank you,
Bruno Abreu
--
Living Data - Sistemas de Informação e Apoio à Decisão, Lda.
Rua Luís de Camões, Nº 133, 1º B Phone: +351 213622163
1300-357 LISBOA Fax: +351 213622165
Portugal URL: www.livingdata.pt