mp4文件分析

福利

mp4文件分析工具:mp4reader

使用ffmpeg在命令行下将h264文件封装成MP4文件:
ffmpeg -i tmp1_bsm.h264 -vcodec copy -f mp4 tmp1_bsm.mp4

说明

分析一个mp4文件之前我们最好用通过*.h264的源文件通过ffmpeg进行转码得到的MP4文件,这样方便我们通过对比后更加直观的发现MP4的封装细节。

一个MP4文件是由许多称为"box"的数据块组成,每个box都包含大小、类型属性。在box中又可以包含其他box,这时外层的box被称为"contain box",我们先从mp4reader分析工具中分析到的结果查看一下一个mp4文件最重要的box有哪几种?

mp4文件分析_第1张图片

通过上图我们可以看出ftyp、mdat、moov、mvhd、trak这几种类型的box比较重要,我们着重对几种格式的box做一下介绍:

ftyp:一个文件中包且仅包含一个ftyp类型的box,并且该box必须放置在文件最开始的位置。该box用来说明文件的类型;
mdat:该box中包含了媒体数据,在视频轨道中,该box包含的是视频帧数据;
moov:该box中包含了媒体数据的metadata信息,这个类型的box必须放置在文件的最顶层(即不能嵌套在其他box中),该box可以放在文件的开头或结尾处,不做强制性限制;
mvhd:该box中包含了所有和媒体无关的说明信息;(比如要获取整个文件的总时长,可以通过该box的time scale和duration属性获得,duration除以time scale即是整部电影的长度)

 

官方文档截图

《ISO/ICE 14496-12》文件下载:https://download.csdn.net/download/heibao111728/10751047

mp4文件分析_第2张图片

mp4文件分析_第3张图片

mp4文件分析_第4张图片

mp4文件分析_第5张图片

mp4文件分析_第6张图片

相关技术博客:http://www.52rd.com/Blog/wqyuwss/559/

 

你可能感兴趣的:(mp4)