EXIFRead library

Windows specific forum
boddhi
Enthusiast
Enthusiast
Posts: 524
Joined: Mon Nov 15, 2010 9:53 pm

EXIFRead library

Post by boddhi »

EXIFRead library
  • Description :
      Read EXIF tags (APP0, APP1, IFD0, IFD1, EXIFIFD and GPS markers) of an JPEG/JFIF image.
      Possibility to modify certain tags such as dates and information such as description, comment, author and copyright
  • Version : 2.00 beta 1
      OS : Windows x86 & x64
      PB Version : 6.10+
      Language : English or French
      Doc and examples provided.
Version 2.00 beta 1 Windows x86 / Windows x64 (Pb 6.10+)

Version 1.51 Windows x86 / Windows x64 (Pb 6.10+)
Version 1.23 Linux (Pb 4.51)
Help file (chm format)

Other archives

Do not hesitate to send me your comments, suggestions, bugs, ...

EDIT on 12/30/22 : Version 1.50 (PB 6.00+ only for Windows x64)
EDIT on 04/07/24 : Version 1.51 (PB 6.10+ for Windows x64)
EDIT on 04/08/24 : Version 1.51 (PB 6.10+ for Windows x86)
EDIT on 05/01/24 : Version 2.00 beta 1 (PB 6.10+ for Windows x64)
EDIT on 05/02/24 : Version 2.00 beta 1 (PB 6.10+ for Windows x86)
Last edited by boddhi on Thu May 02, 2024 7:05 pm, edited 10 times in total.
If my English syntax and lexicon are incorrect, please bear with Google translate and DeepL. They rarely agree with each other!
Except on this sentence...
IdeasVacuum
Always Here
Always Here
Posts: 6426
Joined: Fri Oct 23, 2009 2:33 am
Location: Wales, UK
Contact:

Re: EXIFRead library

Post by IdeasVacuum »

Works really well Boddhi but it's dependant on a Library and so there is concern that it won't work with future PB versions. Many PB Developers have got stung in that way in the past :cry:
IdeasVacuum
If it sounds simple, you have not grasped the complexity.
BarryG
Addict
Addict
Posts: 4168
Joined: Thu Apr 18, 2019 8:17 am

Re: EXIFRead library

Post by BarryG »

I thought this topic looked familiar, and I was right: Boddhi posted about this lib 10 years ago in 2010, and then again here in this topic in 2020. Both were posted in November of their years, too. Very strange!

Previous post -> viewtopic.php?f=27&t=44333

Why such a long gap between announcements? Oh well; I look forward to the November 2030 re-post.
boddhi
Enthusiast
Enthusiast
Posts: 524
Joined: Mon Nov 15, 2010 9:53 pm

Re: EXIFRead library

Post by boddhi »

Hello,

New version 1.50 - PB 6.00+ - Windows X64.
BarryG wrote:I thought this topic looked familiar, and I was right: Boddhi posted about this lib 10 years ago in 2010, and then again here in this topic in 2020. Both were posted in November of their years, too. Very strange!
Well, you see, you won't have to wait until 2030 for a new release! :wink:

And nothing strange either!

