GPAC is an implementation of the MPEG-4 Systems standard (ISO/IEC 14496-1) developed from scratch in ANSI C.
The main development goal is to provide a clean (a.k.a. readable by as many people as possible), small and flexible alternative to the MPEG-4 Systems reference software (known as IM1 and distributed in ISO/IEC 14496-5). The MPEG-4 Reference software is indeed a very large piece of software, designed to verify the standard rather than provide a small, production-stable software.
GPAC is written in ANSI C for portability reasons (embedded platforms and DSPs) with a simple goal: keep the memory footprint as low as possible.
The second development goal is to achieve integration of recent multimedia standards (SVG/SMIL, VRML, X3D, SWF, etc) into a single framework. This stage is still under drafting but has started with VRML97 support.
GPAC already features 2D and 3D multimedia playback, MPEG-4 Systems encoders/multiplexers and publishing tools for content distribution.
GPAC is licensed under the GNU General Public License (see FAQ).
The current GPAC release (0.2.3) already covers a very large part of the standard, and features what can probably be seen as the most advanced and robust 2D MPEG-4 Player available worldwide, as well as a decent 3D MPEG-4/VRML player with some X3D support.
GPAC is currently running under Windows, Linux platforms - WindowsCE/PocketPC platform is not actively maintained but GPAC 0.2.3 is running on an iPaq device.
Here are some key features of "gpac":
· MP4 and 3GPP file reading, both local and through http download (QuickTime FastStart).
· MP3 (local and http) and ShoutCast.
· AAC file reading and AAC http streaming (needs latest faad2 cvs tarball).
· Media Codecs: MPEG-4 Visual Simple Profile, MPEG-4 Audio AAC, JPEG, PNG, AMR audio and all codecs supported by the FFMPEG library (including AVC/H264).
· All media containers supported by the FFMPEG library: avi, mpeg, vob, etc...
· Xiph.org Media: Ogg file format (including http read and Icecast), Vorbis audio and Theora video.
· 3GPP Timed Text / MPEG-4 Streaming Text.
· Streaming support: RTP and RTSP/SDP for MPEG-4 Visual/Audio, MPEG-1/2 audio and video, 3GPP timed text, AMR audio and H263 video.
· Multichannel audio, multichannel to stereo mapper.
· MPEG-4 scenes (2D, 3D and mixed 2D/3D scenes) - read from binary format (BIFS) and textual format (BT/XMT-A).
· VRML 2.0 (VRML97) scenes (without GEO or NURBS extensions).
· X3D scenes (not complete) - supports both X3D (XML format) and X3DV (VRML format).
· Compressed description (GZip) supported for all textual formats of MPEG4/X3D/VRML.
· Simple SVG scenes (not complete).
· Simple SWF (Macromedia Flash) scenes (no ActionScript, no clipping, etc).
· HTTP reading of all scene descriptions.
What's New in This Release: [ read full changelog ]
· New version of GPAC is out with many improvements and fixes - try it out!