声明一下:这些关于ffmpeg的文章仅仅是用于记录我的学习历程和以便于以后查阅,文章中的一些文字可能是直接摘自于其它文章、书籍或者文献,学习ffmpeg相关知识是为了使用在Android上,我也才是刚開始接触学习,如有不正确之处还请指出。

视频格式能够分为适合本地播放的本地影像视频和适合在网络中播放的网络流媒体影像视频两大类。虽然后者在播放的稳定性和播放画面质量上可能没有前者优秀。但网络流媒体影像视频的广泛传播性使之正被广泛应用于视频点播、网络演示、远程教育、网络视频广告等等互联网信息服务领域。
注:原始的视频数据能够理解为通过摄像头等驱动获取的没有经过编码的数据,市面上usb摄像头输出格式常见的有:RGB24、YUV2、YV2(这些都是没有编码的原始数据)。MJPEG(经过编码的数据)。摄像头捕捉的数据也是能够设置的,比方Windows下用cap来设置。

视频常见格式:MPEG/MPG/DAT(曾经老是看到DAT。如今才知道这类文件竟然是视频文件)、AVI、ASF、WMV、NAVI、3GP、REAL VIDEO、MKV、FLV、F4V、RMVB、WebM.
1、MPEG/MPG/DAT
MPEG(运动图像专家组)是Motion Picture Experts Group的缩写,这类格式包含了MPEG-1。MPEG-2和MPEG-4在内的多种视频格式。MPEG-1被广泛的应用在VCD的制作和一些视频片段下载的网络应用上面。MPEG-2则是应用在DVD的制作上。

MPEG2的图像质量是MPEG1无法比拟的。

MPEG系列标准已成为国际上影响最大的多媒体技术标准。当中MPEG1和MPEG2是採用同样原理为基础的预測编码、变换编码、熵编码及运动补偿等第一代数据压缩编码技术;MPEG4(ISO/IEC 14496)则是基于第二代压缩编码技术制定的国际标准,它以视听媒体对象为基本单元。採用基于内容的压缩编码。以实现数字视音频、图形合成应用及交互式多媒体的集成。

注意:这里须要注意的是不要把MPEG-4当成 MP4。MPEG-4是编码方式,而MP4是文件的扩展名。用MPEG-4的编码方式能够编出MP4格式(扩展名)的文件。也可编出3GP、RMVB、RM等格式。一个MP4格式的文件能够由MPEG-4的编码方式编出,也可由MPEG-1、MPEG-2、H.263等编出。
2  、AVI
AVI,音频视频交错(Audio Video Interleaved)的英文缩写。

AVI格式调用方便、图像质量好。压缩标准可随意选择,是应用最广泛、也是应用时间最长的格式之中的一个。

3、ASF
ASF(Advanced Streaming format 高级流格式)。ASF是一种能够直接在网上观看视频节目的文件压缩格式。ASF使用了MPEG4的压缩算法。压缩率和图像的质量都非常不错。由于ASF是以一个能够在网上即时观看的视频“流”格式存在的,所以它的图像质量比VCD差一点点并不出奇,但比同是视频“流”格式的RAM格式要好。
4、WMV
一种独立于编码方式的在Intent上实时传播多媒体的技术标准。
5、NAVI
NAVI是一种去掉视频流特性的改良型ASF格式。

(视频格式追求的无非是压缩率和图像质量)。

6、3GP
3GP是一种3G流媒体的视频编码格式,主要是为了配合3G网络的高传输速度而开发的,也是眼下手机中最为常见的一种视频格式。眼下大部分支持视频拍摄的手机都支持3GP格式的视频播放,其特点是网速占用较少,但画质较差。

7、REAL VIDEO
REAL VIDEO(RA、RAM)格式由一開始就是定位在视频流应用方面的,也能够说是视频流技术的始创者。

它能够在用56K MODEM拨号上网的条件实现不间断的视频播放,当然,其图像质量和MPEG2、DIVX等比是不敢恭维的。

