stringtranslate.com

APNG

Animated Portable Network Graphics ( APNG ) es un formato de archivo que amplía la especificación Portable Network Graphics (PNG) para permitir imágenes animadas que funcionan de manera similar a los archivos GIF animados , a la vez que admite imágenes de 24 o 48 bits y transparencia alfa completa que no está disponible para los GIF. También mantiene la compatibilidad con versiones anteriores de archivos PNG no animados.

El primer fotograma de un archivo APNG se almacena como un flujo PNG normal, por lo que la mayoría de los decodificadores PNG estándar pueden mostrar el primer fotograma de un archivo APNG. Los datos de velocidad de fotogramas y los fotogramas de animación adicionales se almacenan en fragmentos adicionales (como lo estipulaba la especificación PNG original). APNG competía con Multiple-image Network Graphics (MNG), un formato integral para animaciones de mapa de bits que fue creado por el mismo equipo que PNG y que está obsoleto. La ventaja de APNG era el tamaño de biblioteca más pequeño y la compatibilidad con implementaciones PNG más antiguas.

Historia y desarrollo

Una APNG de una resonancia magnética de una cabeza humana

La especificación APNG fue creada en 2004 por Stuart Parmenter y Vladimir Vukićević de Mozilla Corporation para permitir el almacenamiento de las animaciones necesarias para interfaces como throbbers . [1] [2] En mayo de 2003, Mozilla había descartado el soporte para animaciones MNG , que proporciona un superconjunto de funcionalidad APNG, citando preocupaciones sobre el gran tamaño de archivo requerido para la amplia biblioteca de decodificadores MNG (300 KB); [3] el decodificador APNG, construido sobre la base del decodificador PNG, era un componente mucho más pequeño.

Entre los usuarios y mantenedores de los formatos PNG y MNG, APNG tuvo una recepción tibia. En particular, PNG fue concebido como un formato de una sola imagen. [4] APNG oculta los fotogramas subsiguientes en fragmentos auxiliares PNG de tal manera que las aplicaciones que no lo tienen en cuenta los ignorarían, pero no hay cambios en el formato que permitan al software distinguir entre imágenes animadas y no animadas. Algunas de las principales preocupaciones que surgieron de esto fueron la incapacidad de las aplicaciones para negociar PNG y APNG, o distinguir entre PNG y APNG una vez recibidos, o que el software heredado incluso informe a los usuarios de que hay fotogramas adicionales. Glenn Randers-Pehrson encabezó los esfuerzos para reconciliar la posición de los puristas de PNG con la de los defensores de APNG al recomendar cambios al formato de APNG y proponer el uso de un tipo MIME único (por ejemplo, video/png), pero los defensores de APNG solo agregaron el tipo MIME diferente (image/apng) [5] mientras insistían en el uso de la extensión .png en lugar de .apng , lo que llevó a que el formato no fuera aprobado por el Grupo de Desarrollo de PNG. [6]

El Grupo de Desarrollo de PNG rechazó APNG como extensión oficial el 20 de abril de 2007, [7] y ha habido varias propuestas posteriores para un formato de gráficos animados simple basado en PNG utilizando varios enfoques diferentes. [8] Sin embargo, desde el 14 de septiembre de 2021, el Grupo de Trabajo PNG ha sido autorizado por el Consorcio World Wide Web (W3C) para mantener y desarrollar la especificación PNG, y el primer borrador de trabajo público de la Especificación PNG (Tercera Edición) se publicó el 25 de octubre de 2022, agregando extensiones APNG a la especificación PNG principal. [9] La Recomendación Candidata se publicó el 21 de septiembre de 2023. [10]

Formato de archivo

La especificación APNG sigue el formato de archivo PNG e introduce tres nuevos fragmentos auxiliares: [11]

Los números de secuencia se aplican tanto al control de cuadros como a los fragmentos de datos de cuadros, que juntos siguen una secuencia común, lo que permite recuperar el orden y el tiempo de los cuadros si un editor PNG que no tenga en cuenta APNG los reordena según lo permiten las reglas de ordenamiento de fragmentos PNG. [12]

Los marcos utilizan la misma profundidad de bits, tipo de color, método de compresión, método de filtro, método de entrelazado y paleta (si hay alguna) que la imagen predeterminada.

Una aplicación que lee un archivo PNG debe ignorar los fragmentos que no comprende, [13] lo que hace que APNG sea compatible con versiones anteriores . Las aplicaciones que no admiten la extensión APNG muestran solo el primer fotograma y no tienen en cuenta los fotogramas de animación adicionales.

Diagrama que ilustra una forma posible de ensamblar un PNG animado a partir de tres archivos PNG individuales

Compresión y optimización

Una serie de técnicas de optimización hacen que los archivos APNG sean lo más pequeños posible: optimización entre cuadros [14] utilizando operaciones de combinación alfa y eliminación alfa, subcuadros más pequeños que el tamaño completo, transparencia sucia, optimizaciones de tipo de color y paleta de colores y varias opciones de compresión: zlib , 7-Zip , Zopfli . [15]

Formatos derivados

