SVC Support in MP4Box - aureliendavid/gpac GitHub Wiki
MP4Box can be used to import an Scalable Video Coding (SVC) bitstream into a ISO Base Media file.
Base syntax:
MP4Box -add inputfile:svcmode=MODE outputname.mp4
MODE
is one of three values:
- merged (default mode): the imported file has only one track containing the AVC base layer and all SVC enhancement layers.
- splitbase: the imported file has two track: the first track contains the AVC base layer and the second track contains all the SVC enhancement layers.
- splitall: each layer is imported into a separate track.
It is also possible to export the SVC tracks in raw format, using one of two base syntaxes:
-
MP4Box -raw trackID inputfile
: all extractors in this track are rewritten; the resulting file will be a compliant decodable AVC/SVC bitstream. -
MP4Box -raw-layer trackID inputfile
: all extractors are skipped, only NALU data is kept; the resulting file will NOT be a compliant decodable AVC/SVC bitstream.
SVC can now be imported in MPEG-2 TS one PID per layer, using ISOBMF files where each SVC tracks are in different layers. No specific option is required for the MP42TS utility.
SVC files can now be hinted or streamed over RTP according to the IETF RFC using MP4Box, with one RTP stream PID per layer, using ISOBMF source files where each SVC tracks are in different layers. No specific option is required for the MP4Boxutility.
Thanks to the OpenSVC decoder, all these SVC transport modes are now supported for playback in GPAC. Switching between layers is achieved using ctrl+h (for high) and ctrl+l (low). SVC Switching now implies shutting down the associated network streams (stops multicast socket or PID filtering).