8、MKV
一种后缀为MKV的视频文件频频出如今网络上,它可在一个文件里集成多条不同类型的音轨和字幕轨。

9、FLV
FLV是FLASH VIDEO的简称,FLV流媒体格式是一种新的视频格式。因为它形成的文件极小、载入速度极快,使得网络观看视频文件成为可能。

10、F4V
作为一种更小更清晰,更利于在网络传播的格式,F4V已经逐渐代替了传统FLV,也已经被大多数主流播放器兼容播放 ,而不须要通过转换等复杂的方式。F4V是Adobe公司为了迎接高清时代而推出继FLV格式后的支持H.264的F4V流媒体格式。F4V与FLV的主要差别在于。FLV格式採用的是H263编码。而F4V则支持H.264编码的高清晰视频。码率最高可达50Mbps。

另外。非常多主流媒体站点上下载的F4V文件后缀却为FLV,这是F4V格式的还有一个特点,属正常现象。观看时可明显感觉到这样的实为F4V的FLV有明显更高的清晰度和流畅度。

11、RMVB
RMVB的前身为RM格式,它们是Real NetWorks公司所制定的音频视频压缩规范。依据不同的网络传输速率而制定出不同的压缩比率。从而实如今低速率的网络上进行影像数据实时传送和播放。具有体积小。画质也还不错的长处。RMVB的诞生,打破了原先RM格式那种平均压缩採样的方式。在保证平均压缩比的基础上,採用浮动比特率编码的方式,将较高的比特率用于复杂的动态画面(如歌舞、飞车、战争等),而在静态画面中则灵活地转为较低的採样率,从而合理地利用了比特率资源,使RMVB最大限度地压缩了影片的大小。终于拥有了近乎完美的接近于DVD品质的视听效果。
12、WebM
WebM是由Google提出的一个开放、免费的媒体文件格式。WebM影片格式事实上是以Matroka(即MKV)容器格式为基础开发的新容器格式,里面包含了VP8影片轨和Ogg Vorbis音轨。

FFmpeg基础库编程开发学习笔记——视频常见格式的更多相关文章

  1. FFmpeg基础库编程开发学习笔记——音频常见格式及字幕格式

    声明一下:这些关于ffmpeg的文章仅仅是用于记录我的学习历程和以便于以后查阅,文章中的一些文字可能是直接摘自于其它文章.书籍或者文献,学习ffmpeg相关知识是为了使用在Android上,我也才是刚 ...

  2. Rest API 开发 学习笔记(转)

    Rest API 开发 学习笔记 概述 REST 从资源的角度来观察整个网络,分布在各处的资源由URI确定,而客户端的应用通过URI来获取资源的表示方式.获得这些表徵致使这些应用程序转变了其状态.随着 ...

  3. 步步为营 SharePoint 开发学习笔记系列总结

    转:http://www.cnblogs.com/springyangwc/archive/2011/08/03/2126763.html 概要 为时20多天的sharepoint开发学习笔记系列终于 ...

  4. Kinect开发学习笔记之(一)Kinect介绍和应用

    Kinect开发学习笔记之(一)Kinect介绍和应用 zouxy09@qq.com http://blog.csdn.net/zouxy09 一.Kinect简单介绍 Kinectfor Xbox ...

  5. 转载:使用Xilinx IP核进行PCIE开发学习笔记(一)简介篇

    https://zhuanlan.zhihu.com/p/32786076 最近接触到一个项目,需要使用PCIE协议,项目要求完成一个pcie板卡,最终可以通过电脑进行通信,完成电脑发送的指令.这当中 ...

  6. 【前端】移动端Web开发学习笔记【2】 & flex布局

    上一篇:移动端Web开发学习笔记[1] meta标签 width设置的是layout viewport 的宽度 initial-scale=1.0 自带 width=device-width 最佳实践 ...

  7. 【前端】移动端Web开发学习笔记【1】

    下一篇:移动端Web开发学习笔记[2] Part 1: 两篇重要的博客 有两篇翻译过来的博客值得一看: 两个viewport的故事(第一部分) 两个viewport的故事(第二部分) 这两篇博客探讨了 ...

  8. 驱动开发学习笔记. 0.07 Uboot链接地址 加载地址 和 链接脚本地址

    驱动开发学习笔记. 0.07 Uboot链接地址 加载地址 和 链接脚本地址 最近重新看了乾龙_Heron的<ARM 上电启动及 Uboot 代码分析>(下简称<代码分析>) ...

  9. android开发学习笔记000

    使用书籍:<疯狂android讲义>——李刚著,2011年7月出版 虽然现在已2014,可我挑来跳去,还是以这本书开始我的android之旅吧. “疯狂源自梦想,技术成就辉煌.” 让我这个 ...

