World Library  
Flag as Inappropriate
Email this Article

GPAC Project on Advanced Content

Article Id: WHEBN0016927642
Reproduction Date:

Title: GPAC Project on Advanced Content  
Author: World Heritage Encyclopedia
Language: English
Subject: Scalable Vector Graphics, Reference desk/Archives/Computing/2013 February 16, High Efficiency Video Coding, MPEG, HTTP Live Streaming
Collection:
Publisher: World Heritage Encyclopedia
Publication
Date:
 

GPAC Project on Advanced Content

GPAC
GPAC Multimedia Open Source Project
Developer Jean Le Feuvre, People@GPAC[1][2]
Written in C
OS family Multimedia framework
Working state Current
Source model Open source
Initial release 2003 (2003)[3]
Latest release 0.5.0 / 21 May 2012 (2012-05-21)
Latest preview 0.5.1 / 2014 (2014)[4][5]
Marketing target MP4, DASH, Mobile
Platforms Cross-platform
Default user interface CLI, GUI, plugins
License LGPL v2 and later
Official website .iogpac

GPAC Project on Advanced Content (GPAC, a recursive acronym) is an implementation of the MPEG-4 Systems standard written in ANSI C. GPAC provides tools for media playback, vector graphics and 3D rendering, MPEG-4 authoring and distribution.[6]

GPAC provides three sets of tools based on a core library called libgpac:

  • A multimedia player, cross-platform command-line based MP4Client or with a GUI Osmo4
  • A multimedia packager, MP4Box
  • Some server tools, around multiplexing and streaming (under development)

GPAC is cross-platform. It is written in (almost 100% ANSI) C for portability reasons, attempting to keep the memory footprint as low as possible. It is currently running under Windows, Linux, Solaris, Windows CE (SmartPhone, PocketPC 2002/2003), iOS, Android, Embedded Linux (familiar 8, GPE) and recent Symbian OS systems.

The project is intended for a wide audience ranging from end-users or content creators with development skills who want to experiment the new standards for interactive technologies or want to convert files for mobile devices, to developers who need players and/or server for multimedia streaming applications.

The GPAC framework is being developed at École nationale supérieure des télécommunications (ENST) as part of research work on digital media.

GPAC and standards

GPAC has roots in a New York city startup 1999.[7] As an open-source project GPAC officially started in 2003 with the initial goal to develop from scratch, in ANSI C, clean software compliant to the MPEG-4 Systems standard, a small and flexible alternative to the MPEG-4 reference software.[3] It is actually licensed under LGPL.

In parallel, the project has evolved and now supports many other multimedia standards, with some good support for X3D, W3C SVG Tiny 1.2, and OMA/3GPP/ISMA and MPEG Dynamic Adaptive Streaming over HTTP (MPEG-DASH) features. 3D support is available on embedded platforms through OpenGL-ES.

The MPEG-DASH feature can be used to reconstruct .mp4 files from (e.g., YouTube) videos streamed and cached in this format.[8] Various research projects used or use GPAC.[9] Since 2013 GPAC Licensing offers business support and (closed source) licenses.[10]

Features

Packaging Multimedia Content

GPAC features encoders and multiplexers, publishing and content distribution tools for MP4 files and many tools for scene descriptions (BIFS/VRML/X3D converters, SWF/BIFS, SVG/BIFS, etc.…). MP4Box provides all these tools in a single command-line application. Current supported features are:[11]

  • MP4/3GP Conversion from MP3, AVI, MPEG-2 TS, MPEG-PS, AAC, H263, H264, AMR, and many others,
  • 3GPP DIMS Packaging from SVG tiny 1.2 files,[12]
  • File layout: fragmentation or interleaving, and cleaning,
  • File hinting for RTP/RTSP and QTSS/DSS servers (MPEG-4/ISMA/3GP/ 3GP2 files),
  • File splitting by size or time, extraction from file and file concatenation,
  • XML information dumping for MP4 and RTP hint tracks,
  • Media Track extractions,
  • ISMA E&A encryption and decryption,
  • 3GPP timed text tools (SUB/SRT/TTXT/TeXML), VobSub import/export,
  • BIFS codec and scene conversion between MP4, BT and XMT-A,
  • LASeR codec and scene conversion between MP4, SAF, SVG and XSR (XML LASeR),
  • XML scene statistics for BIFS scene (BT, XMT-A and MP4),
  • Conversion to and from BT, XMT-A, WRL, X3D and X3DV with support for gzip.

Playing Multimedia Content

GPAC supports many protocols and standards, among which:[11]

  • BIFS scenes (2D, 3D and mixed 2D/3D scenes),
  • VRML 2.0 (VRML97) scenes (without GEO or NURBS extensions),
  • X3D scenes (not complete) in X3D (XML) and X3DV (VRML) formats,
  • SVG Tiny 1.2 scenes (including packaged in 3GP DIMS files),[12]
  • LASeR and SAF (partial) support,
  • Progressive loading/rendering of SVG, X3D and XMT files,[12]
  • HTTP reading of all scene descriptions,
  • GZIP supported for all textual formats of MPEG4/X3D/VRML/SVG,
  • MP4 and 3GPP file reading (local & http),
  • MP3 and AAC files (local & http) and HTTP streaming (ShoutCast/ICEcast radios),
  • Most common media codecs for image, audio and video,
  • Most common media containers,
  • 3GPP Timed Text / MPEG-4 Streaming Text,
  • MPEG-2 TS demultiplexer (local/UDP/RTP) with DVB support (Linux only),
  • Streaming support through RTP/RTCP (unicast and multicast) and RTSP/SDP,
  • Plugins for Mozilla (osmozilla, Win32 and Linux) and Internet Explorer (GPAX, Win32 and PPC 2003).

Streaming Multimedia Content

As of version 0.4.5, GPAC has some experimental server-side and streaming tools:[11]

  • MP4/3GP file RTP streamer (unicast and multicast),
  • RTP streamer with service timeslicing (DVB-H) simulation,
  • MPEG-2 TS broadcaster using MP4/3GP files or RTP streams as inputs,
  • BIFS RTP broadcaster tool performing live encoding and RandomAccessPoints generation.

People involved

The project is hosted at ENST, a leading French engineering school also known as Télécom ParisTech. Current main contributors of GPAC are:[2]

Other (current or past) contributors from ENST are:[2]

  • Pierre Souchay
  • Jean-Claude Moissinac[1][12]
  • Jean-Claude Dufourd
  • Benoit Pellan
  • Philippe de Cuetos

Additionally, GPAC is used at ENST for pedagogical purposes. Students regularly participate in the development of the project.[2]

References

  1. ^ a b c d
  2. ^ a b c d
  3. ^ a b c
  4. ^
  5. ^
  6. ^ a b c
  7. ^
  8. ^
  9. ^
  10. ^ a b
  11. ^ a b c
  12. ^ a b c d e f

External links

This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.
 


Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.