Los stickers animados para Signal son APNG con algunas restricciones (el tamaño del archivo está limitado a 300kb, la duración de la animación está limitada a 3 segundos y, visiblemente (este último punto no está claro), la resolución debe ser 512x512px). [ ¿cual? ] [16]

Apoyo

El logotipo de APNG Assembler, software libre para crear imágenes APNG

Mozilla Firefox agregó soporte para APNG en las compilaciones de la versión 3 el 23 de marzo de 2007. [17] Sin embargo, debido a que libpng es la implementación de referencia de la especificación oficial del Grupo PNG , el soporte para APNG nunca podrá ser soportado en la distribución principal de libpng mientras no sea ratificado por el Grupo. Iceweasel 3 soporta APNG usando la variante no oficial de libpng de Mozilla. [18]

En 2008, WorldDMB adoptó APNG como una extensión compatible con versiones anteriores para permitir la animación como parte de la aplicación de usuario MOT SlideShow para radio digital. La "Especificación APNG 1.0 - Gráficos de red portátiles animados" está incluida como Anexo A normativo en el estándar ETSI TS 101 499 V2.2.1. [19] En 2016, Apple adoptó el formato APNG como el formato preferido para stickers animados en las aplicaciones iMessage de iOS 10. [20] El 15 de marzo de 2017, se agregó soporte APNG a Chromium . [21]

  1. ^ Después de cargar un video, se puede crear un archivo APNG a través del elemento de menú "Archivo|Exportar|PNG animado".

Existe una biblioteca del lado del servidor que permite que los navegadores web que admiten la etiqueta canvas , pero no admiten APNG, muestren APNG. [58] Algunos ejemplos de dichos navegadores incluyen Microsoft Edge e Internet Explorer 9.

Véase también

