GPAC 0.6.0
Overview of the community activity:
- Moved from Sourceforge to Github.
- ~1200 commits since 0.5.2.
- GPAC contains MP4Box, the MP4Client/Osmo4 player, and many other tools (MP42TS, etc.).
- Launched new projects such as MP4Box.js or Zenbuild.
- Built more free datasets based on GPAC (DASH, HEVC).
General:
- Improved very high resolutions, high framerate, and high colorspace (10 bits) playback support.
- HEVC top-notch support.
- Improved video playback through OpenGL and OpenGL ES.
- Video 360 navigation support on all platforms.
- Many adaptive streaming improvement (HLS and DASH), see specific section below.
- MP42TS (MPEG2-TS multiplexer) is production grade for adaptive streaming and reference vector streams.
- TEMI extension for fine synchronization and hybrid delivery (mandated by HbbTV 2.0).
- Better language tagging support.
- UTF16 name handling.
- Better multi-channel audio support.
- Improved support for encryption (CENC/PIFF - both AES CTR and CBC are supported).
- Improved generic support for subtitles (METX/METT, STPP TTML, WebVTT, SBTT, STXT, etc.).
- Parallel execution of GPAC tools.
- Better network support for TTL and multi-interface.
- SHVC (scalable) experimental (based on SHM4.1 and old ISOBMFF spec)
Dev:
- Improved security on the code.
- Memory tracker can display the stack.
- More examples of the API (player, demuxers, benchmarks, ...).
Build:
- Compatible with the latest dependencies (FFmpeg 3, etc.).
- Improved compatibility for toolchains (MSYS, MSYS2, Cygwin ; MSVC 2015 ; updated XCode ; updated Android and iOS build environments).
- Improved partial build.
- Static builds (including for the MP4Client player).
MP4Box:
- Added timescale change (
:timescale=
) and overwrite (:rescale=
) in MP4Box importers. - MP4Box to stdout with
-std
. - Better id3v2 support.
- Better metadata handling.
- Options to change or swap trackIDs.
-align-cat
option.
MP4Client/Osmo4:
- Can display interactive animated graphics for statistics (buffer levels, resolutions for adaptive streaming, additional services, IOs, etc.)
- Mobile: several improvements. OpenGL ES2 support and better shaders.
- SVG animation and MediaSourceExtension support in SVG
- Hybrid playback (broadcast/broadband, scalable codecs, fine synchronization, GUI in MP4Client).
- Dektec output cards.
Adaptive streaming:
- Better HLS support (including startup improvement for huge VoD manifests).
- Industry profiles support: DASH-IF 2.0, HbbTV 1.5. Others on the roadmap.
- DASH segmenting: now cuts segments at average duration like other packagers. Less correct but improved player compatibility. Old behaviour with
-dash-strict
. - DASH segmenting: insertion of custom DASH descriptors at various level of the MPD hierarchy, including SRD descriptors
- MP4Box can do stateful live packaging using
-dash-live
and-dash-ctx
. - Better SAP handling (from Type 1 to 6) aligned with MPEG latest documents.
- HDS preliminary support.
- SRD playback support for independent videos and HEVC independent tiles (file format still experimental), with various rate allocation strategies per tiles.