mp4文件信息解析

在互联网音视频开发中,mp4无疑是跨平台最好的,要学会查看mp4信息,方法很多,用FFmpeg可以直观的看到,这里讲的是如何看十六进制文件信息,也就是mp4文件的写入,先看几个mp4的基本概念

mp4的几个基本概念

1.mp4文件由许多Box与FullBox组成
2.每个Box由Data和Header组成
3.Data为Box实际数据,Header包含了整个Box的整个长度的大小size和类型type
4.当一个Box的Data为一系列的子Box时,这个Box又可以称为Container Box
转载:mp4文件Box层次结构图
下面直接进入正题,请看图
,先来看一张图mp4文件信息解析_第1张图片
右边区域是mp4文件用的sublime打开,可以以十六进制的形式看到mp4文件,当然可能看不太明白,装一下HexViewer插件,会将ascii码翻译一下,大致能看到一些信息
绿色部分是ftyp(文件类型)分别是4bytes的size,4bytes的type和type Data
再往下一行前8bytes仍然是一级容器名moov,包含以下所有内容是0000 0597=5256+916+7=1431bytes(数据过大不作计算)。
图中1位置:0000 006c 6d76 6864,分别表示0000006c=108bytes,是到下一个二级容器trak的距离(图中标数1-2);6d76 6864=容器名mvhd。
再看图中2位置:0000 01dd=477bytes,刚好等于到下一个二级容器track的距离(图中标数2-3); 7472 616d=track容器名
请结合Box层次结构图,通过计算,就能解析出mp4文件信息

你可能感兴趣的:(音视频)