Articulo de referencia

Proyecto GPAC sobre contenido avanzado

"},"operating system":{"wt":"[[Cross-platform]]"},"genre":{"wt":"[[Multimedia framework]]"},"released":{"wt":"{{Start date and age|2003}} "},"latest release version":{"wt":"{{wi...

El Proyecto GPAC sobre Contenido Avanzado ( GPAC , acrónimo recursivo ) es un marco multimedia de código abierto centrado en la modularidad y el cumplimiento de estándares. GPAC es conocido principalmente por su amplia compatibilidad con MP4/ISOBMFF/CMAF y DASH/HLS. Es popular entre aficionados al vídeo, investigadores académicos, organismos de estandarización y emisoras profesionales, y afirma haber alcanzado los 100 millones de descargas en 2025. [ 5 ]

GPAC proporciona herramientas para procesar, inspeccionar, empaquetar, transmitir, reproducir e interactuar con contenido multimedia. Dicho contenido puede ser cualquier combinación de audio, vídeo, subtítulos, metadatos, medios cifrados, renderizado y JavaScript . [ 6 ]

El proyecto proporciona tres conjuntos de herramientas de software basadas en una biblioteca central llamada libgpac :

  • MP4Box , un empaquetador multimedia de código abierto, se lanzó en 2003.
  • Un motor de canalización general, gpac , introducido en la versión 1.0 (2019) [ 7 ]
  • Una API, disponible desde muchos lenguajes y plataformas utilizadas por las herramientas mencionadas anteriormente, x264 [ 8 ] y muchas otras.

GPAC es multiplataforma . Está escrito en C99 [ 9 ] por motivos de portabilidad, con el objetivo de minimizar el consumo de memoria. Actualmente funciona en Windows , Linux , macOS X, iOS, Android y muchos otros sistemas.

Historia y estándares

GPAC se fundó en la ciudad de Nueva York en 1999 [ 10 ] como una empresa llamada AviPix. En 2003, se convirtió en software de código abierto , con el objetivo inicial de convertirse en la implementación estándar de facto de MPEG-4 Systems, como una alternativa pequeña y flexible al software de referencia MPEG-4. [ 3 ]

Paralelamente, dado que MPEG-4 se concibió para competir con Macromedia Flash , GPAC evolucionó para admitir otros estándares como X3D , W3C SVG Tiny 1.2 y OMA / 3GPP / ISMA , y finalmente MPEG-DASH y estándares posteriores (MPEG CMAF, CENC, ProRes, WebVTT, TTML, HDR, SCTE-35, ...). La función MPEG-DASH se puede utilizar para reconstruir archivos .mp4 a partir de vídeos transmitidos y almacenados en caché en este formato (por ejemplo, YouTube ). [ 11 ] Varios proyectos en las áreas de investigación, código abierto, seguridad e industria utilizaron o utilizan GPAC. [ 12 ]

Desde 2013, GPAC Licensing ha ofrecido soporte empresarial y licencias comerciales. [ 13 ] En 2022, Netflix anunció el uso de GPAC para sus operaciones de contenido a nivel mundial [ 14 ] incluyendo el servicio de Netflix, el contenido de los estudios y el material de merchandising. [ 15 ]

Evolución de la arquitectura y herramientas adicionales

En 2019, el equipo de GPAC explicó que el código había sufrido una reestructuración [ 16 ] denominada Filtros con la versión 0.9, mientras que la versión 0.8 es la última versión de la arquitectura anterior con un soporte extendido de 18 meses. Las aplicaciones de interfaz permanecieron sin cambios, lo que facilitó la transición. Los filtros subyacentes construyen una canalización de flujo de datos modular y dinámica que se puede editar y supervisar mediante interfaces gráficas web. [ 17 ]

En 2020 se lanzó GPAC 1.0. El sitio web se dividió en una wiki de documentación, una documentación de la API de Doxygen, un Buildbot y acciones de GitHub, y un Testbot con una alta cobertura. [ 18 ] La nueva aplicación gpac se ha utilizado como un FFmpeg mejorado [ 19 ] que ofrece mayor velocidad, funciones y facilidad de uso. Posteriormente se añadió una lista de casos de uso con sus líneas de comando asociadas. [ 20 ]

Utilizando la nueva arquitectura, GPAC también ha lanzado nuevos proyectos como mp4box.js [ 21 ] con lanzamiento de la versión 1.0 en 2025 [ 22 ] , Compliance Warden para el cumplimiento de estándares [ 23 ] (2020), un complemento de GStreamer [ 24 ] (2025), un interposer de FFmpeg llamado FFgpac [ 25 ] (2026) y un empaquetador justo a tiempo llamado Jitsu [ 26 ] (2026).

Características de contenido multimedia

Embalaje

GPAC incluye codificadores y multiplexores, herramientas de publicación y distribución de contenido para archivos MP4 y numerosas herramientas para descripciones de escenas ( convertidores BIFS / VRML / X3D , SWF/BIFS, SVG/BIFS, etc.). MP4Box proporciona todas estas herramientas en una única aplicación de línea de comandos. Las funciones compatibles actualmente son: [ 27 ]

  • Conversión de MP4/3GP desde MP3 , AVI , MPEG-2 TS, MPEG-PS, AAC , H263 , H264 , H265 , H266 , AMR y muchos otros,
  • Empaquetado DIMS 3GPP a partir de archivos SVG tiny 1.2 , [ 28 ]
  • Diseño de archivos: fragmentación o intercalación y limpieza,
  • Sugerencias de archivos para servidores RTP / RTSP y QTSS/DSS (archivos MPEG-4/ISMA/3GP/3GP2),
  • División de archivos por tamaño o tiempo, extracción de archivos y concatenación de archivos,
  • Volcado de información XML para pistas de sugerencias MP4 y RTP ,
  • Extracciones de pistas de medios,
  • Cifrado y descifrado ISMA E&A,
  • Herramientas de texto temporizado 3GPP (SUB/SRT/TTXT/TeXML), importación/exportación de VobSub,
  • Conversión de códec BIFS y de escena entre MP4, BT y XMT-A,
  • Conversión de códec y escena LASeR entre MP4, SAF, SVG y XSR (XML LASeR),
  • Estadísticas de escena XML para escena BIFS (BT, XMT-A y MP4),
  • Conversión desde y hacia BT, XMT-A, WRL, X3D y X3DV con soporte para gzip.
  • Una sintaxis que garantiza que las operaciones simples, como concatenar 3 archivos en uno nuevo, no sean simples.

Jugando

GPAC admite muchos protocolos y estándares, entre los cuales: [ 27 ]

  • Escenas BIFS (escenas 2D, 3D y mixtas 2D/3D),
  • Escenas VRML 2.0 (VRML97) (sin extensiones GEO ni NURBS),
  • Escenas X3D (incompletas) en formatos X3D ( XML ) y X3DV (VRML),
  • Escenas SVG Tiny 1.2 (incluidas las empaquetadas en archivos DIMS 3GP), [ 28 ]
  • LASeR y SAF (soporte parcial),
  • Carga/renderizado progresivo de archivos SVG , X3D y XMT, [ 28 ]
  • Lectura HTTP de todas las descripciones de escenas,
  • gzip es compatible con todos los formatos de texto MPEG4/X3D/VRML/SVG,
  • Lectura de archivos MP4 y 3GPP (local y http),
  • Archivos MP3 y AAC (locales y http) y transmisión HTTP ( radios Shoutcast / Icecast ),
  • Los códecs multimedia más comunes para imagen, audio y vídeo,
  • Contenedores de medios más comunes,
  • Texto temporizado 3GPP / Texto en streaming MPEG-4,
  • Demultiplexor MPEG-2 TS (local/ UDP / RTP ) con soporte DVB (solo Linux),
  • Soporte para transmisión a través de RTP /RTCP (unicast y multicast) y RTSP/SDP,
  • Plugins para Mozilla ( osmozilla , Win32 y Linux) e Internet Explorer ( GPAX , Win32 y PPC 2003).

Transmisión

A partir de la versión 0.4.5, GPAC cuenta con algunas herramientas de servidor y de transmisión: [ 27 ]

Colaboradores

El proyecto se desarrolla en Télécom Paris , una destacada escuela de ingeniería francesa. Los principales colaboradores actuales de GPAC son: [ 2 ]

Otros colaboradores (actuales o anteriores) son: [ 2 ]

  • Cirilo Concolato [ 1 ] [ 6 ] [ 28 ]
  • Deniz Uğur
  • Jérôme Gorin
  • Pierre Souchay
  • Jean-Claude Moissinac [ 1 ] [ 28 ]
  • Jean-Claude Dufourd
  • Benoit Pellan
  • Felipe de Cuetos.

Además, GPAC se utiliza en Télécom Paris y otras universidades con fines pedagógicos . Los estudiantes participan regularmente en el desarrollo del proyecto. [ 2 ]

Referencias

  1. 1 2 3 4 Jean Le Feuvre; Cyril Concolato; Jean-Claude Moissinac (2007). «GPAC: marco multimedia de código abierto». Actas de la 15.ª Conferencia Internacional sobre Multimedia . Biblioteca Digital ACM . págs. 1009–1012 . doi : 10.1145/1291233.1291452 . ISBN  978-1-59593-702-5.
  2. 1 2 3 4 "Sobre nosotros" . People@GPAC . Consultado el 28 de enero de 2014 .
  3. 1 2 3 Romain Bouqueau (22 de enero de 2014). "5000 commit, 10 años de software de código abierto" . People@GPAC . Recuperado el 28 de enero de 2014 .
  4. https://gpac.io/2026/02/05/gpac-26-02/ .{{cite web}}: Falta o está vacío |title=( ayuda )
  5. Romain Bouqueau (junio de 2025). "GPAC, 100 millones de descargas" . Consultado el 2 de julio de 2026 .
  6. 1 2 3 Jean Le Feuvre; Cyril Concolato (diciembre de 2012). "GPAC, Toolbox for Interactive Multimedia Packaging, Delivery and Playback" . Columna de código abierto . Registros de ACM SIGMM . ISSN 1947-4598 . Archivado del original el 29 de enero de 2014. Recuperado el 28 de enero de 2014 . 
  7. "Versión GPAC 1.0 · gpac/gpac" . GitHub . Consultado el 30 de octubre de 2024 .
  8. "x264 detecta automáticamente gpac/mp4 · videolan/x264" . VideoLan GitLab . Consultado el 2 de julio de 2026 .
  9. Jean Le Feuvre. "GPAC Filters" . ACM SIGMM Records . Consultado el 2 de julio de 2026 .
  10. GPAC (2013). "Acerca de nosotros" . Licencias de GPAC . Archivado del original el 1 de febrero de 2014. Consultado el 28 de enero de 2014 .
  11. Sofer, Nir (2013). "VideoCacheView" . NirSoft.net . Recuperado el 28 de enero de 2014. Utiliza MP4Box instalado como parte del paquete GPAC para convertir las secuencias MPEG-DASH en un mp4 válido .
  12. GPAC. "Otros trabajos académicos que utilizan GPAC" . Publicaciones . Personas@GPAC . Consultado el 28 de enero de 2014 .
  13. 1 2 Bouqueau, Romain (2013-05-09). "Licencias GPAC" . Licencias GPAC . Recuperado el 28-01-2014 . Las marcas comerciales GPAC y MP4Box están registradas internacionalmente por Telecom ParisTech.
  14. Bouqueau, Romain (09/05/2013). "Netflix implementa GPAC como su principal proveedor de paquetes" . Licencias de GPAC . Consultado el 25/07/2024 . GPAC implementado por Netflix como su principal proveedor de paquetes.
  15. Rayburn, Dan (09/05/2013). "NAB Streaming Summit 2023" . NAB Streaming Summit . Consultado el 25/07/2024 . Netflix utiliza GPAC en todos sus escenarios de empaquetado.
  16. "Rearquitectura - Wiki de GPAC" . wiki.gpac.io. Consultado el 30 de octubre de 2024 .
  17. https://monitor.gpac.io/
  18. "GPAC wiki" . wiki.gpac.io. Consultado el 30 de octubre de 2024 .
  19. "Versión GPAC 1.0 · gpac/gpac" . GitHub . Consultado el 30 de octubre de 2024 .
  20. https://wiki.gpac.io/Howtos/filters-oneliners/
  21. https://github.com/gpac/mp4box.js/
  22. https://gpac.io/2025/06/19/announcing-mp4box-js-1-0-0-with-typescript-support/
  23. https://github.com/gpac/ComplianceWarden
  24. https://github.com/gpac/gst-gpac-plugin
  25. http://next.motionspell.com/featured-use-cases/ffgpac/
  26. https://github.com/gpac/jitsu-oss
  27. 1 2 3 "Características de GPAC" . People@GPAC . Consultado el 28 de enero de 2014 .
  28. 1 2 3 4 5 6 Cyril Concolato; Jean Le Feuvre; Jean-Claude Moissinac (mayo de 2008). "Diseño de un reproductor de gráficos vectoriales escalable y eficiente para dispositivos con recursos limitados" . IEEE Transactions on Consumer Electronics . 54 (2). IEEE Transactions on Consumer Electronics (Vol. 54 número 2): 895–903 . CiteSeerX 10.1.1.648.6798 . doi : 10.1109/TCE.2008.4560176 . S2CID 1722027. Recuperado el 28 de enero de 2014 .  
  • Sitio web oficial
  • gpac en GitHub
  • Licencias GPAC (soporte empresarial)