commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "FG (JIRA)" <j...@apache.org>
Subject [jira] Commented: (SANSELAN-37) Wrinting unmodified EXIF-Data to new image changes values
Date Fri, 12 Mar 2010 19:02:27 GMT

    [ https://issues.apache.org/jira/browse/SANSELAN-37?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12844618#action_12844618
] 

FG commented on SANSELAN-37:
----------------------------

Oh, and actually that could be exactly what the javadoc of updateExifMetadataLossless() describes:

http://commons.apache.org/sanselan/api-release/org/apache/sanselan/formats/jpeg/exifRewrite/ExifRewriter.html
:
Note that this uses the "Lossless" approach - in order to preserve data embedded in the EXIF
segment that it can't parse (such as Maker Notes), this algorithm avoids overwriting any part
of the original segment that it couldn't parse. This can cause the EXIF segment to grow with
each update, which is a serious issue, since all EXIF data must fit in a single APP1 segment
of the Jpeg image. 

So this issue might be closed?

> Wrinting unmodified EXIF-Data to new image changes values
> ---------------------------------------------------------
>
>                 Key: SANSELAN-37
>                 URL: https://issues.apache.org/jira/browse/SANSELAN-37
>             Project: Commons Sanselan
>          Issue Type: Bug
>    Affects Versions: 0.94-incubator
>         Environment: Canon Powershot A570 IS
>            Reporter: FG
>         Attachments: diff.txt, out.jpg, out.txt, src.txt, src1.jpg, src2.jpg
>
>
> I used the following code, which just reads the EXIF data from a picture of a Canon Powershot
A570 IS and writes it back to another file without modifying it:
> File src1 = new File("c:/temp/src1.jpg");
> File src2 = new File("c:/temp/src2.jpg");
> File dst = new File("c:/temp/out.jpg");
> IImageMetadata metadata = Sanselan.getMetadata(src1);
> TiffImageMetadata exif = ((JpegImageMetadata) metadata).getExif();
> TiffOutputSet outputSet = exif.getOutputSet();
> OutputStream os = new BufferedOutputStream(new FileOutputStream(dst));
> new ExifRewriter().updateExifMetadataLossless(src2, os, outputSet);
> os.close();
> src1.jpg is a file with EXIF data
> src2.jpg is src1.jpg without EXIF data (saved it with IrfanView and unchecked the appropriate
checkboxes in the Jpeg Save Dialog) 
> out.jpg should contain the EXIF information after the code was run.
> Actually the EXIF data is not the same after the call.
> So, is there anything wrong with the above code or with the images or is
> this a bug in Sanselan?
> Tried the same with the image of a Sony Alpha 350. The effect was much less.
> I try to attach the images and exif data in the next step.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message