声明一下:这些关于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. 解决Arcgis10.2.2中dbf文件用EXCEL打开乱码问题

    1.开始 -- 运行,输入”Regedit“,打开 注册表 . 2.如是用的是 10.x 版本 ArcGIS Desktop,定位到 ‘计算机\HKEY_CURRENT_USER\Software\E ...

  2. 【elaseticsearch】elaseticsearch启动报错Caused by: org.elasticsearch.transport.BindTransportException: Failed to bind to [9300-9400]

    elaseticsearch启动报错 [es1] uncaught exception in thread [main] org.elasticsearch.bootstrap.StartupExce ...

  3. JDBC连接oracle RAC数据库配置

    RAC的配置如下: node1:ip地址192.168.60.132,实例名:rac1,主机名:rac1 node2:ip地址192.168.60.144,实例名:rac2,主机名:rac2 RAC服 ...

  4. Oracle通用分页存储过程的创建与使用

    Oracle通用分页存储过程的创建与使用 1.创建Oracle包的定义.使用 REF CURSOR 数据类型来处理 Oracle 结果集.REF CURSOR 是一个指向 PL/SQL 查询所返回的结 ...

  5. [Android Pro] Android源码编译之Nexus5真机编译

    reference to : http://blog.csdn.net/liu1075538266/article/details/51272398 1.   前言 在Android安全的研究工作中, ...

  6. Python的开源人脸识别库:离线识别率高达99.38%

    Python的开源人脸识别库:离线识别率高达99.38%   github源码:https://github.com/ageitgey/face_recognition#face-recognitio ...

  7. Word Break leetcode java

    题目: Given a string s and a dictionary of words dict, determine if s can be segmented into a space-se ...

  8. 适配 通知 Notification 通知渠道 前台服务 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  9. Android -- MeasureSpec

    自定义控件都会去重写View的onMeasure方法,因为该方法指定该控件在屏幕上的大小. protected void onMeasure (int widthMeasureSpec, int he ...

  10. Android -- uses-sdk:minSdkVersion 10 cannot be smaller than version L declared in library com.android.support:appcompat-v7:21.0.0-rc1

    这是一个报错,是我在Android Studio上添加完Support-v4和v7包之后爆出的错误,百度了好久也没有百度到.当时我的项目有minSdkVersion 19. 设置版本最小为L的时候也会 ...