Uso de exiftool para importar fechas, gps y etiquetas desde archivos xmp

No estoy seguro de si esto se puede lograr con exiftool o si hay una alternativa mejor...

He exportado una gran cantidad de imágenes de iPhoto y aparentemente Apple exporta el archivo original con un archivo XMP sidecar que incluye los detalles. Lo peor de esto es la fecha de archivo, si escanea una imagen 01/01/2020 y luego establece su fecha de creación real (digamos 01/01/1980), permanecerá 01/01/2020 y lo reflejará como etiqueta photoshop:DateCreated en el archivo XMP.

Me pregunto si hay alguna forma de importar este tipo de información en el archivo sin formato/jpeg/lo que sea o si hay una forma de importar dicha información usando lightroom.

Aquí hay un ejemplo de archivo XMP:

<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="XMP Core 5.4.0">
   <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
      <rdf:Description rdf:about=""
            xmlns:exif="http://ns.adobe.com/exif/1.0/"
            xmlns:photoshop="http://ns.adobe.com/photoshop/1.0/"
            xmlns:dc="http://purl.org/dc/elements/1.1/">
         <exif:GPSLongitudeRef>W</exif:GPSLongitudeRef>
         <exif:GPSTimeStamp>2019-12-22T01:02:42Z</exif:GPSTimeStamp>
         <exif:GPSLongitude>5.80</exif:GPSLongitude>
         <exif:GPSLatitude>45.20</exif:GPSLatitude>
         <exif:GPSLatitudeRef>N</exif:GPSLatitudeRef>
         <exif:GPSHPositioningError>0.0</exif:GPSHPositioningError>
         <photoshop:DateCreated>1980-01-01T12:11:19+02:00</photoshop:DateCreated>
         <dc:subject>
            <rdf:Seq>
               <rdf:li>old</rdf:li>
               <rdf:li>Mom</rdf:li>
            </rdf:Seq>
         </dc:subject>
      </rdf:Description>
   </rdf:RDF>
</x:xmpmeta>

Cualquier idea es bienvenida, gracias de antemano.

Respuestas (1)

Vea el ejemplo #15 de archivos Sidecar de metadatos de exiftool

El comando debe modificarse un poco debido a algunas irregularidades en la muestra XMP que proporciona. Lo mejor que puede hacer es tomar el archivo xmp2exif.args y colocarlo en el mismo directorio que exiftool. Esto permitirá que las etiquetas del archivo XMP se copien en el lugar correcto del grupo EXIF.

Ahora, hay un problema con el XMP que enumera y es la existencia de GPSLatitudeRef/ GPSLongitudeRef. Estas etiquetas no forman parte de los metadatos Exif 2.31 para la especificación XMP , que cubre las etiquetas GPS para XMP. Se supone que las direcciones de referencia (Norte/Sur/Este/Oeste) se incluyen en las etiquetas GPSLatitude/ XMP. GPSLongitudePor lo tanto, esto debe abordarse explícitamente.

Por lo que su comando sería a lo largo de estas líneas:
exiftool -ext EXT -tagsfromfile %d%f.xmp -@ xmp2exif.args -GPSLatitudeRef -GPSLongitudeRef -r DIR

El comando necesita la inclusión de la -extopción (extensión) para evitar el procesamiento de los propios archivos XMP. Incluiría un -extpara cada tipo de archivo posible, o podría usar --ext xmp(dos guiones) para excluir los archivos xmp.

Este comando crea archivos de respaldo. Agregar -overwrite_originalpara suprimir la creación de archivos de copia de seguridad. Agregar -ra recurse en subdirectorios.

Muchas gracias por tu respuesta detallada. De todos modos, estoy tratando de ejecutarlo en un directorio de muestra y siempre obtengo: 1 directorios escaneados 0 archivos de imagen leídos Y tengo 4 imágenes con 4 archivos xmp, así que supongo que me estoy perdiendo algo...
¿Está reemplazando EXT con las extensiones de los tipos de archivos a procesar? ¿ O usando --ext XMP(dos guiones para indicar que se excluye esa extensión)? Debe usar uno u otro para evitar que exiftool intente copiar datos del archivo XMP al mismo archivo XMP.
Muchas gracias, estaba configurando -ext XMP y ese fue todo el problema :)