- support for Dolby Vision meta-data tagging in ISOBMFF
- improved QT support
- bug fixes and security fixes
pkgsrc changes:
- pkglint: define each PLIST_VARS where it's used
* Convert to ffmpeg4 from ffmpeg3
Changelog:
We are happy to announce the new release 0.8.0 of GPAC, featuring AV1, full CENC and ATSC3.0 support.
General
Many security fixes (static compile and fuzzing through AFL, always ongoing).
Many bugs fixes
Added :ncl option in log levels to disable color logs
More tests and coverage
File Formats
Better support of QTFF / ProRes files
Support for AV1
-- import and export
-- source formats: OBUs (Section 5), IVF and AnnexB
-- AV1 in HEIF
Support for color (nclc, nclx and ICC profiles) in HEIF and ISOBMFF
Support for HDR (mdcv, clli) info in HEIF and ISOBMFF
Support for alpha in HEIF
Support for enforcing pasp presence even for 1:1 ratios
HEVC temporal sublayer split in MP4Box
Allow meta storage before mdat for meta-only files (heif and co)
Added option to keep AU delimiter in isobmff samples
Support for opus import
Support for pixi and ccst in HEIF
DolbyVision 'dvcC' and partial 'dvhe' boxes for HDR
Support for VP9 import and playback
Sample dependency in avc and hevc importers, and track thinner for non-refs images
Support for audio_roll signaling
New audio import mode to control AudioSampleEntry creation (v0, v1 ISOBMFF, v1 QTFF)
xHE-AAC import with detection of sync samples
Added support for MPEG-H 3D audio boxes (no import yet)
Handle Vobsub empty SPU packets
Added auxv and pict support
Common Encryption
Fully compliant CENC supporting cenc, cens, cbc1 and cbcs
CENC for AV1
Improved DASH+CENC support, pssh in MPD
ForceClear mode for CENC to skip encryption without sample groups
Made senc in movie fragments always stored before truns
Added default values handling for cbcs and possibility to set protection system per track
Compatibility with OpenSSL 1.1.x
Streaming and Adaptive Streaming
Support for ATSC3.0 both US and Korean versions !
Support for for live splices (xlink period insertions) in DASH client
Automatic period continuity in DASH when no codec change between periods
Added DASH cue-base segmentation (XML based) and -dsap option to generate cue files from source
Support for BBA-0 and BOLA implementations
Write fragment defaults in trex even when not using them
Support for simple ssix for keyframe data byterange at the start of a segment
Moved segment template at AdaptationSet level if only one representation
Changed default bsmode in dasher if single input file
Added init-seg-ext option
Added -mvex-after-traks option to MP4Box when dashing for CMAF
Added segmentation option to insert a tfdt per traf
Added -closest mode for DASH segmentation
Added -bound option to use audio segmenting method for video
Renamed -dash-run-for to -run-for
Added '=' in dash templates
Improved bandwith estimation when using HTTP 1.1 chunk transfer
Add option to force moof base offsets
MP4Box
Added -catpl to concatenate from playlist in MP4Box
Added options to set movie timescale at import and dash time
Added mpd rip option and top-level box compressor in MP4Box
Made -dts skip timing check and added -dtsc for that
Made force-cat option more agressive
Support for MovieFragmentRandomAccess using -mfra option
Added -dtsx to dump timing without offset
Added -dnalc opt for nal CRC dump
Added chunk extraction up to time until end
ISOBMFF single track import now removes references by default
Decoders
Updated ffmpeg to 4.0.2
Moved to openHEVC 3.0 API
Added nvdec support (windows, linux) with reuse of decoder context for tiled VR
Added HEVC support to mediacodec on android
AV1 playback through ffmpeg
Opus playback through ffmpeg
3D, VR and 360
Added vrhud for multiviewpoint 360
Added forced visibility mode of tiles in VR
Added tile visibility debug mode
Added forced stereo output for openhevc
Disable face nav if mouse grabbed
Added simple face tracking vr navigation based on udp commands
Added PSVR support
Added mouse move emulation at window border to force sphere rotation when inactive
Changed tile visibility algo to sample points in mesh
Players (Mobile and Desktop)
Added about extension
Added multiple audio objects in dynamic scene
Added addon splicing of main content
Added mosaic://v1:.:vN url support
Added gaze simulation through mouse and gaze-sphere visibility test
Subtitles
Allow * as argument of -srt|ttxt to dump all possible tracks (#925)
Improved support for WebVTT import
Improved support for WebVTT DASHing/fragmentation
Misc
OSX install now done through PKG and modify PATH env in/etc/paths
Added initial PMT version and disc marker to TS muxer
Moved dektec output to matrix API, added SDI clipping
Added temi periodic toggle and manual toggle in MP42TS
Minor bug fixes from 0.7.0
0.7.0:
General
* Many security fixes (static compile and fuzzing through AFL, always ongoing).
* Colorized log.
* Changed default audio volume to 100% instead of 75%.
* Expose more experimental options through the documentation.
* Improved GLES renderer on mobile platforms.
* Improvements on AVI dump.
* Fixed pkg-config Private.libs.
* SAT>IP playback support.
Codecs and File Formats
* Added L-HEVC File Format support (SHVC/MV-HEVC tracks and HEVC Tile Tracks).
* Added MPEG IFF (image File Format) support.
* Range extension support for AVC and HEVC.
* SHVC and MV-HEVC importers and playback: moved to final spec version (SHM6+).
Adaptive streaming
* Support of HLS with fragmented MP4 playback.
* APIs: gf_mpd_() functions and new segmenter API.
* Improved alternate groups.
* More support for PIFF PSEC and Smooth Streaming ( file format & playback).
* DASH client: pluggable algorithms + improvements with scalable contents.
* The counter source from the DASH sequences added to the public content.
* HLS and DASH playback minor fixes.
* DASH client logs are clearer.
VR and 360
* Added support for DASH SRD in 360 for independent videos videos (NxM partial spheres) more
* Added support for DASH SRD in 360 for HEVC tiled videos (NxM tiles on one sphere) - checkout tuto
Mobile
* Apple VideoToolBox hardware decoding support for OSX and iOS for AVC|H264.
* Android hardware decoding hardware acceleration for AVC|H264 (HEVC on its way).
* YUV422 and YUV444 8 and 10 bit support in GLES renderer.
* Android build is based on Android Studio.
* Android: new File Manager.
Subtitles
* Import of TTML via NHML according to MPEG-4 part 30 improved.
0.6.1:
Fixing packaging bugs in 0.6.0 (wrong version numbers were used).
0.6.0:
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)
Changes unknown. Previous version couldn't import VTT subtitles,
this version can.
While here switch from ffmpeg1 to ffmpeg2 and drop MAKE_JOBS_SAFE=no.