视频容器MP4
NB_vol_1
这个作者很懒,什么都没留下…
展开
-
MP4学习(一)MP4格式分析
MP4格式分析mp4文件由一系列的box(也有人把它叫做atom)构成,每个box包含box头部和box体。box体可以包含普通的数据,也可以包含其他的box,如果box中包含了另一个box,这种box称为container box。box由head和body构造,head中指明了box的大小和类型,如果size为1,则表示这个box的大小为large size,真正的si原创 2017-02-27 14:33:36 · 8344 阅读 · 0 评论 -
MP4学习(十)ts-mp4源码阅读(8)其他box的解析
其他box的解析常见的MP4结构图其他box的解析流程 解析过程是类似的: 1、假设该box的名字叫xxx box,例如mdia box 2、如果它是container box,就调用mp4_read_xxx_atom,该函数内部会调用mp4_read_at原创 2017-02-28 10:24:49 · 1312 阅读 · 0 评论 -
MP4学习(九)ts-mp4源码阅读(7)mdia box的解析
mdia box的解析常见的MP4结构图mdia box的定义/* ** mdia box的定义,包含: ** mdhd、hdlr、minf等box */ static mp4_atom_handler mp4_mdia_atoms[] = { { "mdhd", &Mp4Me原创 2017-02-28 10:09:51 · 980 阅读 · 0 评论 -
MP4学习(八)ts-mp4源码阅读(6)tkhd box的解析
tkhd box的解析常见的MP4结构图tkhd box的定义// tkhd box typedef struct { u_char size[4]; u_char name[4]; u_char version[1];原创 2017-02-28 10:00:51 · 1358 阅读 · 0 评论 -
MP4学习(七)ts-mp4源码阅读(5)trak box的解析
trak box的解析常见的MP4结构图trak box的定义/* ** trak box的定义,包含: ** tkhd、mdia */ static mp4_atom_handler mp4_trak_atoms[] = { { "tkhd", &Mp4Meta::mp4_read_tk原创 2017-02-27 22:28:07 · 832 阅读 · 0 评论 -
MP4学习(七)ts-mp4源码阅读(5)mvhd box的解析
mvhd box的解析常见的MP4结构图mvhd box的定义// mvhd box typedef struct { u_char size[4]; // 大小 u_char name[4]; // 名字 u_char version[1]; // box版本,0原创 2017-02-27 22:22:45 · 1468 阅读 · 0 评论 -
MP4学习(六)ts-mp4源码阅读(4)moov box的解析
mvhd box的解析 由于moov box是个container box,读取box头部之后就开始读取子box了,因此从它的子box开始讲解mvhd box的定义 class MVHD : FullBox { private: protected原创 2017-02-27 19:49:42 · 1074 阅读 · 0 评论 -
MP4学习(四)ts-mp4源码阅读(2)MP4的解析流程
MP4的解析流程MP4的解析步骤解析步骤如下:1、读取mp4文件2、读取box的size字段3、读取box的type字段4、如果box的size字段的值是1,表示真实的长度在后面,需要继续读取5、如果box的类型是下面的一种,表示它是一个container box,那么重复步骤1~4,读取子box "dinf" "edts"原创 2017-02-27 15:54:34 · 960 阅读 · 0 评论 -
MP4学习(五)ts-mp4源码阅读(3)ftyp box的解析
ftyp box的解析 ftyp box有且只有一个,在mp4文件最开始的地方。它依次包括1个32位的major brand(4个字符),1个32位的minor version(整数)和1个以32位(4个字符)为单位元素的数组compatible brands。这些都是用来指示文件应用级别的信息ftyp box的定义 // ftyp类型原创 2017-02-27 16:10:03 · 975 阅读 · 0 评论 -
MP4学习(三)ts-mp4源码阅读(1)介绍
MP4Parse源码阅读为了加深对mp4文件格式的理解,接下来介绍一个开源的MP4解析器MP4Parse,下载地址:https://github.com/macmade/MP4Parse把工程下载下来之后,进入source目录就可以看见源代码了,有很多cpp文件,最重要的是MP4.Parser.cpp,其他文件大部分都是各个box的解析代码,代码量不是很多。box的定义原创 2017-02-27 15:26:29 · 1207 阅读 · 0 评论 -
MP4学习(二)MP4文件格式的解析,以及MP4文件的分割算法
原文出处:http://www.cnblogs.com/haibindev/archive/2011/10/17/2214518.htmlMP4文件格式的解析,以及MP4文件的分割算法 mp4应该算是一种比较复杂的媒体格式了,起源于QuickTime。以前研究的时候就花了一番的功夫,尤其是如何把它完美的融入到视频点播应用中,更是费尽了心思,主要问题是处理mp4文件庞大的“转载 2017-02-27 15:06:11 · 1041 阅读 · 0 评论