I develop this library for my personal need and make it available for those who are interested.
I modify it according to my needs or if someone reports a bug or asks me for an improvement.
But to be honest, I hardly ever have either of them! So, either my lib is perfect (which I wouldn't pretend to say...) or it doesn't interest many people.
It therefore only evolves when the need arises.
Especially since intermediate versions had been published on the French forum. Only the missing English translation update prevented me from posting on the English forum.
Voilà.

@IdeasVacuum
Eternal debate on the use of userlibs.
As with everything, there are pros and cons, I won't go over that :wink:
As long as my brain allows me to continue coding, I will keep it up to date. Note, however, that it has existed for 12 years already and rare are the free software or developments (PB or not) that are maintained for so long, right? :wink:
I'm not forcing anyone and it's up to you to use it or not. No problem with that :D

Happy Holidays to all. :D
If my English syntax and lexicon are incorrect, please bear with Google translate and DeepL. They rarely agree with each other!
Except on this sentence...
dige
Addict
Addict
Posts: 1404
Joined: Wed Apr 30, 2003 8:15 am
Location: Germany
Contact:

Re: EXIFRead library

Post by dige »

Hi boddhi,

I would like to try your lib, but I need it for an x86 project. Could you also make the lib available for this?

Another thing is, does this lib support heic images (High Efficiency Image File Format)? Its mostly used on smartphones..

Kind regards

Dige
"Daddy, I'll run faster, then it is not so far..."
boddhi
Enthusiast
Enthusiast
Posts: 524
Joined: Mon Nov 15, 2010 9:53 pm

Re: EXIFRead library

Post by boddhi »

Hello Dige,

I'm so sorry and confused because I don't see your message before today! :oops: :oops: :oops:
And as I wasn't 'quoted', I didn't pay much attention.
dige wrote: I would like to try your lib, but I need it for an x86 project. Could you also make the lib available for this?
Let me know if you're still interested, I might do it.
However, I can't promise you that quicly, as I'll have to go back into the deep code to see if there are any changes to be made for this purpose.
dige wrote: Another thing is, does this lib support heic images (High Efficiency Image File Format)? Its mostly used on smartphones..
Nope for the moment.
To be honest, I had started trying to implement it. But I ran into several difficulties.
Finding sufficiently complete documentation describing the format (if possible in French, as I'm French and not always at ease with English) in order to analyze the encoded data in hex.
I got some photos in this format, but sometimes I found inconsistencies in the data encoding that I couldn't interpret because they didn't correspond to the specifs in the docs I have.

And as I don't own Apple's devices (almost the only one to use this format) and I am not to subject to use it, I finally gave up.

I'll see if I can try again... without promise...
If my English syntax and lexicon are incorrect, please bear with Google translate and DeepL. They rarely agree with each other!
Except on this sentence...
boddhi
Enthusiast
Enthusiast
Posts: 524
Joined: Mon Nov 15, 2010 9:53 pm

EXIFRead library

Post by boddhi »

New version 1.51 : Now handles dates between 01/01/1601 00:00:00 and 12/31/9999 23:59:59
If my English syntax and lexicon are incorrect, please bear with Google translate and DeepL. They rarely agree with each other!
Except on this sentence...
dige
Addict
Addict
Posts: 1404
Joined: Wed Apr 30, 2003 8:15 am
Location: Germany
Contact:

Re: EXIFRead library

Post by dige »

Hi boddhi, I would like to give it a try it if it was suitable for x86. I'm particularly interested in whether it can read the Exif data from HEIC images correctly.

Kind regards

Dige
"Daddy, I'll run faster, then it is not so far..."
boddhi
Enthusiast
Enthusiast
Posts: 524
Joined: Mon Nov 15, 2010 9:53 pm

Re: EXIFRead library

Post by boddhi »

New : Version 1.51 for Windows x86
dige wrote: I would like to give it a try it if it was suitable for x86.
It's now done for the current version 1.51.
I've run a few tests without any problems, but don't hesitate to "overheat" the lib to see if there's an issue somewhere.
I'm particularly interested in whether it can read the Exif data from HEIC images correctly.
I'll try again, but I really can't promise anything.
As already said, I've problems interpreting data that don't match the docs in my possession. These official docs date from 2005 to 2015. I haven't found anything (free of charge) later, whereas the photos available to me are more recent (>=2021-2022). What's more, Apple, as*hole (sorry but it's a bit true), never wanting to do like the others, changed the format for its own devices in 2017, and of course the doc is not available (at least not at that time, or perhaps (certainly) for fee, as is often the case).

If anyone has any info on this subject, I'm more than interested...
If my English syntax and lexicon are incorrect, please bear with Google translate and DeepL. They rarely agree with each other!
Except on this sentence...
boddhi
Enthusiast
Enthusiast
Posts: 524
Joined: Mon Nov 15, 2010 9:53 pm

EXIFRead library

Post by boddhi »

New version 2.00 beta 1:
  • Management of files in HEIC format
  • Tags 100, 101, 142 and 143 added in the IFD0 substructure
  • Tags 9010, 9011, 9012, 9A00 (tag not implemented by CIPA), A460 and C4A5 added in the EXIFIFD substructure
  • Tag 001F added in the GPS substructure
  • Minor optimizations and improvements to pre-existing code

Note: This version is a beta version because I was only able to obtain a few HEIC files, not being the owner of Apple or Xiaomi devices (which also uses this format on some of its devices) and noboby around me owns one (all poor people! :mrgreen: ).
The tests were carried out only on around twenty images, half of which, unfortunately, did not contain EXIF ​​metadata.

If you test it, it would be cool to give me some feedback, whatever it may be, and if you notice any anomalies or crashes with your photos, don't hesitate to PM me a link to one of them. for examination and potential corrections. Thanks in advance. :wink:

Thanks again to jacdelad for providing me some docs which allowed me to overcome some difficulties previously encountered with HEIC format.
If my English syntax and lexicon are incorrect, please bear with Google translate and DeepL. They rarely agree with each other!
Except on this sentence...
User avatar
jacdelad
Addict
Addict
Posts: 2004
Joined: Wed Feb 03, 2021 12:46 pm
Location: Riesa

Re: EXIFRead library

Post by jacdelad »

Can you maybe convert some pictures with metadata into HEIC using XnView or IrfanView?
Good morning, that's a nice tnetennba!

PureBasic 6.21/Windows 11 x64/Ryzen 7900X/32GB RAM/3TB SSD
Synology DS1821+/DX517, 130.9TB+50.8TB+2TB SSD
boddhi
Enthusiast
Enthusiast
Posts: 524
Joined: Mon Nov 15, 2010 9:53 pm

Re: EXIFRead library

Post by boddhi »

Hello Jacdelad,
jacdelad wrote: Can you maybe convert some pictures with metadata into HEIC using XnView or IrfanView?
I must confess I didn't quite understand the meaning of your question.

When you talk about conversion to HEIC, is this to compensate for the lack of HEIC files with EXIF metadata available to me?
If so, that's not what I want. I want files to be as "pure" as possible, unmodified by any software.
If my English syntax and lexicon are incorrect, please bear with Google translate and DeepL. They rarely agree with each other!
Except on this sentence...
dige
Addict
Addict
Posts: 1404
Joined: Wed Apr 30, 2003 8:15 am
Location: Germany
Contact:

Re: EXIFRead library

Post by dige »

boddhi wrote: Wed May 01, 2024 9:52 pm New version 2.00 beta 1:
 [..]
Well done boddhi! :D

I have tested it with various Heic and Jpeg images.

I am currently using the FreeImage Dll to load the metadata. Unfortunately, this Dll cannot handle HEIC images.

Since you provide your solution as PureLibrary. What is your plan with this lib?

Unfortunately, I have not had good experiences with this, because usually after a PureBasic update the libs no longer work correctly and if the author is no longer available or has no time, they are practically no longer usable.

Could you also imagine making the source code available?

Kind regards

Dige
"Daddy, I'll run faster, then it is not so far..."
boddhi
Enthusiast
Enthusiast
Posts: 524
Joined: Mon Nov 15, 2010 9:53 pm

Re: EXIFRead library

Post by boddhi »

dige wrote: Well done boddhi! :D

I have tested it with various Heic and Jpeg images.
And? No problems? No crashes? No anomalies?

I have no particular plan for the moment.
As already said above, this lib has been distributed for 14 years now (although it has existed for longer). Which I believe is very rare in lib support.

As long as I could and it remains within my humble competence, I would keep it up to date and make it evolve according to PB updates requiring it, bugs or development requests (like yours for the HEIC images).

I think if one day I was no longer able to do this, I would definitely make the code available. :wink:
I would like to give it a try it if it was suitable for x86
Do you always need an x86 version?
If my English syntax and lexicon are incorrect, please bear with Google translate and DeepL. They rarely agree with each other!
Except on this sentence...
dige
Addict
Addict
Posts: 1404
Joined: Wed Apr 30, 2003 8:15 am
Location: Germany
Contact:

Re: EXIFRead library

Post by dige »

boddhi wrote: Thu May 02, 2024 2:04 pm [..]
Do you always need an x86 version?
Yes, that would be great. Thx boddhi!
"Daddy, I'll run faster, then it is not so far..."
Post Reply