视频相关格式笔记

1. 相关概念

  • 视频文件格式:

    简称文件格式,目的是让系统中的应用程序来识别并关联这些文件,让相应的文件由相应的应用程序来打开。

  • 视频封装格式:简称视频格式,相当于一种视频信息的容器。以下是几种封装格式:
    • AVI格式(后缀为.avi):全称:Audio Video INterleaved,即音频视频交错格式。

      • 优点:图像质量好,无损AVI可以保存alpha通道。
      • 缺点:体积过于庞大,压缩标准不统一等问题
    • DV-AVI格式(后缀为.avi):全称为Digital Video Format,数字摄像机就是使用这种格式记录视频数据。它可以通过电脑的IEEE 1394端口传输视频数据到电脑,也可以将电脑编辑好的视频数据回录到数码摄像机中。电视台采用录像带记录模拟信号,通过EDIUS由IEEE 1394端口采集卡从录像带中采集出来的视频就是这种格式。
    • QuickTime File Format格式(后缀为.mov):apple公司开发的一种视频格式。具有较高的压缩比率和较完美的视频清晰度等特点,并可以保存alpha通道。
    • MPEG格式(后缀可以是.mpg,.mpeg,.mpe,.dat,.vob,.asf,.3gp,.mp4等):

      全称为Moving Picture Experts Group,即运动图像专家组格式。是运动图像压缩算法的国际标准。MPEG格式目前有三个压缩标准:MPEG-1,MPEG-2,MPEG-4。其中MPEG-4是为了播放流式媒体的高质量视频而专门设计的,以求使用最少的数据获得最佳的图像质量。

      = WMV格式(后缀为.wmv,.asf):全称为Windows Media Video,微软推出的一种采用独立编码方式并可以直接在网上实时观看视频界面的文件压缩格式。

      优点:本地或网络回放,丰富的流件关系以及扩展性等。

    • Real Video格式(后缀为.rm,.rmvb):Real Networks公司制定的音视频压缩规范称为Real Media。
    • Flash Video格式(后缀为)

      由Adobe Flash延伸出来的一种流行网络视频封装格式。

    • Matroska格式(后缀为.mkv):一种新的多媒体封装格式,可把多种不同编码的视频及16条或以上不同格式的音频和语音不同的字幕封装到一个Matroska Media档内。也是一种开源的多媒体封装格式。

    常用视频格式以及对应文件格式

  • 视频编码格式:简称视频编码,指能够对数字视频进行压缩或进行解压缩(视频解码)的程序或设备,通常这种压缩属于有损格式压缩。也可以指通过特定压缩技术将某种视频格式转换成另一种视频格式。

    常用编码格式有:

    • H.26x系列 包括H.261、H.262、H.263、H.264、H.265

      • H.261:主要在老的视频会议和视频电话产品中使用
      • H.263:主要用在视频会议、视频电话和网络视频上
      • H.264:H.264/MPEG-4第十部分,或称AVC(Advanced Video Coding,高级视频编码),是一种视频压缩标准,一种被广泛使用的高精度视频的录制、压缩和发布格式。
      • H.265:高效率视频编码(High Efficiency Video Coding,简称HEVC),一种视频压缩标准,作为H.264/MPEG-4 AVC的继任者,被认为不仅能提升图像质量,也能达到H.264/MPEG-4 AVC两倍之压缩率,可支持4k分辨率甚至到超高画质电视,最高分辨率可达到8192*4320(8k分辨率)。
    • MPEG系列
      • MPEG-1第二部分
      • MPEG-2第二部分
      • MPEG-4第二部分
      • MPEG-4第十部分
    • 其他系列 AMV,AVS,Bink,CineForm,Cinepak,Dirac,DV,Indeo,Video,Pixlet,RealVideo,RTVideo,SheerVideo,Smacker,Sorenson Video,Theora,VC-1,VP3,VP6

视频编码形式才是一个视频文件的本质所在,不能简单的通过文件格式和封装形式来区分视频。

参考网址:

