Open ssdr opened 5 years ago
MP4 file is box/atom based.
只有1个,并只能包含在文件层,不能被其他box包含,该box应该放在文件的最开始。
container box,包含文件媒体的metadata信息,只有1个,并只能包含在文件层。 一般情况下,moov中会包含一个mvhd和若干个trak。
container box,包含了媒体数据的引用和描述。 trak必须包含一个tkhd和一个mdia,此外还有很多可选的box。
container box,其子box结构和种类比较复杂。 一般来说,mdia包含一个mdhd,一个hdlr和一个minf。
解释了媒体的播放过程信息,该box也可以包含在meta box(meta)中。
container box,存储了解释track媒体数据的handler-spcific信息,media handler用这些信息将媒体时间映射到媒体数据并进行处理。 一般情况下,minf包含一个header box,一个dinf和一个stbl,其中header box根据track type(media handler type)分为vmhd,smhd,hmhd和nmhd。
video media header box (vmhd)
sound media header box (smhd)
hint media header box (hmhd)
null media header box (nmhd)
container box,解释如何定位媒体信息。 一般情况下,dinf包含一个dref,dref下会包含若干个url或urn,这些box组成一个表,用来定位track数据。
container box,包含了关于track中sample所有时间和位置信息,以及sample的编解码等信息。利用这个表,可以解释sample的时序,类型,大小以及在各自存储容器中的位置。
存储媒体数据。
几个概念
MP4 file is box/atom based.
file type box (ftyp)
只有1个,并只能包含在文件层,不能被其他box包含,该box应该放在文件的最开始。
movie box (moov)
container box,包含文件媒体的metadata信息,只有1个,并只能包含在文件层。 一般情况下,moov中会包含一个mvhd和若干个trak。
movie header box (mvhd)
track box (trak)
container box,包含了媒体数据的引用和描述。 trak必须包含一个tkhd和一个mdia,此外还有很多可选的box。
track header box (tkhd)
media box (mdia)
container box,其子box结构和种类比较复杂。 一般来说,mdia包含一个mdhd,一个hdlr和一个minf。
media header box (mdhd)
handler reference box (hdlr)
解释了媒体的播放过程信息,该box也可以包含在meta box(meta)中。
media information box (minf)
container box,存储了解释track媒体数据的handler-spcific信息,media handler用这些信息将媒体时间映射到媒体数据并进行处理。 一般情况下,minf包含一个header box,一个dinf和一个stbl,其中header box根据track type(media handler type)分为vmhd,smhd,hmhd和nmhd。
media information header box (vmhd, smhd, hmhd, nmhd)
video media header box (vmhd)
sound media header box (smhd)
hint media header box (hmhd)
null media header box (nmhd)
data information box (dinf)
container box,解释如何定位媒体信息。 一般情况下,dinf包含一个dref,dref下会包含若干个url或urn,这些box组成一个表,用来定位track数据。
sample table box (stbl)
container box,包含了关于track中sample所有时间和位置信息,以及sample的编解码等信息。利用这个表,可以解释sample的时序,类型,大小以及在各自存储容器中的位置。
media data box (mdat)
存储媒体数据。