随机推荐

  1. Android图片加载框架最全解析(七),实现带进度的Glide图片加载功能

    我们的Glide系列文章终于要进入收尾篇了.从我开始写这个系列的第一篇文章时,我就知道这会是一个很长的系列,只是没有想到竟然会写这么久. 在前面的六篇文章中,我们对Glide的方方面面都进行了学习,包 ...

  2. 操作系统Day1地址空间与地址生成

    1.地址空间分成(1)物理地址空间 (2)逻辑地址空间二者之间的关系:*逻辑地址空间的生成:程序——>汇编-->linker——>loader*物理地址的生成:内存的逻辑地址空间会有 ...

  3. 第二十四章 springboot注入servlet

    问:有了springMVC,为什么还要用servlet?有了servlet3的注解,为什么还要使用ServletRegistrationBean注入的方式? 使用场景:在有些场景下,比如我们要使用hy ...

  4. scala 学习笔记七 基于类型的模式匹配

    1.介绍 Scala 提供了强大的模式匹配机制,应用也非常广泛. 一个模式匹配包含了一系列备选项,每个都开始于关键字 case.每个备选项都包含了一个模式及一到多个表达式.箭头符号 => 隔开了 ...

  5. IE8中伪元素动态作用样式不重绘bug记录

    前阵子对公司框架的前端优化中,使用了字体图标(iconfont)来做模块的图标集,供用户进行配置选择. 字体图标的有非常好的灵活性和复用性,可以像处理文字一样通过font-size进行大小设置.通过c ...

  6. (剑指Offer)面试题60:把二叉树打印成多行

    题目: 从上到下按层打印二叉树,同一层结点从左至右输出.每一层输出一行. 思路: 很明显,采用广度优先遍历来解决,但因为需要按行输出,所以需要判断每一层的开始和结束,因此需要两个变量,一个表示当前层尚 ...

  7. (字符串)最长公共字串(Longest-Common-SubString,LCS)

    题目: 给定两个字符串X,Y,求二者最长的公共子串,例如X=[aaaba],Y=[abaa].二者的最长公共子串为[aba],长度为3. 子序列是不要求连续的,字串必须是连续的. 思路与代码: 1.简 ...

  8. Linux History安全问题【保存记录防止删除】+完善Linux/UNIX审计 将每个shell命令记入日志

    2011-09-27 22:11:51|  分类: rhel5_033|举报|字号 订阅       Linux利用PROMPT_COMMAND实现审计功能 这个系统审计,记录什么用户,在什么时间,做 ...

  9. MSP430F5438 I2C学习笔记——AT24C02

    0.前言 对于大多数单片机来说,I2C成了一个老大难问题.从51时代开始,软件模拟I2C成了主流,甚至到ARMCortex M3大行其道的今天,软件模拟I2C依然是使用最广的方法.虽然软件模拟可以解决 ...

  10. Electron 入门案例1

    1:package.json 通过npm init生成package.json文件,内容如下: { "name": "t02", "version&q ...