https://www.zhihu.com/question/20997688/answer/16849641

https://wenku.baidu.com/view/24406ed0240c844769eaee2c.html

2.YUV与RGB

  • YUV:

    Y代表亮度,也就是灰阶值,UV是构成彩色的两个分量,代表色差或色度,描述影像色彩和饱和度,用于指定像素的颜色。在现代彩色电视系统中,通常采用三管彩色摄像机或彩色CCD摄像机进行取像,然后把取得的彩色图像信号经分色、分别放大校正后得到RGB,再经过矩阵变换电路得到亮度信号Y和两个色差信号R-Y(即U)、B-Y(即V),最后发送端将亮度和色差三个信号分别进步编码,用同一信道发送出去。如果只有Y信号分量而没有U、V信号分量,那么这样表示的图像就是黑白灰度图像。彩色电视采用YUV空间正是为了亮度信号Y解决彩色电视机和黑白电视机的相容问题,使黑白电视机也能接受彩色电视机信号。

    优点

    YUV与Rgb相比,最大的优点在于只需要占用极少的频宽(RGB要求三个独立视频信号同时传输)。

    YUV与yCbCr

    • yuv色彩模型来源于rgb模型,特点是将亮度和色度分离开。用于模拟彩色电视广播的基本颜色模型。
    • yCbCr模型来源于yuv模型:yCbCr is a scaled and offset version of the YUV color space
  • RGB:

    RGB色彩模式是工业界的一种颜色标准,是显示器通常使用的格式。在RGB颜色空间中,红、绿、蓝是基本元素。

  • YUV<->RGB:
    Y = 0.299 R + 0.587 G + 0.114 B
    U = -0.1687 R - 0.3312 G + 0.5 B+128
    v = 0.5 R - 0.4187 G - 0.0813 B +128
    
    R = Y + 1.772(U - 128)
    G = Y - 0.34414(U - 128) - 0.71414(V-128)
    B = Y + 1.772(U - 128)
  • yCbCr<->RGB:
    Y’ = 0.257*R‘ + 0.504*G‘ + 0.098*B‘ + 16
    Cb‘ = -0.148*R‘ - 0.291*G‘ + 0.439*B‘ + 128
    
    Cr‘ = 0.439*R‘ - 0.368*G‘ - 0.071*B‘ + 128
    R‘ = 1.164*(Y’-16) + 1.596*(Cr‘-128)
    G‘ = 1.164*(Y’-16) - 0.813*(Cr‘-128) - 0.392*(Cb‘-128)
    B‘ = 1.164*(Y’-16) + 2.017*(Cb‘-128)

参考网页:

http://blog.csdn.net/melody_lu123/article/details/7772633

http://blog.csdn.net/Melody_lu123/article/details/8725221

原文地址:https://www.cnblogs.com/libertycode/p/8421415.html

时间: 2024-11-14 11:02:10

视频相关格式笔记的相关文章

FFmpeg基础库编程开发学习笔记——视频常见格式

声明一下:这些关于ffmpeg的文章仅仅是用于记录我的学习历程和以便于以后查阅,文章中的一些文字可能是直接摘自于其它文章.书籍或者文献,学习ffmpeg相关知识是为了使用在Android上,我也才是刚開始接触学习,如有不正确之处还请指出. 视频格式能够分为适合本地播放的本地影像视频和适合在网络中播放的网络流媒体影像视频两大类.虽然后者在播放的稳定性和播放画面质量上可能没有前者优秀.但网络流媒体影像视频的广泛传播性使之正被广泛应用于视频点播.网络演示.远程教育.网络视频广告等等互联网信息服务领域.

FLV视频封装格式详解

Overview Flash Video(简称FLV),是一种流行的网络格式.目前国内外大部分视频分享网站都是采用的这种格式. File Structure 从整个文件上开看,FLV是由The FLV header 和 The FLV File Body 组成. 1.The FLV header Field Type Comment Signature UI8 Signature byte always 'F' (0x46) Signature UI8 Signature byte always

