Hi Bruno,
thanks again for coming back to me.

> I believe the issue is that what you are trying to do is to add a segment, 
> not a tag.
>
>
> I think what you are trying to add, is a comment in the COM segment.

yes, exactly.

> Have a look at this page
>
> [1] https://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/JPEG.html
>
> There you should find a table. Where you see the JPEG tags, they are the 
> identifier of
> JPEG segments.
>
> Near the bottom of that table, you will find the COM segment. It is a bit 
> confusing
> to speak about tags, segments, markers. So here's a practical example with 
> exiftool,
> which you mentioned before you used too.
>
> 1. This Exiv2 page has a sample image with some metadata 
> http://www.exiv2.org/sample.html. Save it somewhere
> 2. Run `exiftool -htmldump img_1771.jpg > before.html`
> 3. Run `exiftool -comment=KIAORA img_1771.jpg`
> 4. Run `exiftool -htmldump img_1771.jpg > after.html`
>
>
> Now open before.html and after.html. Search for "segment" in your browser. In 
> before.html, you should find
> just the following:
>
> "APP0 JFIF segment APP1 header Exif header"
>
> Which if you look at [1] you should be able to compare the EXIF tags in that 
> segment,
> matching by tag name (e.g.FocalLength) and perhaps by group name too (e.g.
> ExifIFD).
>
> You won't find the COM segment in before.html, as the Exiv2 sample image 
> doesn't have it.
>
>
> Now, if you open after.html, and search for "KIAORA", or if you have noticed 
> before when you
> searched by "segment", there should be now a second segment. Look again at 
> [1], near the
> bottom of the first table. You should find a COM segment.
>
> In [imaging], there is a certain distinction between tag and segment. The 
> example I had sent before
> was for tags, sorry. I am not aware of a way to modify the COM segment in 
> [imaging] at the moment.
> There is an open JIRA ticket for that (sent in my previous e-mail).

Ok, in fact I had been fooled by the code that had been added and
thought that there was a way to do it fo which you didn't know. Sorry,
my misunderstanding here.
Now everything is clear, thank you.

> Might be easier to use the UserComment tag perhaps, or dig a bit deeper into 
> the code to
> see if you can find a way to modify it in a lower level, by modifying bytes 
> perhaps...
>
> Feel free to chime in there and watch that ticket if you would like to see 
> that feature
> implemented, or give any suggestions.
>
>
> Hope that helps,


It does, thanks a lot.

All the best,
Andrea

