¿Hay un máximo teórico para la cantidad de metadatos (EXIF, etc) que pueden ser incorporados en un fichero JPEG? Me gustaría asignar un búfer que se asegure que sea suficiente para mantener los metadatos de cualquier imagen JPEG sin tener que analizarlo yo mismo.¿Cuál es el tamaño máximo de los metadatos JPEG?
Respuesta
No hay un máximo teórico, ya que ciertos marcadores de aplicación se puede utilizar varias veces (por ejemplo APP1 se utiliza tanto para la cabecera EXIF y también el bloque XMP). Además, no hay nada que evite múltiples bloques de comentarios.
En la práctica la que es mucho más común para dar lugar a una gran cabecera es específicamente el marcador APP2 que se utiliza para almacenar el perfil de color ICC para la imagen. Como algunos perfiles de color complicados pueden ser de varios megabytes, en realidad se dividirán en muchos bloques APP2 (ya que cada uno de los bloques APP tiene un límite de direcciones de 16 bits).
Cada área de datos APPN tiene un campo de longitud que es de 2 bytes, por lo que 65.536 sostendría el más grande. Si solo te preocupan los datos EXIF, sería un poco menos.
http://www.fileformat.info/format/jpeg/egff.htm Hay un máximo de 16 diferentes marcadores APPN en un solo archivo. No creo que puedan repetirse, por lo que 16 * 65K debería ser el máximo teórico.
- 1. Tamaño máximo de archivo de imagen JPEG con dimensiones conocidas
- 2. ¿Cuál es el tamaño máximo de Web.config?
- 3. Cuál es el tamaño máximo de un Node.js Buffer
- 4. Cuál es el tamaño máximo de int (10) en Mysql
- 5. Cuál es el tamaño máximo de la textura (Andengine)
- 6. ¿Cuál es el tamaño máximo de un ItemView en EWS?
- 7. ¿Cuál es el tamaño máximo para una cadena en C#?
- 8. ¿Cuál es el tamaño máximo para una int en PHP?
- 9. Establecer metadatos JPEG: problemas de implementación
- 10. ¿Cómo modificar los metadatos EXIF para imágenes JPEG usando Coldfusion?
- 11. ¿Tamaño máximo de Javascript para los tipos?
- 12. Agregar metadatos personalizados a archivos jpeg
- 13. Cuál es el tamaño de archivo jpeg válido más pequeño (en bytes)
- 14. ¿Cuál es el rango máximo de varchar en MySQL?
- 15. ¿Cuál es el tamaño máximo de la textura que el iPhone puede admitir?
- 16. ¿Cuál es el tamaño de textura máximo disponible en el iPad?
- 17. ¿Cuál es el tamaño máximo para un valor de preferencia compartido de Android?
- 18. Cambiar el tamaño de la imagen JPEG al tamaño especificado
- 19. ¿cuál es el límite máximo de tamaño del tipo de datos varchar en sqlite?
- 20. Cursor Android tamaño máximo
- 21. ¿Cuál es el tamaño máximo de la base de datos SQLite en Android?
- 22. ¿Cuál es el tamaño máximo de archivo que puedo transferir usando HTTP? Y usando FTP?
- 23. ¿Cuál es el tamaño máximo predeterminado para un caché de Google Guava?
- 24. A partir de los resultados de UIImagePickerControlleHow, ¿cómo consigo JPEG con los metadatos incluidos?
- 25. apego SmtpClient.Send tamaño máximo
- 26. ¿Cuál es el tamaño máximo de la clave de cookie de un navegador web?
- 27. Caché ASP.NET tamaño máximo
- 28. ¿Cuál es el tamaño máximo de un paquete In-App que puede alojar con Apple?
- 29. MySQL ¿cuál es el tamaño máximo de una base de datos?
- 30. ¿Cuál es el tamaño máximo de paquete que puede manejar un socket de python?
Gracias edgman. Parece que algunos de los marcadores están efectivamente fijados en longitudes menores a 64 K, por lo que se podría calcular un límite teórico inferior, pero su cálculo aproximado es lo suficientemente bueno para mis propósitos. – darrinm
La respuesta de Grayson Lang es la correcta. No hay nada que evite múltiples bloques del mismo marcador. –
en Linux, las herramientas wrjpgcom y rdjpgcom son extremadamente útiles ... aquí es donde terminé presionando una gran cantidad de datos de texto. – phyatt