原谅地址:http://blog.csdn.net/pirateleo/article/details/7583321

文件类型ftyp(ISO-14496-12)

Author:Pirate Leo

Email:codeevoship@gmail.com

ISO 14496 - 12 定义了一种封装媒体数据的基础文件格式,mp4、3gp、ismv等我们常见媒体封装格式都是以这种基础文件格式为基础衍生的。

如果从全局角度了解基础文件格式,请看我之前的博文《MP4文件格式详解——结构概述》。

本系列文档从MP4文件入手,对文件中重要的box进行解析。

<======================================================================>

本次解析ftyp box

aligned(8) class FileTypeBox extends Box(‘ftyp’)
{ unsigned int(32) major_brand; unsigned int(32) minor_version; unsigned int(32) compatible_brands[];  // to end of the box
}

什么是brands?官方是这样描述的:

Each brand is a printable four-character code, registered with ISO, that identifies a precise specification.//在ISO注册的4个字符。

下表来源于网络,列出了几种常见的基于基础文件格式的,媒体封装格式标识。

更多的内容可以查看http://www.ftyps.com/

  Brand Extension Mime Type
MP4 mp41, mp42 .mp4 video/mp4, audio/mp4, application/mp4
3GPP various, e.g. 3gp4, 3gp5 .3gp video/3gpp, audio/3gpp
3GPP2 3g2a .3g2 video/3gpp2, audio/3gpp2
Motion JPEG 2000 mjp2 .mj2 video/mj2
QuickTime "qt" .mov video/quicktime

结合实际文件,下图是MP4文件起始位置存放的数据

length(4字节):0x0000001c:box的长度是28字节;

boxtype(4字节):0x66747970:“ftyp”的ASCII码,box的标识;

major_brand(4字节):0x69736f6d:“isom“的ASCII码;

minor_version(4字节):0x00000200:ismo的版本号;

compatible_brands(12字节):说明本文件遵从(或称兼容)ismo,iso2,mp41三种协议。

ftyp box通常放在文件的开始,通过对该box解析可以让我们的软件(播放器、demux、解析器)知道应该使用哪种协议对这该文件解析,是后续解读文件基础。

MP4文件格式详解——文件类型ftyp相关推荐

  1. MP4文件格式详解——文件类型ftyp(转)

    文件类型ftyp(ISO-14496-12) Author:Pirate Leo Email:codeevoship@gmail.com ISO 14496 - 12 定义了一种封装媒体数据的基础文件 ...

  2. 多媒体 MP4文件格式详解——文件类型ftyp

    ISO 14496 - 12 定义了一种封装媒体数据的基础文件格式,mp4.3gp.ismv等我们常见媒体封装格式都是以这种基础文件格式为基础衍生的. 如果从全局角度了解基础文件格式,请看我之前的博文 ...

  3. MP4文件格式详解——结构概述

    MP4文件格式详解(ISO-14496-12/14) 一.基本概念 1. 文件,由许多Box和FullBox组成. 2. Box,每个Box由Header和Data组成. 3. FullBox,是Bo ...

  4. MP4文件格式详解——元数据moov(二)tkhd box

    ISO 14496 - 12 定义了一种封装媒体数据的基础文件格式,mp4.3gp.ismv等我们常见媒体封装格式都是以这种基础文件格式为基础衍生的. 如果从全局角度了解基础文件格式,请看我之前的博文 ...

  5. MP4文件格式详解(ISO-14496-12/14)

    一.基本概念 1. 文件,由许多Box和FullBox组成. 2. Box,每个Box由Header和Data组成. 3. FullBox,是Box的扩展,Box结构的基础上在Header中增加8bi ...

  6. S19文件格式详解(总结)以及与hex文件的互转

    S19文件格式详解 ​​ ​​ S-record格式文件是Freescale CodeWarrior编译器生成的后缀名为.S19的程序文件,是一段直接烧写进MCU的ASCII码,英文全称问Motoro ...

  7. ZIP文件格式详解(一)——文件数据格式

    ZIP文件格式详解(一)--文件数据格式 ------------------------------------------------------------------------------- ...

  8. Python文件格式详解:py、pyc、pyo、pyd文件区别

    Python文件格式详解:py.pyc.pyo.pyd文件区别 Python是一种非常流行的编程语言,它具有简洁.易学.高效等优势,在各个领域得到了广泛的应用.而在Python编写程序时,我们会发现存 ...

  9. Ffmpeg快速命令使用 Ffmpeg选项详解 Ffmepg格式详解 常见视频文件格式详解

    http://www.ffmpeg.com.cn/index.php/%E9%A6%96%E9%A1%B5 Ffmpeg快速命令使用 From Ffmpeg工程组 Jump to: navigatio ...

最新文章

  1. Linux的kickstart安装详解
  2. Qt 6的Qt 3D会是什么样?
  3. 2017-2018-1 20155229 《信息安全系统设计基础》第十三周学习总结
  4. java 简单获取Excel表格内容(初学者)
  5. 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 27丨每次访问的交易次数【难度困难-提前放出来】​
  6. usb大容量存储设备驱动程序_20年历史了!为什么USB接口还存在?网友:原来如此...
  7. 2-4实战分类之模型构建
  8. 蓝桥杯51单片机之独立按键控制数码管【单片机开发初学者必学会】
  9. pascal voc数据集_【资源分享】数据集搜索神器BIFROST
  10. pycharm remote 远程项目 同步 本地_手把手教你Pycharm远程连接服务器端项目进行本地开发调试...
  11. 软件测试——闭着眼睛测试软件
  12. 为什么要使用向量化?
  13. 181010词霸扇贝有道每日一句
  14. FFmpeg 视频旋转处理命令
  15. 资源:在10天内建立区块链知识框架
  16. Mac桌面个性贴纸Desktop Stickers
  17. C语言URL解析器(代码分享)
  18. 数值微分的python实现
  19. 使用阿里云和gcr.azk8s.cn镜像安装Kubernetes (K8s)
  20. kali使用笔记本自带无线网卡_生活日常(教你笔记本电脑如何正确使用WiFi)

热门文章

  1. SAP CO模块 KSV5 费用分摊分配解析
  2. 计算机9针485接口,RS485是九针的插口,而实际上里面只能两根线是有用的,其它的七根线则无作用,那为什么弄九针呢?-工业支持中心-西门子中国...
  3. 多益网络2020笔试题
  4. python图片目标检测_python+opencv实现目标检测中图片怎么插入
  5. Bloom Filter 布隆过滤器
  6. 类似于 qq发说说动态 基于原生servlet 后台方案
  7. MATLAB 数据及基本运算 --持续更新
  8. HTML5 App的代码注入攻击
  9. DNS 服务与邮件服务器应用--配置DNS正向解析与反向解析
  10. ​《Python知识手册》更新到V4.1版