>
> Bruno
>
> ________________________________
> From: andrea antonello <andrea.antone...@gmail.com>
> To: Commons Users List <user@commons.apache.org>
> Sent: Monday, 30 April 2018 7:55 PM
> Subject: Re: [imaging] Comment tag problem
>
>
>
> Hi Bruno and Martin,
> thanks a ton for your help.
>
> I tried the code but nothing changes.
>
> My output doesn't have a COM segment, but I noticed something.
>
> This is the info dump of the image before applying Martin's code:
>
> File Type = JPEG
> File Size = 231038
> @000000000=0       :  <JPEG_SOI>
> @0x0000002=2       :    <JPEG_APP0> 0xffe0 length 16, 'JFIF'
> @0x000000b=11      :      Version       = 1.2
> @0x000000d=13      :      Units         = 'aspect ratio'
> @0x000000e=14      :      Xdensity      = 1
> @0x0000010=16      :      Ydensity      = 1
> @0x0000012=18      :      XThumbnail    = 0
> @0x0000013=19      :      YThumbnail    = 0
> @0x0000013=19      :    </JPEG_APP0>
> @0x0000014=20      :    <JPEG_DQT> length 67
> @0x0000059=89      :    <JPEG_DQT> length 67
> @0x000009e=158     :    <JPEG_SOF_0> length 17, 8 bits/sample,
> components=3, width=1418, height=969
> @0x00000b1=177     :    <JPEG_DHT> length 31 table class = 0 table id = 0
> @0x00000d2=210     :    <JPEG_DHT> length 181 table class = 0 table id = 1
> @0x0000189=393     :    <JPEG_DHT> length 31 table class = 1 table id = 0
> @0x00001aa=426     :    <JPEG_DHT> length 181 table class = 1 table id = 1
> @0x0000261=609     :    <JPEG_SOS> length 12  start of JPEG data, 3
> components 1374042 pixels
> @0x003867c=231036  :  <JPEG_EOI> JPEG length 231038
> -0x003867d=231037  :  END OF FILE
> @000000000=0       :  Start of JPEG baseline DCT compressed primary
> image [1418x969] length 231038 (APP0)
> -0x003867d=231037  :    End of JPEG primary image data
> Number of images = 1
> File Format = JPEG/APP0/JFIF
>
>
> and this is when I do apply it:
>
> File Type = JPEG
> File Size = 231183
> @000000000=0       :  <JPEG_SOI>
> @0x0000002=2       :    <JPEG_APP0> 0xffe0 length 16, 'JFIF'
> @0x000000b=11      :      Version       = 1.2
> @0x000000d=13      :      Units         = 'aspect ratio'
> @0x000000e=14      :      Xdensity      = 1
> @0x0000010=16      :      Ydensity      = 1
> @0x0000012=18      :      XThumbnail    = 0
> @0x0000013=19      :      YThumbnail    = 0
> @0x0000013=19      :    </JPEG_APP0>
> @0x0000014=20      :    <JPEG_APP1> 0xffe1 length 143,
> 'http://ns.adobe.com/xap/1.0/' - unknown format - (not dumped: use -A)
> -0x00000a4=164     :    </JPEG_APP1>
> @0x00000a5=165     :    <JPEG_DQT> length 67
> @0x00000ea=234     :    <JPEG_DQT> length 67
> @0x000012f=303     :    <JPEG_SOF_0> length 17, 8 bits/sample,
> components=3, width=1418, height=969
> @0x0000142=322     :    <JPEG_DHT> length 31 table class = 0 table id = 0
> @0x0000163=355     :    <JPEG_DHT> length 181 table class = 0 table id = 1
> @0x000021a=538     :    <JPEG_DHT> length 31 table class = 1 table id = 0
> @0x000023b=571     :    <JPEG_DHT> length 181 table class = 1 table id = 1
> @0x00002f2=754     :    <JPEG_SOS> length 12  start of JPEG data, 3
> components 1374042 pixels
> @0x003870d=231181  :  <JPEG_EOI> JPEG length 231183
> -0x003870e=231182  :  END OF FILE
> @000000000=0       :  Start of JPEG baseline DCT compressed primary
> image [1418x969] length 231183
> -0x003870e=231182  :    End of JPEG primary image data
> Number of images = 1
> File Format = JPEG/APP0/JFIF/APP1
>
> It looks like what I did got into the tag: JPEG_APP1, while not
> JPEG_COM has been created as in:
>
> File Type = JPEG
> File Size = 438694
> @000000000=0       :  <JPEG_SOI>
> @0x0000002=2       :    <JPEG_COM> length 137:
> ''GEO-Information,46.5640616313:11.523790723,46.5640616313:11.5093674258,46.5585048222:11.523790723,46.5585048222:11.5093674258,0.000000\0''
> @0x000008d=141     :    <JPEG_APP0> 0xffe0 length 16, 'JFIF'
> @0x0000096=150     :      Version       = 1.1
> [...]
>
>
> Did I miss something or can something be changed to get there?
>
> I tried to have a look at the mentioned testcase but have not been
> able to understand how to switch segment or how segments are chosen in
> first place.
>
> Any idea?
> Thank you,
> Andrea
>
>
>
>
>
>
>
> On Sat, Apr 28, 2018 at 3:15 AM, Bruno P. Kinoshita
> <brunodepau...@yahoo.com.br.invalid> wrote:
>> Hi Martin,
>>
>>
>>>if your requirement is to insert a comment regardless of Java being 
>>>installed why not insert a XMP comment into JPEG or GIF using exiv2 tool
>>
>>
>> It's actually Andrea who is working with comments & JPEG images. I was just 
>> trying to help him, assuming he wants/needs to do that in Java. He pointed 
>> that he could do that with exiftool too (see previous e-mails in the thread 
>> for more).
>>
>> @Andrea, see Martin's code in the e-mail below.
>> Thanks Martin!
>> Bruno
>>
>>
>>
>> ________________________________
>> From: Martin Gainty <mgai...@hotmail.com>
>> To: Commons Users List <user@commons.apache.org>; Bruno P. Kinoshita 
>> <brunodepau...@yahoo.com.br>
>> Sent: Saturday, 28 April 2018 5:38 AM
>> Subject: Re: [imaging] Comment tag problem
>>
>>
>>
>> Bruno
>>
>> if your requirement is to insert a comment regardless of Java being 
>> installed why not insert a XMP comment into JPEG or GIF using exiv2 tool
>>
>> http://www.exiv2.org/manpage.html
>>
>> Exiv2 utility manual - Image metadata library and 
>> tools<http://www.exiv2.org/manpage.html>
>> www.exiv2.org
>> Open Source Exif, IPTC and XMP metadata library and tools with Exif 
>> MakerNote and read/write support
>>
>>
>> MG>see below
>>
>> ________________________________
>> From: Bruno P. Kinoshita <brunodepau...@yahoo.com.br.INVALID>
>> Sent: Friday, April 27, 2018 8:39 AM
>> To: Commons Users List
>> Subject: Re: [imaging] Comment tag problem
>>
>> Hi Andrea!
>>
>> Today spent some minutes with Eclipse and the code base, plus exiftool, to 
>> see where that comment was coming from.
>>
>> That COM, or Comment, that you see in exiftool output is not exactly a 
>> metadata tag. It is actually a JPEG Segment. Sorry for the other suggestions.
>>
>> As far as I know, we are not able to change the segments, but only the 
>> metadata within the TIFF/EXIF directories & tags [2].
>>
>> You can still use comments if that's OK, but not sure how you would achieve 
>> adding the Comment in Java.
>> MG>testXMPInsert borrowed from JpegXmpRewriteTest.java
>> {
>> // test insert
>> String newXmpXml = "comment";
>> //subin your fileName to imageFile.getName()
>> File updated = createTempFile(imageFile.getName() + ".", ".jpg");
>> OutputStream os = null;
>> try
>> {
>> os = new FileOutputStream(updated);
>> os = new BufferedOutputStream(os);
>> new org.apache.sanselan.formats.jpeg..xmp.JpegXmpRewriter().updateXmpXml(
>>                                           
>> org.apache.sanselan.common.byteSources.ByteSourceFile(noXmpFile), os,
>> newXmpXml);
>> } finally
>> {
>> os.close();
>> os = null;
>> }
>>
>> // Debug.debug("Source Segments:");
>> // new JpegUtils().dumpJFIF(new ByteSourceFile(updated));
>>
>> String outXmp = new 
>> org.apache.sanselan.formats.jpeg.JpegImageParser().getXmpXml(
>> new ByteSourceFile(updated), params);
>> assertNotNull(outXmp);
>> assertEquals(outXmp, newXmpXml);
>> }
>>
>> MG>please confirm this works for you
>> MG>required sanselanependency for pom.xml:
>> <groupId>org.apache.sanselan</groupId>
>>   <artifactId>sanselan</artifactId>
>>   <version>0.97-incubator</version>
>>
>>
>> Bruno
>> MG>?
>> MG>Martin-
>>
>>
>> [1] http://u88.n24.queensu.ca/exiftool/forum/index.php?topic=3893.0
>> Writing 
>> comments<http://u88.n24.queensu.ca/exiftool/forum/index.php?topic=3893.0>
>> u88.n24.queensu.ca
>> Writing comments
>>
>>
>>
>> [2] https://issues.apache.org/jira/browse/IMAGING-55
>>
>>
>> ________________________________
>> From: andrea antonello <andrea.antone...@gmail.com>
>> To: Commons Users List <user@commons.apache.org>
>> Sent: Thursday, 26 April 2018 8:02 PM
>> Subject: Re: [imaging] Comment tag problem
>>
>>
>>
>>> I normally use exiftool to compare what imaging is producing. The htmldump 
>>> is quite useful.
>>
>> I just ran the normal info extraction and here you see the comment I
>> would like to reproduce (Comment):
>>
>> ExifTool Version Number         : 10.94
>> File Name                       : 109_Background.jpg
>> Directory                       : .
>> File Size                       : 428 kB
>> File Modification Date/Time     : 2018:03:31 11:01:51+02:00
>> File Access Date/Time           : 2018:04:26 08:59:06+02:00
>> File Inode Change Date/Time     : 2018:03:31 11:01:56+02:00
>> File Permissions                : rw-rw-r--
>> File Type                       : JPEG
>> File Type Extension             : jpg
>> MIME Type                       : image/jpeg
>> Comment                         :
>> GEO-Information,46.5640616313:11.523790723,46.5640616313:11.5093674258,46.5585048222:11.523790723,46.5585048222:11.5093674258,0.000000
>> JFIF Version                    : 1.01
>> Resolution Unit                 : inches
>> X Resolution                    : 96
>> Y Resolution                    : 96
>> Image Width                     : 1608
>> Image Height                    : 901
>> Encoding Process                : Baseline DCT, Huffman coding
>> Bits Per Sample                 : 8
>> Color Components                : 3
>> Y Cb Cr Sub Sampling            : YCbCr4:2:0 (2 2)
>> Image Size                      : 1608x901
>> Megapixels                      : 1.4
>>
>>
>>> I thought you had to create the tag in Java, but if you can use other tools 
>>> and it's easier for you, then that might be the best option.
>>
>> Yes, I do have to recreate it in java. I was just trying to use other
>> tools to check what the comment tag is.
>> Do you have an idea on how to create the above Comment tag?
>>
>>> Otherwise you can create pretty much any other metadata tag you'd like with 
>>> some Java coding.
>>
>> That is what I would love to end up with.
>> Thanks a ton,
>> Andrea
>>
>>
>>> ________________________________
>>> From: andrea antonello <andrea.antone...@gmail.com>
>>> To: Commons Users List <user@commons.apache.org>
>>> Sent: Thursday, 26 April 2018 7:15 PM
>>> Subject: Re: [imaging] Comment tag problem
>>>
>>>
>>>
>>> Hi Bruno,
>>>
>>>> The EXIF tags in imaging should match what's in this page:
>>>> https://sno.phy.queensu.ca/~phil/exiftool/TagNames/EXIF.html
>>>>
>>>> Which contains the XPComment and UserComment tags you mentioned, but no 
>>>> equivalent to the other comment one.
>>>
>>> this is quite inetersting. Actually I have been told that the command:
>>>
>>> exiftool -comment='mycomment'
>>>
>>> creates exaclty the comment I am not able to reproduce. Do you know
>>> what that is?
>>>
>>>
>>>> If you really need to match that tag, then I think you should be able to 
>>>> create your own custom metadata entry.
>>>>
>>>> I think [1] the ExifRewriter and its test class have some code that shows 
>>>> how to rewrite metadata. Find the directory (TiffOutputDirectory.java) 
>>>> with the metadata fields, perhaps remove the UserComment/XPComment if 
>>>> necessary, and then add a new field (TiffOutputField.java), with your 
>>>> metadata tag (TagInfo.java)
>>>
>>> I will try again. I tried already that path, but since it asks me for
>>> a tag (integer) I then end up to have it named as the tag I am trying
>>> to substitute...
>>>
>>> Thanks,
>>> Andrea
>>>
>>>
>>>>
>>>>
>>>> Hope that helps,
>>>> Bruno
>>>>
>>>>
>>>> [1]
>>>> https://github.com/apache/commons-imaging/blob/master/src/main/java/org/apache/commons/imaging/formats/jpeg/exif/ExifRewriter.java
>>>>
>>>> ________________________________
>>>> From: andrea antonello <andrea.antone...@gmail.com>
>>>> To: Commons Users List <user@commons.apache.org>
>>>> Sent: Thursday, 26 April 2018 1:46 AM
>>>> Subject: Re: [imaging] Comment tag problem
>>>>
>>>>
>>>>
>>>> Hi Bruno,
>>>> thanks for your reply.
>>>>
>>>>> I think you tried to include screenshots? If so, it doesn't work very 
>>>>> well in this mailing list.
>>>>
>>>>
>>>> ohh, I didn't figure and didn't notice.
>>>>
>>>>>
>>>>> Could you try adding as attachment, or upload them, or use plain text to 
>>>>> describe the issue? I recently had to work on the tags for some TIFF & 
>>>>> JPEG metadata in [imaging], so hopefully we will be able to locate the 
>>>>> right tag.
>>>>
>>>>
>>>> Fantastic. I investigated further but am still not able to solve this.
>>>>
>>>> The tag I would like to update is one that produces (at least this is
>>>> what I read in the imagemagick image info) a section
>>>>
>>>> Properties:
>>>>
>>>> and under start section I find
>>>>
>>>> comment: 
>>>> GEO-Information,46.5640616313:11.523790723,46.5640616313:11.5093674258,46.5585048222:11.523790723,46.5585048222:11.5093674258,0.000000
>>>>
>>>> The most similar result I have been able to produce with the tags is:
>>>>
>>>> exif:UserComment:GEO-Information,46.5640616313:11.523790723,46.5640616313:11.5093674258,46.5585048222:11.523790723,46.5585048222:11.5093674258,0.000000
>>>>
>>>> and
>>>>
>>>> exif:WinXP-Comments:GEO-Information,46.5640616313:11.523790723,46.5640616313:11.5093674258,46.5585048222:11.523790723,46.5585048222:11.5093674258,0.000000
>>>>
>>>> both not the same as what i am looking for.
>>>>
>>>>
>>>> I have been able to print the following information through an
>>>> application called exifprobe:
>>>>
>>>> @0x0000002=2       :    <JPEG_COM> length 137:
>>>> ''GEO-Information,46.5640616313:11.523790723,46.5640616313:11.5093674258,46.5585048222:11.523790723,46.5585048222:11.5093674258,0.000000\0''
>>>> @0x000008d=141     :    <JPEG_APP0> 0xffe0 length 16, 'JFIF'
>>>> @0x0000096=150     :      Version       = 1.1
>>>> @0x0000098=152     :      Units         = 'dots/inch'
>>>> @0x0000099=153     :      Xdensity      = 96
>>>> @0x000009b=155     :      Ydensity      = 96
>>>> @0x000009d=157     :      XThumbnail    = 0
>>>> @0x000009e=158     :      YThumbnail    = 0
>>>> @0x000009e=158     :    </JPEG_APP0>
>>>> @0x000009f=159     :    <JPEG_DQT> length 67
>>>> @0x00000e4=228     :    <JPEG_DQT> length 67
>>>> @0x0000129=297     :    <JPEG_SOF_0> length 17, 8 bits/sample,
>>>> components=3, width=1608, height=901
>>>> @0x000013c=316     :    <JPEG_DHT> length 31 table class = 0 table id = 0
>>>> @0x000015d=349     :    <JPEG_DHT> length 181 table class = 0 table id = 1
>>>> @0x0000214=532     :    <JPEG_DHT> length 31 table class = 1 table id = 0
>>>> @0x0000235=565     :    <JPEG_DHT> length 181 table class = 1 table id = 1
>>>> @0x00002ec=748     :    <JPEG_SOS> length 12  start of JPEG data, 3
>>>> components 1448808 pixels
>>>> @0x006b1a4=438692  :  <JPEG_EOI> JPEG length 438694
>>>>
>>>> So I think this (JPEG_COM) is not an exif tag as I had been told. I am
>>>> guessing this is reflected by the library's ComSegment class, but I
>>>> could not find any documentation or testcase which would tell me what
>>>> it is and how to rewrite/update it.
>>>>
>>>> Any help is most appreciated,
>>>> Thanks,
>>>>
>>>> Andrea
>>>>
>>>>
>>>>
>>>>
>>>>>
>>>>> CheersBruno
>>>>>
>>>>>
>>>>>       From: andrea antonello <andrea.antone...@gmail.com>
>>>>>  To: Commons Users List <user@commons.apache.org>
>>>>>  Sent: Wednesday, 25 April 2018 1:56 AM
>>>>>  Subject: [imaging] Comment tag problem
>>>>>
>>>>> Hi, I need some help to find the right tag to use to recreate a tag in a
>>>>> jpeg file.
>>>>>
>>>>> Here is the output of the info given by ImageMagick:
>>>>>
>>>>>
>>>>>
>>>>> The tag I need should be under "Properties"
>>>>> and be named: comment
>>>>>
>>>>> I have tried to use user_comment and xpcomment, but they produce something
>>>>> different, like:
>>>>>
>>>>>
>>>>>
>>>>> Can anyone tell me which tag I can use to generate the "comment" tag?
>>>>>
>>>>> Thanks for any hint,
>>>>> Best regards,
>>>>> Andrea
>>>>>
>>>>>
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
>>>> For additional commands, e-mail: user-h...@commons.apache.org
>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
>>>> For additional commands, e-mail: user-h...@commons.apache.org
>
>>
>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
>>> For additional commands, e-mail: user-h...@commons.apache.org
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
>>> For additional commands, e-mail: user-h...@commons.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
>> For additional commands, e-mail: user-h...@commons.apache.org
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
>> For additional commands, e-mail: user-h...@commons.apache.org
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
>> For additional commands, e-mail: user-h...@commons.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
> For additional commands, e-mail: user-h...@commons.apache.org
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
> For additional commands, e-mail: user-h...@commons.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
For additional commands, e-mail: user-h...@commons.apache.org

Reply via email to