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 , mientras que admite imágenes de 24 bits y transparencia de 8 bits no disponible para GIF. También conserva la compatibilidad con versiones anteriores de archivos PNG no animados.
Extensión de nombre de archivo | .png .apng |
---|---|
Tipo de medio de Internet | imagen / vnd.mozilla.apng, imagen / apng |
Versión inicial | 4 de agosto de 2008 |
Tipo de formato | formato de imagen de trama animada |
Extendido desde | PNG |
¿ Formato abierto ? | sí |
El primer fotograma de un archivo APNG se almacena como una secuencia 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 (según lo previsto por la especificación PNG original). APNG compite con gráficos de red de imágenes múltiples (MNG), un formato completo para animaciones de mapas de bits creado por el mismo equipo que PNG. La ventaja de APNG es el tamaño de la biblioteca más pequeño y la compatibilidad con implementaciones PNG más antiguas.
En una comparación realizada entre GIF , APNG y WebP , se demostró que APNG mantenía un tamaño de archivo más bajo manteniendo al menos la misma calidad. [1]
Historia
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 . En mayo de 2003, Mozilla había eliminado el soporte para animaciones MNG , que proporciona un superconjunto de funcionalidad APNG, citando preocupaciones sobre el gran tamaño de archivo requerido para la biblioteca de decodificadores MNG expansiva (300 KB); [2] el decodificador APNG, construido en la parte posterior 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 se concibió para ser un formato de una sola imagen. [3] APNG oculta los fotogramas subsiguientes en fragmentos auxiliares PNG de tal manera que las aplicaciones que no conocen APNG los ignorarían, pero por lo demás no hay cambios en el formato para permitir que el software distinga 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 recibidas, o para que el software heredado incluso informe a los usuarios que hay marcos adicionales. Glenn Randers-Pehrson encabezó los esfuerzos para reconciliar la posición de los puristas de PNG con la de los defensores de APNG recomendando cambios en el formato de APNG y proponiendo el uso de un tipo MIME único (por ejemplo, video / png), pero los proponentes de APNG solo agregaron los diferentes MIME type (image / apng) [4] mientras insiste en el uso de la extensión .png en lugar de .apng , lo que hace que el formato no sea aprobado por el Grupo de Desarrollo de PNG. [5]
El grupo PNG rechazó oficialmente APNG como una extensión oficial el 20 de abril de 2007. [6] Ha habido varias propuestas posteriores para un formato de gráficos animados simple basado en PNG utilizando varios enfoques diferentes. [7]
Mozilla Firefox agregó soporte para APNG en las compilaciones troncales de la versión 3 el 23 de marzo de 2007. [8] Sin embargo, debido a que libpng es la implementación de referencia del Grupo PNG de la especificación oficial, el soporte de APNG nunca puede ser compatible con la distribución principal de libpng mientras permanece sin ratificar por el Grupo. Iceweasel 3 admite APNG mediante el uso de la variante no oficial de libpng de Mozilla. [9]
En 2008, WorldDMB adoptó APNG como una extensión compatible con versiones anteriores para habilitar 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" se incluye como Anexo A normativo en el estándar ETSI TS 101 499 V2.2.1. [10] En 2010, las emisoras de radio comerciales de Sydney comenzaron a incluir animaciones APNG en las emisiones de radio digital DAB +. [ cita requerida ] Estas animaciones APNG son llevadas por la aplicación "Presentación de diapositivas MOT" que acompaña a los servicios de audio. Se espera que otras ciudades de Australia lo sigan a principios de 2011. [ cita requerida ] [ necesita actualización ]
El papel de Mozilla en la extensión del formato PNG a APNG se hace eco del papel mucho anterior de Netscape en la popularización de GIF animados . [ cita requerida ]
En 2016, Apple adoptó el formato APNG como el formato preferido para las pegatinas animadas en las aplicaciones iMessage de iOS 10 . [11]
El 15 de marzo de 2017, se agregó compatibilidad con APNG a Chromium . [12]
Formato de archivo
La especificación APNG sigue el formato de archivo PNG y presenta tres nuevos fragmentos auxiliares: [13]
- El fragmento de control de animación (acTL) precede a los IDAT de la imagen predeterminada y es una especie de "marcador" de que se trata de un archivo PNG animado. También contiene el número de fotogramas y el número de veces que se repite la animación (0 significa infinito).
- El fragmento de control de fotogramas (fcTL) precede a cada fotograma y contiene sus metadatos: dimensiones; posición (relativa a la imagen predeterminada); duración; si una vez más, se borra a negro, se reemplaza por el cuadro anterior o se dibuja en el cuadro siguiente; y si aplica su transparencia.
- El fragmento de datos del marco (fdAT) que almacena el contenido del marco. Comienza con un número de secuencia, luego tiene la misma estructura que los fragmentos IDAT de la imagen predeterminada.
Los números de secuencia se aplican tanto al control de fotogramas como a los fragmentos de datos de fotogramas, que en conjunto siguen una secuencia común, lo que permite recuperar el orden y el tiempo de los fotogramas en caso de que un editor PNG que no tenga conocimiento de APNG los reordene según lo permitan las reglas de ordenación de fragmentos PNG. [14]
Los fotogramas 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 existe) que la imagen predeterminada.
La especificación PNG se diseñó teniendo en cuenta futuras ampliaciones. [15] Se supone que una aplicación que lee un archivo PNG simplemente ignora cualquier fragmento que no comprenda. Esta es la razón por la que APNG es compatible con versiones anteriores . Las aplicaciones existentes simplemente reconocen el primer fotograma e ignoran los fragmentos de animación adicionales.
Apoyo
Campo | Software | ¿Apoyos? | Desde |
---|---|---|---|
Procesamiento de imágenes | Ensamblador APNG | sí | v. 1 [16] |
creador de anime cphktool APNG | sí | v. 1 (9 de junio de 2009) [17] | |
Desmontador APNG | sí | v. 1 [18] | |
Optimizador de APNG | sí | v. 1.0 (28 de marzo de 2011) [19] | |
FFmpeg | Sí [20] | v. 2.7 [21] | |
Equipo de película Gamani GIF | sí | v. 4.2 (marzo de 2008) [22] | |
CAÑUTILLO | Necesita complemento [23] | N / A | |
ImageJ | sí | v. 1.41g (3 de julio de 2008) [24] | |
ImageMagick | sí | v. 7.0.10-31 (20 de septiembre de 2020) [25] | |
Imagina | sí | v. 1.0.2 (4 de mayo de 2008) [26] | |
IrfanView | Solo lectura | v. 4.40 (31 de julio de 2015) | |
Konvertor | sí | v. 4.02 (mayo de 2010) [27] | |
KSquirrel (más tarde SAIL) | Solo lectura | v. 0.7.2 (3 de octubre de 2007) [28] | |
Paint.NET | Necesita complemento [29] | N / A | |
Pintura del mundo real | sí | v. 2011.1 (diciembre de 2011) [30] | |
VirtualDub | Necesita complemento [31] [a] | N / A | |
XnView | Solo lectura | v. 1.97.4 (30 de abril de 2010) [32] | |
Motores Sciter y HTMLayout UI | Solo lectura | desde 2008 | |
Krita | No [33] | N / A | |
qView | Solo lectura | v. 4.0 (31 de octubre de 2020) | |
Motores de navegador | WebKit | sí | (17 de marzo de 2015) [34] |
Parpadear | sí | Junio de 2017 | |
Navegadores web | Mozilla Firefox ( motor de diseño Gecko ) | sí | v. 3 (17 de junio de 2008) [35] [36] |
SeaMonkey ( motor de diseño Gecko ) | sí | v. 2 | |
Iceweasel y otros cambios de marca de Debian ( motor de diseño Gecko ) | sí | v. 4.0 ~ b12 [9] | |
Safari ( motor de diseño WebKit ) | sí | v. 8.0 [37] | |
Google Chrome y Chromium ( motor de diseño Blink ) | sí | v. 59 (5 de junio de 2017) [38] [39] | |
Internet Explorer ( motor de diseño Trident ) | No [37] | N / A | |
Microsoft Edge ( motor de diseño EdgeHTML ) | No [37] [40] | N / A | |
Microsoft Edge ( motor de diseño Blink ) | sí | v. 79 | |
Opera v12 y versiones anteriores ( motor de diseño de Presto ) | sí | v. 9.5 (12 de junio de 2008) [41] | |
Opera 15 y posterior ( motor de diseño Blink ) | sí | v. 46.0 (22 de junio de 2017) [42] | |
Pale Moon ( motor de diseño de Goanna ) | sí | v. 27 | |
Navegadores móviles | Safari de iOS | Sí [37] | v. 8.0 |
Firefox para Android | Sí [37] | ? | |
Samsung Internet para Android | sí | v. 7.0 | |
Opera Mobile | Sí [ cita requerida ] | ? |
- ^ 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 a los navegadores web que admiten la etiqueta de lienzo , pero que no admiten APNG, mostrar APNG. [43] Ejemplos de estos navegadores incluyen Microsoft Edge e Internet Explorer 9.
Ver también
- Gráficos de red de múltiples imágenes
- WebM
- WebP
Referencias
- ^ "GIF vs APNG vs WebP" . littlesvr . Consultado el 2 de abril de 2019 .
- ^ martin (11 de noviembre de 1999). "Error 18574 - (mng) soporte de restauración para formato de animación MNG y formato de imagen JNG" . Mozilla . Consultado el 30 de marzo de 2010 .
- ^ "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 .
- ^ "Especificación APNG, versión 1.0 # tipo MIME" . Mozilla . Consultado el 10 de diciembre de 2017 .
- ^ "ImageMagick no puede detectar PNG animados" . Consultado el 10 de diciembre de 2017 .
- ^ "VOTO FALLIDO: APNG 20070405a" . Lista de correo de SourceForge . 2007-04-20.
- ^ "Discusión para un formato PNG" animado "simple" . Archivado desde el original el 26 de febrero de 2009 . Consultado el 12 de julio de 2011 .
- ^ "Notas de la versión de Gran Paradiso Alpha 3" . Mozilla . 2007-03-23. Archivado desde el original el 26 de diciembre de 2009 . Consultado el 30 de marzo de 2010 .
- ^ a b "Error de Debian # 486827 Iceweasel no puede procesar la imagen APNG" . Debian . 2011-08-26 . Consultado el 18 de septiembre de 2011 .
- ^ "Difusión de audio digital (DAB); Presentación de diapositivas MOT; Especificación de la aplicación de usuario (pdf)" (PDF) . ETSI . Consultado el 30 de enero de 2013 .
- ^ Inc., Apple. "Mensajería - Extensiones - Directrices de interfaz humana de iOS" . developer.apple.com . Consultado el 12 de octubre de 2016 .
- ^ "Anzwix / Chromium / Add soporte para PNG animado" . Consultado el 15 de marzo de 2017 .
- ^ https://wiki.mozilla.org/APNG_Specification
- ^ Reglas de pedido de fragmentos (especificación PNG 1.2)
- ^ http://www.w3.org/TR/PNG/
- ^ maxst. "Ensamblador APNG" . SourceForge .
- ^ "creador de anime cphktool APNG" . cphktool . Consultado el 28 de junio de 2010 .
- ^ maxst. "Desmontador APNG" . SourceForge .
- ^ maxst. "Optimizador APNG" . SourceForge .
- ^ https://www.ffmpeg.org/ffmpeg-formats.html#apng
- ^ "Registro de cambios de GitHub de FFmpeg" . Consultado el 9 de julio de 2016 .
- ^ "PNG animado: animación simple con un canal alfa" . Gamani . Consultado el 25 de agosto de 2009 .
- ^ "Complemento APNG" . Archivado desde el original el 25 de mayo de 2014 . Consultado el 28 de mayo de 2010 .
- ^ "Noticias de ImageJ" . ImageJ . Archivado desde el original el 21 de mayo de 2009 . Consultado el 23 de mayo de 2009 .
- ^ "ImageMagick - Registro de cambios" . Consultado el 25 de abril de 2021 .
- ^ "Imagínese - Novedades" . Archivado desde el original el 8 de octubre de 2011 . Consultado el 1 de septiembre de 2017 .
- ^ "Konvertor - Soluciones para procesamiento multimedia" . Archivado desde el original el 12 de mayo de 2010 . Consultado el 19 de mayo de 2010 .
- ^ "KSquirrel Codecs ChangeLog" .
- ^ "Imagen animada 2.4 - AGIF y APNG" . Foro Paint.NET .
- ^ "Anuncio de soporte de APNG" .
- ^ "SourceForge.net: VirtualDub APNG Mod" .
- ^ Si bien XnView está disponible para varios sistemas operativos, solose han lanzadoversiones para Windows desde que se agregó la compatibilidad con APNG.
- ^ "Soporte de exportación APNG" . Consultado el 18 de septiembre de 2018 .
- ^ "Gráficos PNG animados" . WebKit . 17 de marzo de 2015 . Consultado el 17 de marzo de 2015 .
- ^ 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 .
- ^ "Firefox 3 para desarrolladores" . Centro de 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 .
- ^ a b c d e "PNG animado (APNG)" . ¿Puedo usar ... Tablas de soporte para HTML5, CSS3, etc. ?
- ^ "Agregar soporte para PNG animado" .
- ^ "Actualización de canal estable para escritorio" . Lanzamientos de Chrome . Consultado el 6 de junio de 2017 .
- ^ "El estado del formato de imagen APNG en Microsoft Edge" . Desarrollo de Microsoft Edge . Consultado el 29 de julio de 2017 .
- ^ "Especificaciones web compatibles con Opera 9.5" . Opera Software . Archivado desde el original el 25 de febrero de 2009 . Consultado el 23 de mayo de 2009 .
- ^ "Opera 46 va final, más calidad y el primer anuncio de televisión de Opera" . Opera Software . Consultado el 26 de junio de 2017 .
- ^ "Biblioteca APNG-canvas" .
enlaces externos
- La especificación APNG en la Wiki de mozilla.org
- Parche APNG para libpng
- Sitio de demostración de APNG de Mozilla
- Directorio de recursos de software y desarrolladores de APNG
- Pruebas de APNG para navegadores compatibles con APNG 1.0
- Animaciones de carga AJAX en APNG
- Consideración de APNG en el grupo de desarrollo de Chromium