Estoy tratando de escribir un código en el que leo los datos EXIF de las fotografías que se cargan en nuestra organización. Son las etiquetas de GPS las que son importantes, pero me estoy encontrando con un problema. Para leer los datos, he usado 3 bibliotecas diferentes:
Además de probar estas bibliotecas en código, también probé todas las imágenes en una multitud de lectores EXIF en línea.
Los datos de GPS para Android (Samsung que probé específicamente) no son válidos, y las imágenes basadas en iPhone simplemente muestran que no contienen EXIF. Ahora sé que contienen al menos alguna forma de etiquetas GEO, porque en los propios dispositivos puedo ver la imagen marcada en el mapa.
Ahora mi pregunta es, ¿los datos EXIF difieren según el proveedor de teléfonos inteligentes? Y quizás más al punto, ¿cómo puedo leer correctamente el EXIF para admitir todas las versiones diferentes?
¡Gracias por adelantado!
Editar: mi objetivo es hacer este procesamiento del lado del cliente. Y descubrí que, en iOS, cuando se envían imágenes por correo electrónico en línea en lugar de adjuntarlas, se excluyen los datos EXIF.
Edit2: Resulta que también android (o quizás el cliente de correo electrónico "outlook") altera los datos EXIF al compartir la imagen. Si bien cuando se usa Android, los datos EXIF no se truncan por completo, los datos del GPS se establecen en 0, lo que los invalida.
Al cargar directamente las imágenes durante la depuración con el teléfono inteligente, las 3 bibliotecas pudieron extraer los datos necesarios.
Puedes probar esta API que estandariza la salida:
https://rapidapi.com/igniwork-igniwork/api/metadata-extractor/