MP4格式

MP4是一种封装格式,全名为MPEG-4,文件中的所有数据都装在box中,也就是说MP4文件由若干个box组成,每个box有类型和长度,并且box之间可以相互嵌套。

每个box的结构都一致,如下图所示,box由head、body组成,head中4字节的size大小包括box header和box body整个box的大小,4字节的type一般为4个字符,其可以是“ftyp”、“moov”等,这些box type都是已经预定义好的,分别表示固定的意义,如果是“uuid”,表示该box为用户扩展类型。如果box type是未定义的,应该将其忽略。

上图片节选自:https://www.jianshu.com/p/529c3729f357(重点推荐这篇博客,里边有MP4标准文件的连接、以及推荐的开源软件)

一个MP4文件首先会有且只有一个“ftyp”类型的box,作为MP4格式的标志并包含关于文件的一些信息;之后会有且只有一个“moov”类型的box(Movie Box),它是一种container box,子box包含了媒体的metadata信息;MP4文件的媒体数据包含在“mdat”类型的box(Midia Data Box)中,该类型的box也是container box,可以有多个,也可以没有(当媒体数据全部引用其他文件时),媒体数据的结构由metadata进行描述。

box有很多的种类,里边存在包含关系,一部分种类box是必须的,另一部分是可能不需要的

上图是box众多类型中较为重要的类型,借鉴自:https://blog.csdn.net/fireroll/article/details/80711664https://blog.csdn.net/dragoo1/article/details/49659473中有全部种类的表格图。

常见box类型结构图:(https://blog.csdn.net/NB_vol_1/article/details/58071879

mp4info软件可以直接读取MP4文件,将其数据组织情况完整展示

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值