Para convertir una carpeta de fotos HEIC a JPEG en macOS y conservar sus metadatos EXIF, use sips para crear los JPEG y luego ExifTool para copiar los metadatos de cada original. Mantenga los archivos HEIC intactos y guarde los nuevos archivos en una carpeta separada. Este proceso de dos pasos hace explícita la transferencia de metadatos; una conversión de imagen exitosa por sí sola no garantiza que todos los campos EXIF se hayan transferido al JPEG.
Lo que necesita saber antes de convertir
Un JPEG es una nueva codificación de imagen, por lo que los datos de la imagen se vuelven a comprimir. No se puede convertir sin algún cambio en la calidad de la imagen. Los metadatos son un asunto aparte: los detalles de la cámara, la fecha de captura y las etiquetas GPS pueden estar almacenados en el original, pero no todos los campos de HEIC tienen un equivalente que un JPEG pueda almacenar. Por lo tanto, copiar los metadatos no garantiza que cada campo se mantenga sin cambios. Compruebe el resultado si le interesa una etiqueta en particular.
Vista Previa de macOS puede exportar una sola imagen o varias imágenes seleccionadas como JPEG: abra las imágenes en una ventana, selecciónelas en la barra lateral y elija Archivo > Exportar. Apple documenta los controles de formato y calidad, pero no documenta que la exportación por lotes conserve todos los campos EXIF. Si la retención de metadatos es un requisito, utilice el flujo de trabajo explícito de copiar y verificar que se detalla a continuación. Guía de conversión de Vista Previa de Apple
Convertir y copiar metadatos con la Terminal
Este flujo de trabajo utiliza el comando sips de Apple para convertir cada imagen y luego ExifTool para copiar los metadatos de su archivo original correspondiente. Primero instale ExifTool siguiendo sus instrucciones oficiales de instalación. Cree una carpeta de origen que contenga los archivos HEIC y una carpeta de destino vacía. En el ejemplo, las carpetas son ~/Pictures/HEIC-Originals y ~/Pictures/JPEG-Converted; cambie esas rutas si las suyas son diferentes.
Abra la Terminal y ejecute este ejemplo completo de Bash. Gestiona espacios en los nombres de carpetas y archivos, reconoce las extensiones .heic y .heif sin importar si están en mayúsculas o minúsculas, y escribe los JPEG en la carpeta de destino separada.
src="$HOME/Pictures/HEIC-Originals"
out="$HOME/Pictures/JPEG-Converted"
mkdir -p "$out"
find "$src" -maxdepth 1 -type f \( -iname '*.heic' -o -iname '*.heif' \) -print0 |
while IFS= read -r -d '' file; do
name=$(basename "${file%.*}")
jpg="$out/$name.jpg"
if sips -s format jpeg "$file" --out "$jpg"; then
exiftool -TagsFromFile "$file" -all:all -overwrite_original "$jpg"
else
printf 'Conversion failed: %s\n' "$file" >&2
fi
done
El comando sips genera el JPEG; las opciones -TagsFromFile y -all:all de ExifTool copian los metadatos del original especificado. La opción -overwrite_original evita que ExifTool deje una copia de seguridad de cada JPEG. La documentación de ExifTool describe la copia de metadatos y señala que las etiquetas que puede albergar un formato de destino dependen de dicho formato. Documentación de la aplicación ExifTool
El script busca únicamente en el nivel superior de la carpeta de origen. Si sus fotos están en carpetas anidadas, ejecútelo en cada carpeta por separado o adapte las rutas de búsqueda y destino para que los archivos con nombres idénticos no se sobrescriban entre sí. Asegúrese de que el destino esté vacío o de que sus nombres de archivo no entren en conflicto con archivos existentes. Conserve los originales hasta que haya verificado el resultado.
Compruebe que los JPEG contengan los metadatos que necesita
Utilice ExifTool para inspeccionar un JPEG convertido junto a su archivo de origen. Reemplace el nombre de archivo de ejemplo por uno de su lote:
exiftool -a -G1 -s "$HOME/Pictures/HEIC-Originals/IMG_0001.HEIC"
exiftool -a -G1 -s "$HOME/Pictures/JPEG-Converted/IMG_0001.jpg"
Compare los campos que le interesen, como DateTimeOriginal, la marca y el modelo de la cámara y las coordenadas GPS. Si un campo aparece en el HEIC pero no en el JPEG, la conversión o la copia de metadatos no lo preservó en un formato utilizable; no asuma que se ha conservado solo porque el Finder muestre una fecha o el JPEG se abra. ExifTool puede leer metadatos de muchos formatos de imagen, pero las etiquetas admitidas y los campos modificables varían según el formato. Documentación de formatos y etiquetas de ExifTool
Problemas comunes y limitaciones
Si sips informa que no puede leer un archivo, compruebe que sea una imagen compatible y que la extensión del nombre de archivo coincida con el archivo. Si la Terminal indica exiftool: command not found, ExifTool no está instalado o no se encuentra en el path de su shell. Si dos originales comparten el mismo nombre base, el script apuntará al mismo nombre de JPEG; procese esos archivos en carpetas de destino separadas o cámbieles el nombre antes de convertir.
La copia de EXIF no preserva todas las propiedades asociadas a la foto original. Un JPEG no puede representar datos exclusivos de HEIC, y copiar etiquetas no hace que los píxeles del JPEG sean idénticos a la imagen decodificada del HEIC. Para archivos importantes, conserve los HEIC originales y trate los JPEG como copias de compatibilidad. Cuando el caso de uso final solo requiera un cambio rápido de formato y los metadatos no sean importantes, la exportación por lotes documentada de Vista Previa es más sencilla; cuando importen campos EXIF específicos, conviértalos, cópielos e inspecciónelos.
Fuentes
Convert image file types using Preview on Mac — Soporte técnico de Apple
ExifTool Application Documentation — ExifTool
ExifTool Tag Names — ExifTool
Installing ExifTool — ExifTool