视频文件的封装格式

简介: MP4是一套用于音频、视频信息的压缩编码标准,由国际标准化组织(ISO)和国际电工委员会(IEC)下属的“动态图像专家组”(Moving Picture Experts Group,即MPEG)制定

FFmpeg的视频封装格式

FFmpeg支持很多封装格式,包括MP4、FLV、MKV、TS 等视频封装格式、MP3、AAC等音频封装格式以及RTMP、RTSP、HLS等网络协议封装格式。以下我们简单介绍两种比较流行的使用.

1. MP4的相关学习

1.1 封装格式

MP4 封装格式基本上可以认为是日常生活和工作中最常见的视频文件格式,主要是由于其广泛的适用性,不仅在PC端(windows、mac、linux)支持的非常好,而且在移动端(Android、i0S)也能流畅播放。

1.2 格式标准

MP4 格式标准为ISO-14496 Part 12和ISO-14496 Part 14,具体特征如下:

  1. MP4 文件由许多Box和FullBox。
  2. FullBox是 Box 的扩展,在Header中增加了8位version信息和24位的flags信息。
  3. 每个Box由Header和 Data 两部分组成。
  4. Header中包含了整个Box的长度大小(size)和类型(type).
  5. Data中包含了实际的数据,可以是纯数据,也可以是子Box。当Box中的 Data是一系列子Box时,这个Box又被称为Container(容器)。

1.3 关键BOX的介绍

1.3.1 MP4 ftyp Box

ftyp Box,一般位于文件开始位置,其中包含了MP4视频文件的类型、版本、兼容协议等信息。

1.3.2 MP4 mdat Box

mdat Box,用来存放媒体文件的实际数据内容。

2. FLV的相关学习

2.1 FLV的定义

FLV 是FLASH VIDEO的简称,FLV流媒体格式是随着Flash MX的推出发展而来的视频格式。由于它形成的文件极小、加载速度极快,使得网络观看视频文件成为可能,它的出现有效地解决了视频文件导入Flash后,使导出的SWF文件体积庞大,不能在网络上很好的使用等问题。

2.2 FLV的使用优势

FLV作为一种新兴的网络视频格式,能得到众多的网站支持并非偶然。除了FLV视频格式本身占有率低、视频质量良好、体积小等特点适合网络发展外,丰富、多样的资源也是FLV视频格式统一在线播放视频格式的一个重要因素。从最新的变形金刚到越狱再到各项体育节目,甚至于网友制作的自拍视频等都可以在网络中轻而易举的找到。

在互联网上提供FLV视频的有两类网站,一种是专门的视频分享网站如美国的YouTube网站、国内的六间房、土豆网等。另一种是门户网站提供了视频播客的板块,提供了自己的视频频道,如新浪视频播客等,也是使用FLV格式的视频。

2.3 FLV不同的使用方式

2.3.1 本地方式

作为一个独立的FLV文件。虽然Flash视频文件通常是交付使用的Flash Player的控制, FLV文件本身是全功能对自己的和可以发挥的或转换为其他格式,由本地存储如硬盘或CD上.

2.3.2 嵌入式swf

逐步通过HTTP下载(支持在Flash Player 7和更高版本)。此方法使用的ActionScript ,包括一外部托管的Flash视频文件的客户端播放。渐进式下载有几个优势,包括缓冲,使用通用的HTTP服务器,并有能力再用一个单一的SWF Player的多重FLASH视频源。Flash Player 8中包括支持随机存取内部的视频文件使用部分下载功能的HTTP ,有时这是被称为流。不过,不同的流使用rtmp ,HTTP的“分流” ,不支持实时广播。流通过HTTP需要自订播放器和注射液的具体Flash视频中继载有确切的出发位置在字节和时间码的每一个关键帧。使用此特定的信息,自定义的Flash视频播放器,可要求任何部分的Flash视频文件,开始在指定的关键帧。

2.3.2 rtmp方式

流通过rtmp到Flash Player的使用Flash媒体服务器(以前称为闪光通信服务器),风险投资, electroserver , wowza Pro或开放原始码red5服务器。

相关文章
|
7月前
|
存储 编解码 Android开发
点播封装格式
点播封装格式
46 5
|
7月前
|
存储 编解码 自然语言处理
常见的音频与视频格式
常见的音频格式有 WAV、MP3、FLAC、APE、AAC、OGG 等,常见的视频格式有 MP4、AVI、MOV、WMV、MKV、FLV、3GP、MPEG 等,它们在兼容性、文件大小、画质等方面各有特点。
|
API 内存技术
FFmpeg连载4-音频解码
ffmpeg连载系列
170 0
|
存储
FLV封装格式
FLV封装格式介绍及解释,本文介绍 FLV 里面各种tag的作用。
134 0
|
存储 编解码 JSON
MP4封装格式
MP4封装格式介绍及解释,本文介绍 mp4 里面各种 box 的作用,包括 mdat box, moov box,mdhd box 等等。
413 0
|
存储 编解码 网络协议
封装格式介绍
音视频封装格式介绍,FLV,MP4,音视频同步
149 0
|
编解码 vr&ar 内存技术
FFmpeg中的音频文件的封装格式和编码格式
FFmpeg对于音频文件的封装和编码是非常简单的,欢迎大家深入使用
|
Ubuntu 数据安全/隐私保护
FFMPEG音频视频开发: 使用FFMPEG给视频帧添加水印
FFMPEG音频视频开发: 使用FFMPEG给视频帧添加水印
488 0
FFMPEG音频视频开发: 使用FFMPEG给视频帧添加水印
|
存储 编解码 数据安全/隐私保护
FLV 封装格式解析
FLV (Flash Video) 是由 Adobe 公司推出的一种封装格式,主要用于流媒体系统。FLV 封装的媒体文件具有体积轻巧、封装播放简单等特点,很适合网络应用。目前各浏览器普遍使用 Flash Player 作为网页播放器,使得安装有浏览器的计算机终端不需要另外安装播放器,这也是 FLV 格式广为流行的原因之一。
400 0
FLV 封装格式解析