Wednesday, September 26, 2012

fMP4 - Fragmented MP4 - fMP4 Boxes


A fragmented MP4 file contains a number of discrete units called boxes (also known as atoms).
Three key boxes in the fragmented MP4 approach are the ‘moov’, ‘moof’ and ‘mdat’ boxes:

• ‘moov’ (movie metadata box) contains a virtual movie timeline with display characteristics, duration and timescale elements, as well as subboxes providing information for each movie track.



• ‘mdat’ (media data box) contains media data, raw audio and video information and timed-text elements that are decoded based on a movie box’s information.

• ‘moof’ (movie fragment box) contains short audio, video or text portions of an elementary stream. Movie fragments typically house a closed GOP (Group of Pictures) or AVC Coded Video Sequence.
 

MPEG-4 file sources did not originally support MP4 file streaming but MPEG is now exploring DASH (Dynamic Adaptive Streaming over HTTP) using MP4 elementary stream fragments as network packets for HTTP streaming delivery.

Coupling an ‘mdat’ and a ‘moof’ creates an fMP4 movie fragment that includes one track fragment (either audio or video) with sufficient metadata to make it independently decodable. Using movie fragments to create packets optimized for adaptive streaming is similar in concept to RTP packets of audio/video, but fMP4 movie fragments are optimized for bitrate switching and HTTP delivery over unreliable networks.

No comments:

Post a Comment