MP4文件格式解析--个人总结

上传人:平*** 文档编号:14286511 上传时间:2017-10-29 格式:DOCX 页数:8 大小:257.30KB
返回 下载 相关 举报
MP4文件格式解析--个人总结_第1页
第1页 / 共8页
MP4文件格式解析--个人总结_第2页
第2页 / 共8页
MP4文件格式解析--个人总结_第3页
第3页 / 共8页
MP4文件格式解析--个人总结_第4页
第4页 / 共8页
MP4文件格式解析--个人总结_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《MP4文件格式解析--个人总结》由会员分享,可在线阅读,更多相关《MP4文件格式解析--个人总结(8页珍藏版)》请在金锄头文库上搜索。

1、1目录1.引言 .12.MP4 中一些概念详解 .13.MP4 文件结构分析 .13.1box 结构 .13.2MP4 总体结构 .23.3Movie box(moov) .23.3.1Movie Header box(mvhd).33.3.2Trak box.43.4Media box.53.4.1Media header box(mdhd).63.4.2Hdlr box .63.4.3Minf box .73.5Sample Table Box(stbl).73.5.1Sample Description Box(stsd) .73.5.2Time To Sample Box( stts)

2、 .83.5.3Sample Size Box(stsz) .83.5.4Sample To Chunk Box(stsc ) .83.5.5Sync Sample Box(stss) .83.5.6Chunk Offset Box(stco) .81MP4 文件格式解析总结1.引言MP4 是一种常见的多媒体容器格式,对应 MPEG-4 标准,这种容器格式非常全面开放,被认为可以在其中嵌入任何形式的数据,各种编码的视频、音频等都可以。在 MP4 文件中,媒体的描述信息与媒体数据是分开的,并且媒体数据的组织也很自由,不一定要按照时间顺序排列。同时,MP4 也支持流媒体,MP4 目前被广泛用于封装

3、 h.264 视频和 AAC 音频,是高清视频的代表。MP4 格式的官方文件后缀名是“.mp4” ,还有其他的以 mp4 为基础进行的扩展或者是缩水版本的格式。2.MP4 中一些概念详解MP4 文件格式中,所有的内容存在一个称为 movie 的容器中。一个 movie可以由多个 tracks 组成。每个 track 就是一个随时间变化的媒体序列, track 里的每个时间单位是一个 sample,它可以是一帧视频,或者一段连续的压缩音频。sample 按照时间顺序排列。其中一帧音频可以分解成多个音频 sample,所以音频一般用 sample 作为单位,而不用帧。MP4 文件格式的定义里面,用

4、 sample表示一个时间帧或者数据单元。几个连续的 sample 就构成了一个 chunk。3.MP4 文件结构分析3.1box 结构B O XB o x H e a d e rB o x D a t aU N I T 6 4s i z et y p eB o x H e a d e rU N I T 3 2U N I T 3 2l a r g e s i z e2MP4 由一个一个 box 组成,每个 box 由一个 boxheader 和 boxdata 组成,boxheader 又分为 3 部分:4 字节的 size:表示这个 box 的大小 4 字节的 type:表示这个 box 的

5、类型8 字节的 largesize如果整个 box 的大小超出了 4 字节能表示的最大值,那么 size=1,同时,box 的大小就储存在 largesize 中。3.2MP4 总体结构M P 4f t y p b o xm o o v b o xm d a t b o xM o o v b o xm v h d b o xA u t i o t r a c k b o xM e d i a t r a c k b o xo t h e r t r a c k b o xT r a k b o xt k h d b o xm e d i a b o xM e d i a b o xM d h

6、d b o xH d l r b o xM i n f b o xM i n f b o xH e a d e r b o xD i n f b o xS t b l b o xS t b l b o xS t s d b o xS t t s b o xS t s z b o xS t s c b o xS t c o b o xC t t s b o xS t s s b o xMp4 必须包含 ftyp box、moov box、mdat box。File type box(ftyp)用来储存文件类型的相关信息,Movie box(moov)用来储存媒体的信息,是一个 container

7、 box,Media data box(mdat)用来储存媒体的具体数据33.3Movie box(moov)M o o v b o xm v h d b o xA u t i o t r a c k b o xM e d i a t r a c k b o xo t h e r t r a c k b o x一个 movie box 包含一个 mvhd box 和若干个 trak box,比如 audio trak box,vedio trak box。3.3.1Movie Header box(mvhd)mvmd 具体结构如下:字段 字节数 意义box size 4 box 大小box t

8、ype 4 box 类型version 1 box 版本,0 或 1,一般为 0。(以下字节数均按 version=0)flags 3creation time 4 创建时间(相对于 UTC 时间 1904-01-01 零点的秒数)modification time 4 修改时间time scale 4 文件媒体在 1 秒时间内的刻度值,可以理解为 1 秒长度的时间单元数duration 4该 track 的时间长度,用 duration 和 time scale 值可以计算 track 时长,比如 audio track 的 time scale = 8000, duration = 560

9、128,时长为 70.016,video track 的 time scale = 600, duration = 42000,时长为 70rate 4 推荐播放速率,高 16 位和低 16 位分别为小数点整数部分和小数部4分,即 16.16 格式,该值为 1.0(0x00010000 )表示正常前向播放volume 2 与 rate 类似,8.8 格式, 1.0(0x0100 )表示最大音量reserved 10 保留位matrix 36 视频变换矩阵pre-defined 24next track id 4 下一个 track 使用的 id 号3.3.2Trak boxT r a k b

10、o xt k h d b o xm e d i a b o xTrak box 必须包含一个 tkhd box 和一个 media box,此外还有很多可选的box: Track Header box(tkhd): 定义了一个 track 的特性,例如时间,空间和音量信息。结构如下:字段 字节数 意义box size 4 box 大小box type 4 box 类型version 1 box 版本,0 或 1,一般为 0。(以下字节数均按 version=0)flags 3按位或操作结果值,预定义如下:0x000001 track_enabled,否则该 track 不被播放;0x00000

11、2 track_in_movie,表示该 track 在播放中被引用;0x000004 track_in_preview,表示该 track 在预览时被引用。5一般该值为 7,如果一个媒体所有 track 均未设置 track_in_movie 和track_in_preview,将被理解为所有 track 均设置了这两项;对于 hint track,该值为 0creation time 4 创建时间(相对于 UTC 时间 1904-01-01 零点的秒数)modification time 4 修改时间track id 4 id 号,不能重复且不能为 0reserved 4 保留位duration 4 track 的时间长度reserved 8 保留位layer 2 视频层,默认为 0,值小的在上层alternate group 2 track 分组信息,默认为 0 表示该 track 未与其他 track 有群组关系volume 2 8.8格式,如果为音频 track1.0(0x0100)表示最大音量;否则为 0r

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号