视频相关术语【转】

转自:http://blog.csdn.net/qfnu08zzr/article/details/6763150 版权声明:本文为博主原创文章,未经博主允许不得转载. AAC AAC全称高级音频编码(Advanced Audio Coding),将是 AC3 音频编码的替代者.在AC3基础上,AAC从多方面对其进行了改进.(不过)当前的播放器和硬件对于这种即将到来的音频格式支持仍旧十分有限. Authentication 认证 在一部电影能够播放以前,播放器和碟片之间必须建立一种它们能在其中彼

【转】FLV视频封装格式详解

Overview Flash Video(简称FLV),是一种流行的网络格式.目前国内外大部分视频分享网站都是采用的这种格式. File Structure 从整个文件上开看,FLV是由The FLV header 和 The FLV File Body 组成. 1.The FLV header Field Type Comment Signature UI8 Signature byte always 'F' (0x46) Signature UI8 Signature byte always

《深入Linux内核架构》附录A&lt;体系结构相关知识&gt;笔记

A.1 概述 为便于扩展到新的体系结构,内核严格隔离了体系结构相关和体系结构无关的代码.内核中特定于处理器的部分,包含定义和原型的头文件保存在include/asm-arch/(例如,include/asm-arm/)目录下,而C语言和汇编程序源代码实现则保存在arch/arch/(例如,arch/arm/)目录下. 联编系统也考虑到一般代码可能需要借助于特定于体系结构的机制.所有特定于处理器的头文件都位于include/asm-arch/.在内核配置为特定的体系结构之后,则建立符号链接incl

转: 视频相关的协议族介绍(rtsp, hls, rtmp)

转自: http://www.zhihu.com/question/20621558 作者:杨华链接:http://www.zhihu.com/question/20621558/answer/15661190来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 作为自己的专业知识领域,我决定更新本答案.版权保留,不得商用,转载必须在开始位置注明作者.出处.凭借印象完成,错漏地方,还请大家指正.----视频相关的协议有很多,不同的公司,甚至有自己的协议标准.本文尽量涵盖

利用FFmpeg将Jpeg图片转为任意视频容器格式

在一些嵌入式系统中,视频以jpeg图像格式传出来,而且数据量非常大.这种情况下如果要对jpeg图像进行解码并且重新编码成264之类的格式再放入视频容器中会消耗大量的CPU资源,若不是性能特别犀利的CPU是无法承受的,这个时候有一个折衷的办法,就是直接将jpeg连续保存起来(也就是保存成mjpeg视频格式),然后直接放入视频容器中. 这个方面的代码实现网上资料比较少,可以说几乎没有,基本都是直接用FFmpeg的命令行来实现的,这一方法虽然可行但毕竟不太适合软件的集成,是故本人做了些研究,并将代码放

转 音视频封装格式、编码格式知识

常见的AVI.RMVB.MKV.ASF.WMV.MP4.3GP.FLV等文件其实只能算是一种封装标准. 一个完整的视频文件是由音频和视频2部分组成的.H264.Xvid等就是视频编码格式,MP3.AAC等就是音频编码格式. 例如:将一个Xvid视频编码文件和一个MP3音频编码文件按AVI封装标准封装以后,就得到一个AVI后缀的视频文件,这个就是我们常见的AVI视频文件了. 由于很多种视频编码文件.音频编码文件都符合AVI封装要求,则意味着即使是AVI后缀,也可能里面的具体编码格式不同.因此出现在

黑马程序员---Objective-C基础学习---类、对象、方法相关知识笔记

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 类.对象.方法相关知识笔记 Objective-C相对于C语言有了面向对象的特性,但是ObjC又没有其他面向对象语言那么多语法特性,ObjC本身对面向对象进行了精简.下面是一些相关知识笔记. 类定义 成员变量 方法和属性 self关键字 类定义 在C#.Java等其他高级语言中定义一个类是相当简单点的,直接一个关键字class加一对大括号基本就完成了,但是在ObjC中类的定义相对变化比较大.现