Referencias

  1. ^ ab "Añadir compatibilidad con APNG para Mozilla". Bugzilla . Fundación Mozilla. 27 de agosto de 2004 . Consultado el 23 de abril de 2024 .
  2. ^ Estuardo Parmenter; Vladimir Vukicevic (2 de septiembre de 2004). "APNG 0.4 [BORRADOR]". Vladimir Vukicevic. Archivado desde el original el 19 de noviembre de 2004 . Consultado el 23 de abril de 2024 .
  3. ^ martin (1999-11-11). "Error 18574 - (mng) restablecimiento del soporte para el formato de animación MNG y el formato de imagen JNG". Mozilla . Consultado el 2010-03-30 .
  4. ^ "Especificación PNG (Gráficos de red portátiles), versión 1.1#8.4. Extensión de múltiples imágenes". libpng . Consultado el 30 de marzo de 2010 .
  5. ^ "Especificación APNG, versión 1.0#Tipo MIME". Mozilla . Consultado el 10 de diciembre de 2017 .
  6. ^ "ImageMagick no puede detectar PNG animados". GitHub . Consultado el 10 de diciembre de 2017 .
  7. ^ "VOTACIÓN FALLIDA: APNG 20070405a". Lista de correo de SourceForge . 20 de abril de 2007.
  8. ^ "Discusión sobre un formato PNG "animado" simple". Archivado desde el original el 26 de febrero de 2009. Consultado el 12 de julio de 2011 .
  9. ^ "Explicación de la tercera edición del formato PNG". GitHub del W3C . 24 de mayo de 2023.
  10. ^ "Especificación PNG (tercera edición), APNG: animación basada en cuadros". w3.org . 2023-09-21.
  11. ^ "Especificación APNG - MozillaWiki".
  12. ^ Reglas de ordenamiento de fragmentos (especificación PNG 1.2)
  13. ^ "Especificación de gráficos de red portátiles (PNG) (segunda edición)".
  14. ^ "Optimización entre cuadros en APNG". littlesvr.ca . Archivado desde el original el 2014-04-26 . Consultado el 2021-10-21 .
  15. ^ "Ensamblador APNG". apngasm.sourceforge.net . Consultado el 21 de octubre de 2021 .
  16. ^ "Pegatinas". Soporte de Signal . Signal . Consultado el 28 de diciembre de 2021 .
  17. ^ "Notas de la versión de Gran Paradiso Alpha 3". Mozilla . 23 de marzo de 2007. Archivado desde el original el 26 de diciembre de 2009 . Consultado el 30 de marzo de 2010 .
  18. ^ ab "Debian Bug #486827 Iceweasel no puede renderizar una imagen APNG". Debian . 2011-08-26 . Consultado el 2011-09-18 .
  19. ^ "Especificación de la aplicación de usuario (pdf) de presentación de diapositivas de MOT para transmisión de audio digital (DAB)" (PDF) . ETSI . Consultado el 30 de enero de 2013 .
  20. ^ "Mensajería - Extensiones - Pautas de interfaz humana de iOS". developer.apple.com . Apple, Inc . Consultado el 12 de octubre de 2016 .
  21. ^ "Anzwix / Chromium / Agregar compatibilidad con PNG animados" . Consultado el 15 de marzo de 2017 .
  22. ^ maxst (15 de noviembre de 2017). "Ensamblador APNG". SourceForge .
  23. ^ "cphktool APNG Anime Maker". cphktool. Archivado desde el original el 2010-02-09 . Consultado el 2010-06-28 .
  24. ^ maxst. "Desensamblador APNG". SourceForge .
  25. ^ maxst. "Optimizador APNG". SourceForge .
  26. ^ "Ayuda en línea para Chasys Draw IES: Formatos de archivo - Otros archivos de imagen".
  27. ^ "Ayuda en línea para Chasys Draw IES: Historial" . Consultado el 18 de julio de 2022 .
  28. ^ "Notas de la versión 1.6.7 de CLIP STUDIO PAINT (7/9/2017)" . Consultado el 22 de abril de 2024 .
  29. ^ "Documentación de formatos FFmpeg".
  30. ^ "Registro de cambios de GitHub de FFmpeg". GitHub . Consultado el 9 de julio de 2016 .
  31. ^ "Historial de actualizaciones de FireAlpaca" . Consultado el 4 de septiembre de 2021 .
  32. ^ "PNG animado: animación simple con canal alfa". Gamani . Consultado el 25 de agosto de 2009 .
  33. ^ "GID (Generic Image Decoder)" (Descodificador de imágenes genérico) en GitHub . Consultado el 9 de diciembre de 2023 .
  34. ^ "Complemento APNG". Archivado desde el original el 25 de mayo de 2014. Consultado el 28 de mayo de 2010 .
  35. ^ "Honeycam - Historial de versiones". Bandisoft International Inc. Consultado el 9 de enero de 2022 .
  36. ^ "Honeyview - Historial de versiones". Bandisoft International Inc. Consultado el 9 de enero de 2022 .
  37. ^ "Noticias de ImageJ". ImageJ . Archivado desde el original el 21 de mayo de 2009. Consultado el 23 de mayo de 2009 .
  38. ^ "ImageMagick - Registro de cambios" . Consultado el 25 de abril de 2021 .
  39. ^ "Imagine - Novedades". Archivado desde el original el 8 de octubre de 2011. Consultado el 1 de septiembre de 2017 .
  40. ^ "Konvertor - Soluciones para el procesamiento multimedia". Archivado desde el original el 12 de mayo de 2010. Consultado el 19 de mayo de 2010 .
  41. ^ "Registro de cambios de los códecs de KSquirrel". GitHub . 15 de octubre de 2021.
  42. ^ "Imagen animada 2.4 - AGIF y APNG". Foro Paint.NET . 10 de enero de 2009.
  43. ^ "Más sobre PNG animados - Blog de Vlasta". www.rw-designer.com .
  44. ^ "SourceForge.net: Mod APNG de VirtualDub". vdubapngmod.sourceforge.net .
  45. ^ Si bien XnView está disponible para varios sistemas operativos, solo se han lanzado versiones para Windows desde que se agregó soporte para APNG.
  46. ^ "Compatibilidad con exportación de APNG" . Consultado el 16 de agosto de 2021 .
  47. ^ "Exportación de animaciones APNG y WEBP (dbe993da) · Commits · Graphics / Krita". GitLab . 22 de febrero de 2021 . Consultado el 16 de agosto de 2021 .
  48. ^ "Gráficos PNG animados". WebKit . 17 de marzo de 2015 . Consultado el 17 de marzo de 2015 .
  49. ^ Parmenter, Stuart; Vladimir Vukicevic; Andrew Smith (4 de julio de 2008). «Gráficos PNG animados». Centro de desarrolladores de Mozilla . Mozilla . Archivado desde el original el 4 de diciembre de 2008. Consultado el 23 de mayo de 2009 .
  50. ^ "Firefox 3 para desarrolladores". Centro para desarrolladores de Mozilla . Mozilla . 1 de octubre de 2008. Archivado desde el original el 13 de noviembre de 2008. Consultado el 23 de mayo de 2009 .
  51. ^ abcde "PNG animado (APNG)". ¿Puedo utilizar...? Tablas de soporte para HTML5, CSS3, etc.
  52. ^ "7d2b8c45afc9c0230410011293cc2e1dbb8943a7 - chromium/src - Git en Google". chromium.googlesource.com .
  53. ^ "Actualización del canal estable para escritorio". Lanzamientos de Chrome . Consultado el 6 de junio de 2017 .
  54. ^ "El estado del formato de imagen APNG en Microsoft Edge". Desarrollo de Microsoft Edge . Consultado el 29 de julio de 2017 .
  55. ^ "Especificaciones web admitidas en Opera 9.5". Opera Software . Archivado desde el original el 25 de febrero de 2009 . Consultado el 23 de mayo de 2009 .
  56. ^ "Opera 46 llega a su versión definitiva, más calidad y el primer anuncio televisivo de Opera". Opera Software . 22 de junio de 2017 . Consultado el 26 de junio de 2017 .
  57. ^ "Proyectos seleccionados para LibreOffice en Google Summer of Code 2023: añadir compatibilidad con importación y exportación de APNG". LibreOffice . 29 de mayo de 2023 . Consultado el 29 de mayo de 2023 .
  58. ^ "Biblioteca APNG-canvas". GitHub . 11 de octubre de 2021.

Enlaces externos