Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1765 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  [EXIV2] Reporter descriptions photo de XMP à un tag IPTC/EXIF d'un Jpg

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[EXIV2] Reporter descriptions photo de XMP à un tag IPTC/EXIF d'un Jpg

n°1478228
weed
Posté le 10-09-2022 à 13:06:03  profilanswer
 

Hello tout le monde,  
 
Malheureusement les descriptions sur les photos sont écrites à différents endroits en fonction des logiciels, il n'y a pas vraiment de standard.  
 
Darktable n'écrit malheureusement pas les commentaires dans un tag IPTC ou EXIF de l'image comme c'est le cas de Digikam notamment. Darktable écrit dans un fichier à part, dans un fichier *. xmp qui ressemble à un fichier au format xml :  
 

Code :
  1. $ cat 20220901_082414.jpg.xmp
  2. <?xml version="1.0" encoding="UTF-8"?>
  3. <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="XMP Core 4.4.0-Exiv2">
  4. <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
  5.   <rdf:Description rdf:about=""
  6.     xmlns:exif="http://ns.adobe.com/exif/1.0/"
  7.     xmlns:xmp="http://ns.adobe.com/xap/1.0/"
  8.     xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
  9.     xmlns:darktable="http://darktable.sf.net/"
  10.     xmlns:dc="http://purl.org/dc/elements/1.1/"
  11.    exif:DateTimeOriginal="2022:09:01 08:24:14"
  12.    xmp:Rating="1"
  13.    xmpMM:DerivedFrom="20220901_082414.jpg"
  14.    darktable:import_timestamp="1662759265"
  15.    darktable:change_timestamp="-1"
  16.    darktable:export_timestamp="-1"
  17.    darktable:print_timestamp="-1"
  18.    darktable:xmp_version="4"
  19.    darktable:raw_params="0"
  20.    darktable:auto_presets_applied="0"
  21.    darktable:history_end="0"
  22.    darktable:iop_order_version="2">
  23.    <darktable:masks_history>
  24.     <rdf:Seq/>
  25.    </darktable:masks_history>
  26.    <darktable:history>
  27.     <rdf:Seq/>
  28.    </darktable:history>
  29.    <dc:title>
  30.     <rdf:Alt>
  31.      <rdf:li xml:lang="x-default">titre darktable</rdf:li>
  32.     </rdf:Alt>
  33.    </dc:title>
  34.    <dc:description>
  35.     <rdf:Alt>
  36.      <rdf:li xml:lang="x-default">description darktable</rdf:li>
  37.     </rdf:Alt>
  38.    </dc:description>
  39.   </rdf:Description>
  40. </rdf:RDF>
  41. </x:xmpmeta>


 
 
Avec la commande exiv2, j'ai réussi à reprendre l'ensemble des informations du xmp et à le copier dans le fichier jpeg avec la commande que j'ai trouvé en exemple :  

Code :
  1. exiv2 -iixX 20220901_082414.jpg


 
Et on peut voir ainsi les tag xmp dans le fichier JPEG :  

