首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

MP4文件结构(二)

2012-08-25 
MP4文件结构(2)以一个长度为10秒的MP4为例,其结构可能如下:type: ftyp,size:24type: mdat,size:8884701typ

MP4文件结构(2)

以一个长度为10秒的MP4为例,其结构可能如下:

type: ftyp,        size:       24
type: mdat,     size:  8884701
type: mdat,     size:   136125
type: moov,     size:     4656

1. ftyp

一个ftyp对文件的类型进行描述,指明其符合哪些格式。一般就是mp4格式了。符合本文档的媒体类型有很多种,box条目的种类也不同,所以需要brand与compatible_brands的来说明此文件内的box的种类。文档中定义了isom, avc1, iso2, mp71, iso3这些brand应有的格式,当解码器在读出其brand后,就知道该文件的格式了。


(1) trak / tkhd

对于视频trak,存宽、高信息;对于音频trak,存音量信息。并不是太重要,真正初始化解码器要靠 stsd中的信息。

(2) trak / mdia / hdlr

标明该trak是视频还是音频

(3) trak / mdia / minf / stbl

所有重要的表都在这里。其中,

   - stsd: 编码器CODEC信息

   - stsz: 用于sample的划分,通常一个sample可以对应于frame。

   - stsc: 多个sample组成一个trunk,不过实际操作中可以让一个sample直接构成一个trunk

   - stco: trunk在文件中的位置,用于定位。

   - stts / ctts: 指定每个sample的PTS, DTS

(4) trak / edts / elst

把视频分为多段segment, 每个的起始时间和时长



热点排行