1 votos

Orientación extraña de la imagen con todas las aplicaciones de la cámara

Acabo de darme cuenta de que en mi Wileyfox Swift hay algo extraño en la orientación de la imagen:

  • tomando una imagen de paisaje, todo está bien: el JPG resultante está en paisaje, y Exif tiene Orientation:0 - como era de esperar.
  • tomar una imagen de retrato sin embargo también tiene Orientation:0 y el JPG resultante está en vertical - mientras que en todos mis otros dispositivos, el JPG permanecería en horizontal pero tendría, por ejemplo Orientation:6 (girar 270°) en su Exif.

He probado con varias aplicaciones de cámara, incluida la integrada. Otras dos aplicaciones de cámara que uso en otros dispositivos también, donde funcionan como se espera.

¿Qué puede pasar aquí y cómo solucionarlo? Lo necesito de la "manera estándar" para los scripts de posprocesamiento, etc. Aunque los resultados "parecen iguales" en los visores de imágenes, los detalles/diferencias técnicas son relevantes en mi caso, por lo que deseo que el Wileyfox se adhiera a los estándares :)

0 votos

Me acabas de hacer buscar en Google qué demonios es un Wileyfox Swift. Tiene buena pinta :) En serio, @Izzy (ping por si acaso) Esto parece estar sucediendo bastante ofteh con diferentes dispositivos y cámaras, como éste: github.com/commonsguy/cwac-cam2/issues/241

2 votos

No veo por qué es un problema. El campo EXIF de orientación sólo indica si la geometría real de la imagen no coincide con el orden de los píxeles en el archivo. El teléfono no incumple ninguna norma.

0 votos

@DanHulme Puede que para ti no sea un problema, pero para mí sí. Este es el primer (y único) dispositivo que lo trata así. Todo mi post-procesamiento se basa en el hecho de que las fotos siempre se almacenan en horizontal, y la orientación se almacena en los datos Exif del archivo. Así que quiero saber si hay una manera de arreglar eso. Puede ser que no esté rompiendo un estándar (ya que puede que no haya un estándar definido explícitamente) - pero todos los demás dispositivos que conozco (incluyendo cámaras) que tratan con él a través de Exif hacen de esto una excepción. Y yo no quiero esa excepción :)

1voto

Guillermo Gomez Puntos 423

Me temo que no tienes ninguna posibilidad de hacer que la imagen esté en modo apaisado cuando se tome, si no tienes el código fuente de tu ROM. Pero seguro que puedes post-procesarla por ti mismo.

Termux proporciona algunas utilidades útiles (y famosas) como jhead y imagemagick . Es posible escribir scripts de shell que roten las imágenes de retrato a paisaje y añadan una "Rotación" en el EXIF para "rotarla" de nuevo.

0 votos

No pregunté sobre el post-procesamiento (por supuesto que podría comprobar anchura y altura y luego rotar + añadir rotación Exif) - como se comenta en la pregunta, ya hago algo de post-procesamiento, pero no quiero un paso extra para esas cosas básicas. Así que quiero saber cómo tener la información Exif correcta desde el principio, en lugar de tener la foto "girada" y corregirla después.

0 votos

@Izzy Si usted tiene la fuente de la ROM que seguramente puede tewak en algún lugar de /system/lib para que la biblioteca proporcione la función deseada.

0 votos

Como es CyanogenOS, el código fuente debería estar disponible. Pero yo no ser un dev, no sabría por dónde empezar incluso. Tenía la esperanza de que podría haber algún "ajuste oculto" se puede ajustar en alguna parte, ya sea a través de algún cuadro de diálogo o el uso de setprop y amigos. Sin embargo, pensando dos veces su propuesta se vuelve intrigante: Podría hacer la rotación en el procesado posterior (después de la corrección de color y otras ediciones) donde corrijo algunas otras cosas basadas en Exif de todos modos - siempre que la foto se almacene como retrato, rotarla 90° y actualizar Exif en consecuencia. No es mi primera opción, pero es suficiente. Lo comprobaré, gracias.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X