Code :
  1. $ exiv2 -pa 20220901_082414.jpg
  2. Exif.Image.Model                             Ascii       9  SM-A035F
  3. Exif.Image.Orientation                       Short       1  right, top
  4. Exif.Image.DateTime                          Ascii      20  2022:09:01 08:24:14
  5. Exif.Image.ExifTag                           Long        1  111
  6. Exif.Photo.DateTimeDigitized                 Ascii      20  2022:09:01 08:24:14
  7. Exif.Photo.DateTimeOriginal                  Ascii      20  2022:09:01 08:24:14
  8. Exif.Image.Make                              Ascii       8  samsung
  9. Xmp.exif.DateTimeOriginal                    XmpText    19  2022:09:01 08:24:14
  10. Xmp.xmp.Rating                               XmpText     1  1
  11. Xmp.xmpMM.DerivedFrom                        XmpText    19  20220901_082414.jpg
  12. Xmp.darktable.import_timestamp               XmpText    10  1662759265
  13. Xmp.darktable.change_timestamp               XmpText     2  -1
  14. Xmp.darktable.export_timestamp               XmpText     2  -1
  15. Xmp.darktable.print_timestamp                XmpText     2  -1
  16. Xmp.darktable.xmp_version                    XmpText     1  4
  17. Xmp.darktable.raw_params                     XmpText     1  0
  18. Xmp.darktable.auto_presets_applied           XmpText     1  0
  19. Xmp.darktable.history_end                    XmpText     1  0
  20. Xmp.darktable.iop_order_version              XmpText     1  2
  21. Xmp.darktable.masks_history                  XmpSeq      0 
  22. Xmp.darktable.history                        XmpSeq      0 
  23. Xmp.dc.title                                 LangAlt     1  lang="x-default" titre darktable
  24. Xmp.dc.description                           LangAlt     1  lang="x-default" description darktable


 
Mais c'est très bourin, je souhaiterais pouvoir uniquement "Xmp.dc.description" et récupérer la valeur, tester si j'ai pas d'autres commentaires sur d'autres tag (EXIF, IPTC), et si ce n'est pas le cas, écrire la description dans :  

Code :
  1. Xmp.dc.description


mais également pour plus de portabilité avec les autres applications :  

Code :
  1. Exif.Image.ImageDescription
  2. Iptc.Application2.Caption


 
Est ce que l'option "-e tgt" permttrait de le faire ?  
 

Code :
  1. -e tgt
  2.     Extract target(s) for the 'extract' action. Possible targets are the same as those for the -d option, plus a target to extract preview images and a modifier to generate an XMP sidecar file:
  3.     p[<n>[,<m> ...]] : Extract preview images. The optional comma separated list of preview image numbers is used to determine which preview images to extract. The available preview images and their numbers are displayed with the 'print' option -pp.
  4.     C : Extract embedded ICC profile to <file>.icc
  5.     X : Extract metadata to an XMP sidecar file <file>.xmp. The remaining extract targets determine what metadata to extract to the sidecar file. Possible are Exif, IPTC and XMP and the default is all of these.
  6.     XX: Extract "raw" XMP metadata to a sidecar (see -pX)
  7.     You may not use modify commands with the -eXX option and only XMP is written to the sidecar.


Mais j'ai du mal à comprendre mais le "Extract to" me met dans le doute.  
 
Lorsque j'essaie :  

Code :
  1. exiv2 -eX Xmp.dc.description 20220901_082414.jpg


 
Il me propose d'écrire dans le fichier :(  

Code :
  1. kfocal@kfocal:/home/focal/Pictures/Alt Aragon$ exiv2 -eX Xmp.dc.description 20220901_082414.jpg
  2. Xmp.dc.description: Failed to open the file
  3. exiv2: Overwrite `./20220901_082414.xmp'? ^C


 
Comment puis je extraire uniquement la description laissé par Darktable ?
 
 
Manuel de exiv2 : https://exiv2.org/manpage.html


Message édité par weed le 10-09-2022 à 13:14:28
mood
Publicité
Posté le 10-09-2022 à 13:06:03  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  [EXIV2] Reporter descriptions photo de XMP à un tag IPTC/EXIF d'un Jpg

 

Sujets relatifs
Remplacament Google Photoconseil logiciel gestion photo
retouche photo,traitement raw[topic unique] hack cadre photo usb
Problème pour imprimer en format photo...[FreeBSD] Appareil Photo Numérique
Gestion photo autre qu'avec Picasa. Vos expériences.[Résolu]Changer sur les jpg la mauvaise heure d'un appareil photo
probleme de reconnaissance de mon appareil photo sur kubuquel os pour internet/photo/messagerie
Plus de sujets relatifs à : [EXIV2] Reporter descriptions photo de XMP à un tag IPTC/EXIF d'un Jpg


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR