QuickTime文件格式解析
2008-06-14 18:43
525 查看
QuickTime文件格式解析
Peter Lee 2008-06-14一、简介
QuickTime是Apple公司开发的一套完整的多媒体平台架构,可以用来进行多种媒体的创建,生产,和分发,并为这一过程提供端到端的支持:包括媒体的实时捕捉,以编程的方式合成媒体,导入和导出现有的媒体,还有编辑和制作,压缩,分发,以及用户回放等多个环节。QuickTime文件格式是QuickTime整个架构体系中的一环,非常基础和重要的一环。QuickTime的多媒体架构应用于Mac OS和Windows系统上,而QuickTime文件格式是平台无关的,可以应用于各类系统。常见的采用QuickTime文件格式的扩展名有:mov, qt, mp4, m4v, m4a, m4p, m4b等。
二、原子
原子是QuickTime用来构建等级数据结构的基本容器。新创建的QuickTime原子就象树的根。随后的每个原子都包含在其中并且包含数据和其它原子。如果一个QuickTime原子包含其它原子,就被叫做父原子,包含在其中的原子就叫做叶原子。
1、简单原子
原子包含一个原子头,原子头后面是原子数据。原子头包含原子的尺寸和类型字段,用于表示原子的字节尺寸和类型信息;它还可能包含一个扩展的尺寸字段,该字段以64位整数的形式给出了一个大原子的尺寸。原子结构如图1所示。
图1 原子结构图
2、QT原子
原子的特点是:简单、抽象。QuickTime文件格式中的所有数据及信息都可以用原子和原子之间的嵌套关系来表达。然而,基本原子的缺点是,当应用程序遇到未知的原子类型(atom type)时,将无法确认该原子是否有下一级的子原子,此种情况下,应用程序即使对子原子类型是已知的,也无法进行解析。
QT原子是一种增强了的数据结构,它提供了一种更加通用的存储格式,并且消除了一些在使用简单原子时会出现的不明确的地方。QT原子中,根原子atom type项统一设置为“
sean”。QT原子在简单原子的基础上,增加了原子ID和子原子数目。QT原子的结构如下图2所示。
图2 QT原子结构图
3、常见的顶层原子类型
· 'moov'
· 'mdat'
· 'free'
· 'junk'
· 'pnot'
· 'skip'
· 'wide'
· 'pict'
· 'ftyp'
· 'uuid' : Used by Sony's MSNV brand of MP4
三、文件结构实例解析
图4 movie atom结构示例
四、相关资料
1、文档资料
Quicktime Wiki资料,简洁明了
http://wiki.multimedia.cx/index.php?title=QuickTime_container
Quicktime开发者站点的官方网站,英文资料,可以下载到相应的pdf文档。
http://developer.apple.com/documentation/QuickTime/QTFF/QTFFPreface/chapter_1_section_1.html
Quicktime开发者站点中文站,可以看到中文的资料,不过更新时间很早了2001-03-01,翻译的也不专业。
http://developer.apple.com.cn/Documentation/QuickTime/QTFF/index.html
2、分析工具
MovSpot.exe
http://blog.csdn.net/sunshine1314/archive/2007/09/22/1795739.aspx
3、相关源码
Bento4 MP4 Class Library/SDK
http://bento4.sourceforge.net/
相关文章推荐
- QuickTime文件格式解析
- QuickTime文件格式解析
- 各种文件格式解析(EN网址)
- FLV文件格式解析
- Java通过jxl解析Excel文件入库,及日期格式处理方式 (附源代码)
- MP4文件格式的解析,以及MP4文件的分割算法
- PEM文件格式具体解析
- HTML Help Workshop 工程文件格式解析
- ELF文件格式解析
- android 将SQLite数据库的表格导出为csv格式,并解析csv文件
- MXF 文件解析,MXF Parse, MXF code. MXF文件格式
- JVM探索之路之Class文件结构解析(一):Class文件的格式与定义
- 常用多媒体文件格式压缩标准解析学习---图像表示与声音基本
- mp4文件格式解析(四)
- FLV文件格式解析
- ELF文件格式解析
- Linux操作系统的可执行文件格式详细解析
- wav音频文件格式解析
- MP4文件格式的解析,以及MP4文件的分割算法
- MP4学习(二)MP4文件格式的解析,以及MP4文件的分割算法