至于视频的一部分概念,关于录像的一对定义

著作先发自:关于视频的有的定义

著作先发自:关于摄像的一部分概念

视频相关概念

录像相关概念

视频文件格式

文件格式那多少个定义应该是我们相比较熟识的,比如大家广大的 Word
文档的文件格式是 .doc,JPG 图片的文件格式是 .jpg
等等。这对于摄像来说,我们广大的文件格式则有:.mov.avi.mpg.vob.mkv.rm.rmvb
等等。文件格式平常表现为文件在操作系统上囤积时的后缀名,它一般会被操作系统用来与相应的开辟程序关联,比如您双击一个
test.doc 文件,系统会调用 Word 去开辟它。你双击一个 test.avi 或者
test.mkv 系统会调用录像播放器去开拓它。

同等是视频,为何会有 .mov.avi.mpg
等等这么多种文件格式呢?这是因为它们通过不同的方法实现了视频这件工作,至于这一个不同在什么地方,这就需要精晓一下接下去要说的「视频封装格式」这一个定义了。

视频文件格式

文件格式那么些定义应该是大家相比较熟谙的,比如大家常见的 Word
文档的文件格式是 .doc,JPG 图片的文件格式是 .jpg
等等。这对于视频来说,大家广阔的文件格式则有:.mov.avi.mpg.vob.mkv.rm.rmvb
等等。文件格式平时表现为文件在操作系统上囤积时的后缀名,它通常会被操作系统用来与相应的开拓程序关联,比如您双击一个
test.doc 文件,系统会调用 Word 去开辟它。你双击一个 test.avi 或者
test.mkv 系统会调用录像播放器去开拓它。

同等是录像,为何会有 .mov.avi.mpg
等等这么多种文件格式呢?这是因为它们经过不同的法子实现了视频这件工作,至于那多少个不同在什么地方,那就需要掌握一下接下去要说的「视频封装格式」这一个概念了。

视频封装格式

视频封装格式,简称视频格式,相当于一种储存视频音信的器皿,它里面富含了打包视频文件所急需的录像音讯、音频消息和连锁的布局音信(比如:录像和旋律的涉及信息、咋样解码等等)。一种视频封装格式的一向反映就是对应着相应的视频文件格式。

图片 1

上边我们就罗列部分文书封装格式:

  • AVI 格式,对应的文件格式为 .avi,英文全称 Audio Video
    Interleaved,是由 Microsoft 集团于 1992
    年推出。这种视频格式的优点是图像质地好,无损 AVI 可以保留 alpha
    通道。缺点是体积过于庞大,并且压缩正式不联合,存在较多的轻重版本兼容问题。
  • DV-AVI 格式,对应的文件格式为 .avi,英文全称 Digital Video
    Format,是由Sony、松下、JVC等多家厂商联合提议的一种家用数字视频格式。常见的多寡录像机就是采用这种格式记录视频数据的。它可以透过总结机的
    IEEE 1394
    端口传输录像数据到电脑,也足以将统计机中编辑好的的视频数据回录到数码视频机中。
  • WMV 格式,对应的文件格式是 .wmv.asf,英文全称 Windows
    Media
    Video,是微软推出的一种选取独立编码格局并且可以直接在网上实时看到视频节目标文书压缩格式。在平等录像质料下,WMV
    格式的公文能够边下载边播放,因而很符合在网上播放和传导。
  • MPEG 格式,对应的文件格式有
    .mpg.mpeg.mpe.dat.vob.asf.3gp.mp4
    等等,英文全称 Moving Picture Experts
    Group,是由活动图像专家组制定的视频格式,该专家组于 1988
    年组建,专门负责视频和韵律标准制定,其成员都是录像、音频以及系统领域的技能专家。MPEG
    格式近日有两个压缩正式,分别是 MPEG-1、MPEG-2、和 MPEG-4。MPEG-4
    是明天用的可比多的视频封装格式,它为了播放流式媒体的高质料视频而专门设计的,以求使用最少的多少得到最佳的图像质料。
  • Matroska 格式,对应的文件格式是 .mkv,Matroska
    是一种新的视频封装格式,它可将多种不同编码的视频及 16
    条以上不同格式的节奏和不同语言的字幕流封装到一个 Matroska Media
    文件当中。
  • Real Video 格式,对应的文件格式是 .rm.rmvb,是 Real
    Networks 公司所制定的音频录像压缩正式称为 Real Media。用户可以动用
    RealPlayer
    按照不同的网络传输速率制定出不同的压缩比率,从而实现在低速率的网络上拓展映像数据实时传送和播音。
  • QuickTime File Format 格式,对应的文件格式是 .mov,是 Apple
    公司开发的一种视频格式,默认的播放器是苹果的
    Quick提姆(Tim)e。这种封装格式具有较高的压缩比率和较周全的视频清晰度等特色,并得以保存
    alpha 通道。
  • Flash Video 格式,对应的文件格式是 .flv,是由 Adobe Flash
    延伸出来的一种网络视频封装格式。这种格式被很多录像网站所使用。

从地点的牵线中,我们大体对视频文件格式以及相应的视频封装模式有了一个概念,接下去则需要领悟一下关于视频更精神的东西,这就是录像编解码。

录像封装格式

视频封装格式,简称录像格式,约等于一种储存录像音信的器皿,它其中包含了打包摄像文件所急需的录像信息、音频音讯和相关的布置信息(比如:录像和旋律的关联消息、怎样解码等等)。一种录像封装格式的直白反映就是对应着相应的视频文件格式。

图片 2

上边大家就罗列部分文件封装格式:

  • AVI 格式,对应的文件格式为 .avi,英文全称 Audio Video
    Interleaved,是由 Microsoft 集团于 1992
    年推出。这种视频格式的助益是图像质地好,无损 AVI 可以保存 alpha
    通道。缺点是体积过于庞大,并且压缩正式不合并,存在较多的音量版本兼容问题。
  • DV-AVI 格式,对应的文件格式为 .avi,英文全称 Digital Video
    Format,是由Sony、松下、魔磁等多家厂商联合提出的一种家用数字视频格式。常见的数额录像机就是采纳那种格式记录录像数据的。它可以通过总计机的
    IEEE 1394
    端口传输视频数据到电脑,也得以将电脑中编辑好的的视频数据回录到多少录像机中。
  • WMV 格式,对应的文件格式是 .wmv.asf,英文全称 Windows
    Media
    Video,是微软推出的一种拔取独立编码情势并且可以直接在网上实时看到视频节目的公文压缩格式。在相同视频质地下,WMV
    格式的文书可以边下载边播放,由此很适合在网上播放和传导。
  • MPEG 格式,对应的文件格式有
    .mpg.mpeg.mpe.dat.vob.asf.3gp.mp4
    等等,英文全称 Moving Picture Experts
    Group,是由活动图像专家组制定的视频格式,该专家组于 1988
    年组建,专门负责录像和韵律标准制定,其成员都是视频、音频以及系统领域的技艺专家。MPEG
    格式近来有两个缩减正式,分别是 MPEG-1、MPEG-2、和 MPEG-4。MPEG-4
    是前几日用的可比多的视频封装格式,它为了播放流式媒体的高质料视频而特别规划的,以求使用最少的数码得到最佳的图像质地。
  • Matroska 格式,对应的文件格式是 .mkv,Matroska
    是一种新的视频封装格式,它可将多种不同编码的视频及 16
    条以上不同格式的节拍和不同语言的字幕流封装到一个 Matroska Media
    文件当中。
  • Real Video 格式,对应的文件格式是 .rm.rmvb,是 Real
    Networks 集团所制定的音频录像压缩正式称为 Real Media。用户可以动用
    RealPlayer
    依据不同的网络传输速率制定出不同的压缩比率,从而实现在低速率的网络上进展映像数据实时传送和播音。
  • QuickTime File Format 格式,对应的文件格式是 .mov,是 Apple
    集团开支的一种视频格式,默认的播放器是苹果的
    Quick提姆e。这种封装格式具有较高的压缩比率和较完善的录像清晰度等特征,并得以保存
    alpha 通道。
  • Flash Video 格式,对应的文件格式是 .flv,是由 Adobe Flash
    延伸出来的一种网络视频封装格式。那种格式被广大视频网站所采取。

从地方的牵线中,我们大体对录像文件格式以及相应的录像封装模式有了一个概念,接下去则需要了然一下关于录像更本质的东西,这就是视频编解码。

视频编解码情势

视频编解码的历程是指对数字视频举行压缩或解压缩的一个进程。

在做视频编解码时,需要考虑以下那些元素的平衡:视频的质料、用来代表视频所急需的数据量(通常称之为码率)、编码算法和解码算法的复杂度、针对数据丢失和谬误的鲁棒性(罗布ustness)、编辑的方便性、随机访问、编码算法设计的完美性、端到端的延时以及其他一些元素。

大规模的视频编码情势有:

  • H.26X
    系列
    ,由国际电传视讯联盟远程通信标准化协会(ITU-T)主导,包括
    H.261H.262H.263H.264H.265

    • H.261,重要用于老的视频会议和录像电话系统。是率先个利用的数字录像压缩正式。实质上说,之后的具备的正规视频编解码器都是依照它设计的。
    • H.262,等同于 MPEG-2 第二部分,使用在 DVD、SVCD
      和大部分数字视频广播系统和无线分布系统中。
    • H.263,紧要用来视频会议、视频电话和网络录像相关产品。在对逐行扫描的录像源举行压缩的方面,H.263
      比它从前的视频编码标准在性质上有了较大的提高。尤其是在低码率端,它可以在保证一定质料的前提下大大的节约码率。
    • H.264,等同于 MPEG-4 第十部分,也被誉为高级视频编码(Advanced
      Video Coding,简称
      AVC),是一种视频压缩标准,一种被周边运用的高精度录像的录制、压缩和发表格式。该专业引入了一密密麻麻新的可以大大提升压缩性能的技巧,并可以同时在高码率端和低码率端大大超越此前的诸标准。
    • H.265,被喻为高效能视频编码(High Efficiency Video Coding,简称
      HEVC)是一种录像压缩标准,是 H.264 的后人。HEVC
      被认为不但荣升图像质量,同时也能达到 H.264
      两倍的压缩率(等同于同样画面质地下比特率缩短了 50%),可支撑 4K
      分辨率甚至到超高画质电视机,最高分辨率可高达 8192×4320(8K
      分辨率),这是眼前进步的动向。
  • MPEG
    系列
    ,由国际标准社团单位(ISO)下属的运动图象专家组(MPEG)开发。

    • MPEG-1 第二部分,首要使用在 VCD
      上,有些在线录像也应用这种格式。该编解码器的质量大约上和原始的
      VHS 视频带卓殊。
    • MPEG-2 第二部分,等同于 H.262,使用在 DVD、SVCD
      和大多数数字视频广播系统和无线分布系统中。
    • MPEG-4 第二部分,可以利用在网络传输、广播和传媒存储上。比起
      MPEG-2 第二部分和率先版的 H.263,它的收缩性能有所提升。
    • MPEG-4 第十部分,等同于
      H.264,是那六个编码协会合作诞生的正儿八经。
  • 另外,AMV、AVS、Bink、CineForm 等等,这里就不做多的介绍了。

介绍了上边这么些「录像编解码形式」后,大家来说说它和上一节讲的「视频封装格式」的涉及。可以把「摄像封装格式」看做是一个装着录像、音频、「录像编解码情势」等音讯的器皿。一种「视频封装格式」可以支撑多种「视频编解码形式」,比如:Quick提姆e
File Format(.MOV) 帮忙几乎所有的「录像编解码形式」,MPEG(.MP4)
也襄助非凡广的「录像编解码情势」。当大家看到一个视频文件名为 test.mov
时,我们可以领略它的「视频文件格式」是
.mov,也可以领会它的视频封装格式是
QuickTime File Format,不过力不从心情解它的「录像编解码格局」。这相比较标准的说教也许是以
A/B 这种形式,A 是「视频编解码格局」,B 是「视频封装格式」。比如:一个
H.264/MOV 的视频文件,它的包裹模式就是 Quick提姆(Tim)e File Format,编码格局是
H.264。

摄像编解码形式

视频编解码的进程是指对数字录像进行压缩或解压缩的一个历程。

在做录像编解码时,需要考虑以下这么些要素的平衡:视频的身分、用来代表视频所急需的数据量(平日称之为码率)、编码算法和解码算法的复杂度、针对数据丢失和不当的鲁棒性(罗布ustness)、编辑的方便性、随机访问、编码算法设计的完美性、端到端的延时以及此外一些要素。

普遍的视频编码形式有:

  • H.26X
    系列
    ,由国际电传视讯联盟远程通信标准化协会(ITU-T)主导,包括
    H.261H.262H.263H.264H.265

    • H.261,首要用于老的录像会议和视频电话系统。是率先个应用的数字视频压缩正式。实质上说,之后的有所的正经视频编解码器都是按照它设计的。
    • H.262,等同于 MPEG-2 第二部分,使用在 DVD、SVCD
      和多数数字视频广播系统和无线分布系统中。
    • H.263,紧要用于录像会议、录像电话和网络录像相关产品。在对逐行扫描的录像源举办削减的地点,H.263
      比它此前的视频编码标准在性质上有了较大的提拔。尤其是在低码率端,它可以在担保一定质地的前提下大大的节约码率。
    • H.264,等同于 MPEG-4 第十部分,也被称作高级视频编码(Advanced
      Video Coding,简称
      AVC),是一种录像压缩标准,一种被大面积选取的高精度录像的录制、压缩和颁布格式。该标准引入了一名目繁多新的可以大大提升压缩性能的技能,并可以同时在高码率端和低码率端大大超越往日的诸标准。
    • H.265,被号称高效率录像编码(High Efficiency Video Coding,简称
      HEVC)是一种视频压缩标准,是 H.264 的后代。HEVC
      被认为不但提高图像质地,同时也能落得 H.264
      两倍的压缩率(等同于同样画面质料下比特率裁减了 50%),可支撑 4K
      分辨率甚至到超高画质电视,最高分辨率可达到 8192×4320(8K
      分辨率),这是当下向上的势头。
  • MPEG
    系列
    ,由国际标准社团机关(ISO)下属的位移图象专家组(MPEG)开发。

    • MPEG-1 第二部分,主要采纳在 VCD
      上,有些在线录像也利用这种格式。该编解码器的质量大约上和原有的
      VHS 视频带至极。
    • MPEG-2 第二部分,等同于 H.262,使用在 DVD、SVCD
      和大部分数字录像广播系统和无线分布系统中。
    • MPEG-4 第二部分,可以选取在网络传输、广播和媒体存储上。比起
      MPEG-2 第二部分和率先版的 H.263,它的缩减性能有所提高。
    • MPEG-4 第十部分,等同于
      H.264,是这多少个编码社团合作诞生的正儿八经。
  • 此外,AMV、AVS、Bink、CineForm 等等,这里就不做多的牵线了。

介绍了地方这个「视频编解码情势」后,我们的话说它和上一节讲的「视频封装格式」的关联。可以把「视频封装格式」看做是一个装着视频、音频、「视频编解码情势」等音讯的器皿。一种「视频封装格式」可以匡助多种「视频编解码格局」,比如:Quick提姆e
File Format(.MOV) 帮忙几乎拥有的「摄像编解码格局」,MPEG(.MP4)
也支撑分外广的「录像编解码格局」。当我们看来一个视频文件名为 test.mov
时,我们得以理解它的「录像文件格式」是
.mov,也得以领会它的视频封装格式是
QuickTime File Format,可是不可以知道它的「录像编解码模式」。这相比正规的传教或者是以
A/B 那种办法,A 是「视频编解码情势」,B 是「录像封装格式」。比如:一个
H.264/MOV 的视频文件,它的包装格局就是 Quick提姆(Tim)e File Format,编码情势是
H.264。

旋律编解码形式

视频中除了画面日常还有声音,所以这就关系到点子编解码。在视频中不时利用的节奏编码情势有:

  • AAC,英文全称 Advanced Audio Coding,是由 Fraunhofer
    IIS、杜比实验室、AT&T、Sony等店铺共同开发,在 1997 年推出的基于
    MPEG-2 的旋律编码技术。2000 年,MPEG-4 标准出现后,AAC
    重新合并了其性状,参加了 SBR 技术和 PS 技术,为了区别于传统的 MPEG-2
    AAC 又称为 MPEG-4 AAC。
  • MP3,英文全称 MPEG-1 or MPEG-2 Audio Layer
    III,是当已经相当流行的一种数字音频编码和有损压缩格式,它被规划来大幅下挫音频数据量。它是在
    1991 年,由位于德意志联邦共和国埃尔朗根的钻研集体 Fraunhofer-Gesellschaft
    的一组工程师发明和规格的。MP3
    的普及,曾对音乐产业造成巨大的相撞与影响。
  • WMA,英文全称 Windows Media
    Audio,由微软公司开发的一种数字音频压缩格式,本身包括有损和无害压缩格式。

旋律编解码情势

录像中除去画面平时还有声音,所以这就提到到点子编解码。在视频中时时拔取的韵律编码情势有:

  • AAC,英文全称 Advanced Audio Coding,是由 Fraunhofer
    IIS、杜比实验室、AT&T、Sony等公司共同开发,在 1997 年出产的依照MPEG-2 的节拍编码技术。2000 年,MPEG-4 标准出现后,AAC
    重新合并了其特性,参加了 SBR 技术和 PS 技术,为了区别于传统的 MPEG-2
    AAC 又称作 MPEG-4 AAC。
  • MP3,英文全称 MPEG-1 or MPEG-2 Audio Layer
    III,是当已经非常流行的一种数字音频编码和有损压缩格式,它被规划来大幅下滑音频数据量。它是在
    1991 年,由位于德意志联邦共和国埃尔朗根的探究团体 Fraunhofer-Gesellschaft
    的一组工程师发明和规则的。MP3
    的推广,曾对音乐产业造成极大的冲击与影响。
  • WMA,英文全称 Windows Media
    Audio,由微软集团开支的一种数字音频压缩格式,本身包括有损和无害压缩格式。

关于 H.264

关于 H.264

概念

H.264 是现行常见应用的一种编码情势。关于 H.264
相关的定义,从大到小排序依次是:体系、图像、片组、片、NALU、宏块、亚宏块、块、像素。

大家先来解释几个概念:

  • 图像。H.264
    中,「图像」是个聚众的概念,帧、顶场、底场都得以叫做图像。一帧家常就是一幅完整的图像。当采访视频信号时,假设使用逐行扫描,则每趟扫描得到的信号就是一副图像,也就是一帧。当采访录像信号时,假如利用隔行扫描(奇、偶数行),则扫描下来的一帧图像就被分成了六个部分,这每一有的就称为「场」,依照程序分为:「顶场」和「底场」。「帧」和「场」的概念又带来了不同的编码形式:帧编码、场编码。逐行扫描适合于移动图像,所以对于移动图像接纳帧编码更好;隔行扫描适合于非活动图像,所以对于非运动图像采纳场编码更好。

图片 3

图片 4

图片 5

  • 片(Slice),每一帧图像能够分成三个片。

  • 网络提取层单元(NALU, Network Abstraction Layer Unit),NALU
    是用来将编码的数量举行包装的,一个分片(Slice)可以编码到一个 NALU
    单元。但是一个 NALU
    单元中除了容纳分片(Slice)编码的码流外,还足以兼容其他数据,比如体系参数集
    SPS。对于客户端其关键任务则是接到数据包,从数额包中解析出 NALU
    单元,然后开展解码播放。

  • 宏块(Macroblock),分片是由宏块组成。

概念

H.264 是当今大面积运用的一种编码情势。关于 H.264
相关的定义,从大到小排序依次是:体系、图像、片组、片、NALU、宏块、亚宏块、块、像素。

咱俩先来解释多少个概念:

  • 图像。H.264
    中,「图像」是个汇集的定义,帧、顶场、底场都得以称为图像。一帧家常就是一幅完整的图像。当采访视频信号时,假使拔取逐行扫描,则每一趟扫描拿到的信号就是一副图像,也就是一帧。当采访录像信号时,假诺拔取隔行扫描(奇、偶数行),则扫描下来的一帧图像就被分为了五个部分,这每一局部就叫做「场」,按照程序分为:「顶场」和「底场」。「帧」和「场」的定义又带动了不同的编码格局:帧编码、场编码。逐行扫描适合于活动图像,所以对于移动图像拔取帧编码更好;隔行扫描适合于非活动图像,所以对于非运动图像拔取场编码更好。

图片 6

图片 7

图片 8

  • 片(Slice),每一帧图像可以分为多少个片。

  • 网络提取层单元(NALU, Network Abstraction Layer Unit),NALU
    是用来将编码的数码举办包装的,一个分片(Slice)可以编码到一个 NALU
    单元。可是一个 NALU
    单元中除了容纳分片(Slice)编码的码流外,还足以兼容其他数据,比如连串参数集
    SPS。对于客户端其首要任务则是收取数据包,从数量包中解析出 NALU
    单元,然后举办解码播放。

  • 宏块(Macroblock),分片是由宏块组成。

颜色模型

咱俩听过最多的颜料模型应该就是经典的 RGB 模型了。

图片 9

在 RGB 模型中每种颜色需要 3 个数字,分别表示 R、G、B,比如 (255, 0, 0)
表示黄色,平时一个数字占用 1 字节,那么表示一种颜色需要 24
bits。那么有没有更神速的颜色模型可以用更少的 bit 来代表颜色吗?

前几天大家如若我们定义一个「亮度(Luminance)」的概念来代表颜色的亮度,这它就可以用含
R、G、B 的表明式表示为:

Y = kr*R + kg*G + kb*B

Y 即「亮度」,kr、kg、kb 即 R、G、B 的权重值。

这儿,大家能够定义一个「色度(Chrominance)」的概念来表示颜色的差异:

Cr = R – Y
Cg = G – Y
Cb = B – Y

Cr、Cg、Cb 分别代表在 R、G、B 上的色度分量。上述模型就是 YCbCr
颜色模型基本原理。

YCbCr 是属于 YUV
家族的一员,是在统计机连串中应用最为广泛的颜料模型,就比如在本文所讲的视频领域。在
YUV 中 Y 表示的是「亮度」,也就是灰阶值,U 和 V 则是象征「色度」。YUV
的最首假诺在乎它的亮度信号 Y 和色度信号 U、V 是分离的。这就是说即便唯有 Y
信号分量而尚未 U、V
分量,大家依旧可以象征出图像,只可是图像是黑白灰度图像。
在YCbCr 中 Y
是指亮度分量,Cb 指粉色色度分量,而 Cr 指红色色度分量。

前些天我们从 ITU-R BT.601-7 标准中得到推介的相关全面,就足以博得 YCbCr 与
RGB 相互转换的公式:

Y = 0.299R + 0.587G + 0.114B
Cb = 0.564(B - Y)
Cr = 0.713(R - Y)
R = Y + 1.402Cr
G = Y - 0.344Cb - 0.714Cr
B = Y + 1.772Cb

这么对于 YCbCr 这一个颜色模型我们就有个开头认识了,然而我们会发觉,这里
YCbCr 也依然用了 3 个数字来代表颜色啊,有节省 bit
吗?为了应对这么些题材,我们来构成录像中的图像和图像中的像素表示来证实。

图形是由接近下面的像素组成:

图片 10

一副图片就是一个像素阵列:

图片 11

上图中,每个像素的 3 个轻重的信息是完整的,YCbCr 4:4:4。

图片 12

上图中,对于每个像素点都封存「亮度」值,可是简单每行中偶素位像素点的「色度」值,从而省去了
bit。

图片 13

上图中,做了更多的简便,不过对图纸质地的熏陶却不会太大。

对于更细节的情节,可以查询与 YCbCr 4:2:0、YCbCr 4:2:2、YCbCr 4:1:1 和
YCbCr 4:4:4 有关的学问。

颜色模型

我们听过最多的颜色模型应该就是经典的 RGB 模型了。

图片 14

在 RGB 模型中每种颜色需要 3 个数字,分别表示 R、G、B,比如 (255, 0, 0)
表示肉色,通常一个数字占用 1 字节,那么表示一种颜色需要 24
bits。那么有没有更疾速的水彩模型可以用更少的 bit 来代表颜色吗?

现今我们只要大家定义一个「亮度(Luminance)」的定义来表示颜色的亮度,这它就足以用含
R、G、B 的表明式表示为:

Y = kr*R + kg*G + kb*B

Y 即「亮度」,kr、kg、kb 即 R、G、B 的权重值。

此刻,我们得以定义一个「色度(Chrominance)」的定义来表示颜色的歧异:

Cr = R – Y
Cg = G – Y
Cb = B – Y

Cr、Cg、Cb 分别代表在 R、G、B 上的色度分量。上述模型就是 YCbCr
颜色模型基本原理。

YCbCr 是属于 YUV
家族的一员,是在电脑序列中利用最为常见的水彩模型,就比如在本文所讲的视频领域。在
YUV 中 Y 表示的是「亮度」,也就是灰阶值,U 和 V 则是表示「色度」。YUV
的要紧是在于它的亮度信号 Y 和色度信号 U、V 是分手的。这就是说尽管唯有 Y
信号分量而尚未 U、V
分量,大家依然可以象征出图像,只可是图像是黑白灰度图像。
在YCbCr 中 Y
是指亮度分量,Cb 指粉红色色度分量,而 Cr 指褐色色度分量。

前几天我们从 ITU-R BT.601-7 标准中得到推介的相关周全,就足以获取 YCbCr 与
RGB 相互转换的公式:

Y = 0.299R + 0.587G + 0.114B
Cb = 0.564(B - Y)
Cr = 0.713(R - Y)
R = Y + 1.402Cr
G = Y - 0.344Cb - 0.714Cr
B = Y + 1.772Cb

这么对于 YCbCr 这一个颜色模型大家就有个先导认识了,可是咱们会发现,这里
YCbCr 也依然用了 3 个数字来代表颜色啊,有节省 bit
吗?为了应对这些题材,我们来整合视频中的图像和图像中的像素表示来表明。

图形是由接近下面的像素组成:

图片 15

一副图片就是一个像素阵列:

图片 16

上图中,每个像素的 3 个轻重的音讯是共同体的,YCbCr 4:4:4。

图片 17

上图中,对于每个像素点都封存「亮度」值,但是简单每行中偶素位像素点的「色度」值,从而节省了
bit。

图片 18

上图中,做了更多的简易,然而对图片质料的影响却不会太大。

对此更细节的情节,可以查询与 YCbCr 4:2:0、YCbCr 4:2:2、YCbCr 4:1:1 和
YCbCr 4:4:4 连锁的学识。

码流格式

在上节中,大家简要的牵线了和 H.264
编码相关的图纸、像素以及颜色模型相关的定义,这这一节就接着简要介绍一下
H.264 码流的社团,以及哪些从 H.264 的码流中找到这么些像素。

对于一个解码器来说,它的做事目的就是从一个一定协会的数据流中去取得实惠的
bit 流,而那么些数目流则是结构化后分为数据包传输的,其大概结构如下:

图片 19

大家可以看来,在 NAL 包之间存在着有些间距标记。

NAL 包的率先个字节是概念包类型的头文件,NAL 包有诸如此类一些项目:

类型 定义
0 Undefined
1 Slice layer without partitioning non IDR
2 Slice data partition A layer
3 Slice data partition B layer
4 Slice data partition C layer
5 Slice layer without partitioning IDR
6 Additional information (SEI)
7 Sequence parameter set
8 Picture parameter set
9 Access unit delimiter
10 End of sequence
11 End of stream
12 Filler data
13..23 Reserved
24..31 Undefined

NAL 的品类说明了当前这多少个 NAL
包的数据结构和数码含义,它或许是片(Slice),参数集或者填充数据等等。

图片 20

如上图所示,NAL 包将其负载数据存储在 RBSP(Raw Byte Sequence Payload)
中,RBSP 是一名目繁多的 SODB(String Of Data Bits)。

图片 21

下边,大家来具体看看 H.264 的码流结构:

图片 22

一张图纸可以分包一个或六个分片(Slice),而每一个分片(Slice)又会被分为了若干宏块(Macroblock)。对于分片(Slice)来说,有如下那多少个项目:

类型 定义
0 P-slice. Consists of P-macroblocks (each macro block is predicted using one reference frame) and / or I-macroblocks.
1 B-slice. Consists of B-macroblocks (each macroblock is predicted using one or two reference frames) and / or I-macroblocks.
2 I-slice. Contains only I-macroblocks. Each macroblock is predicted from previously coded blocks of the same slice.
3 SP-slice. Consists of P and / or I-macroblocks and lets you switch between encoded streams.
4 SI-slice. It consists of a special type of SI-macroblocks and lets you switch between encoded streams.
5 P-slice.
6 B-slice.
7 I-slice.
8 SP-slice.
9 SI-slice.

如我辈所见,每个分片也隐含着头和多少两局部,分片头中涵盖着分片类型、分片中的宏块类型、分片帧的数量以及相应的帧的设置和参数等信息,而分片数据中则是宏块,这里就是大家要找的积存像素数据的地点。

宏块是视频信息的重要承载者,因为它蕴含着每一个像素的亮度和色度新闻。视频解码最重要的劳作则是提供高效的措施从码流中得到宏块中的像素阵列。

图片 23

从上图中,可以看看,宏块中隐含了宏块类型、预测类型、Coded Block
Pattern、Quantization Parameter、像素的亮度和色度数据集等等音讯。

由来,我们对 H.264 的码流数据结构应该有了一个大体的明白。

码流格式

在上节中,我们简要的介绍了和 H.264
编码相关的图纸、像素以及颜色模型相关的定义,这这一节就随即简要介绍一下
H.264 码流的构造,以及如何从 H.264 的码流中找到那个像素。

对此一个解码器来说,它的行事对象就是从一个特定协会的数据流中去获取有效的
bit 流,而这一个数量流则是结构化后分为数据包传输的,其大体结构如下:

图片 24

咱俩得以观察,在 NAL 包之间存在着一些距离标记。

NAL 包的率先个字节是概念包类型的头文件,NAL 包有那般一些档次:

类型 定义
0 Undefined
1 Slice layer without partitioning non IDR
2 Slice data partition A layer
3 Slice data partition B layer
4 Slice data partition C layer
5 Slice layer without partitioning IDR
6 Additional information (SEI)
7 Sequence parameter set
8 Picture parameter set
9 Access unit delimiter
10 End of sequence
11 End of stream
12 Filler data
13..23 Reserved
24..31 Undefined

NAL 的项目表明了当前这一个 NAL
包的数据结构和多少含义,它或许是片(Slice),参数集或者填充数据等等。

图片 25

如上图所示,NAL 包将其负载数据存储在 RBSP(Raw Byte Sequence Payload)
中,RBSP 是一多样的 SODB(String Of Data Bits)。

图片 26

下边,我们来具体看看 H.264 的码流结构:

图片 27

一张图片可以蕴涵一个或三个分片(Slice),而每一个分片(Slice)又会被分成了多少宏块(Macroblock)。对于分片(Slice)来说,有如下这一个系列:

类型 定义
0 P-slice. Consists of P-macroblocks (each macro block is predicted using one reference frame) and / or I-macroblocks.
1 B-slice. Consists of B-macroblocks (each macroblock is predicted using one or two reference frames) and / or I-macroblocks.
2 I-slice. Contains only I-macroblocks. Each macroblock is predicted from previously coded blocks of the same slice.
3 SP-slice. Consists of P and / or I-macroblocks and lets you switch between encoded streams.
4 SI-slice. It consists of a special type of SI-macroblocks and lets you switch between encoded streams.
5 P-slice.
6 B-slice.
7 I-slice.
8 SP-slice.
9 SI-slice.

如我们所见,每个分片也富含着头和多少两局部,分片头中涵盖着分片类型、分片中的宏块类型、分片帧的数目以及相应的帧的装置和参数等音信,而分片数据中则是宏块,这里就是我们要找的仓储像素数据的地点。

宏块是视频音讯的最首要承载者,因为它含有着每一个像素的亮度和色度音讯。视频解码最首要的行事则是提供高效的法门从码流中赢得宏块中的像素阵列。

图片 28

从上图中,可以阅览,宏块中隐含了宏块类型、预测类型、Coded Block
Pattern、Quantization Parameter、像素的亮度和色度数据集等等音讯。

时至先天,大家对 H.264 的码流数据结构应该有了一个大致的问询。

帧内预测和帧间预测

在上一节的末尾,我们介绍了宏块的数据结构,其中涉嫌了「预测类型」这些字段,这里就跟着说说「帧内预测」和「帧间预测」这二种在视频编码中常用到的削减方法,也得以称作「帧内压缩」和「帧间压缩」。

帧内压缩类似于图片压缩,跟这一帧的眼前(或前面)一帧(或几帧)无关,由目前帧中,已编码的片段来估量当前待编码的这一有些数据是怎么。帧间缩减是由这一帧的前(或后)一帧(或几帧)来测算当前待压缩的这一局部数据是何许。

上节中,我们说过图片可以分开为宏块。一般的话,运动多细节多的一部分,划分成小块来编码,无变化的大片的一对,划分成大块来编码。其大体效果如下:

图片 29

帧内预测和帧间预测

在上一节的最后,大家介绍了宏块的数据结构,其中涉及了「预测类型」这多少个字段,这里就随之说说「帧内预测」和「帧间预测」这二种在视频编码中常用到的削减方法,也能够称为「帧内压缩」和「帧间压缩」。

帧内压缩类似于图片压缩,跟这一帧的先头(或后边)一帧(或几帧)无关,由近期帧中,已编码的有些来推论当前待编码的这一部分数据是何等。帧间收缩是由这一帧的前(或后)一帧(或几帧)来臆想当前待压缩的这一局部数据是如何。

上节中,我们说过图片能够分开为宏块。一般的话,运动多细节多的局部,划分成小块来编码,无变化的大片的片段,划分成大块来编码。其大体效果如下:

图片 30

帧内预测

对此帧内压缩,咱们可以看下图示例:

图片 31

咱俩得以因此第 1、2、3、4、5 块的编码来预计和计量第 6
块的编码,由此就不需要对第 6 块举行编码了,从而缩小了第 6
块,节省了半空中。

帧内预测在 H.264 编码标准里有以下三种预测方法:

图片 32

帧内预测

对于帧内压缩,我们可以看下图示例:

图片 33

咱俩得以通过第 1、2、3、4、5 块的编码来推论和计量第 6
块的编码,由此就不需要对第 6 块举办编码了,从而缩短了第 6
块,节省了半空中。

帧内预测在 H.264 编码标准里有以下两种预测方法:

图片 34

帧间预测

对此帧间压缩,可以看下边连续的两帧:

图片 35

图片 36

可以看到前后两帧的差异其实是很小的,这时候用帧间压缩就很有含义。

做帧间压缩常用的法子就是块匹配(Block
Matching),就是找找看后边已经编码的几帧里面,和本人当下以此块最相近的一个块,这样自己就毫无编码当前块的情节了,只需要编码当前块和自家找到的非凡块的差别(称为残差)即可。找最像的块的过程叫运动搜索(Motion
Search),又叫运动臆度(Motion
Estimation)。用残差和原来的块就能推算出当前块的经过叫运动补偿(Motion
Compensation)。

图片 37

帧间预测

对于帧间压缩,可以看下边连续的两帧:

图片 38

图片 39

可以看来前后两帧的异样其实是很小的,这时候用帧间压缩就很有含义。

做帧间压缩常用的法子就是块匹配(Block
Matching),就是找找看前边已经编码的几帧里面,和我当下以此块最接近的一个块,那样自己就不要编码当前块的始最终,只需要编码当前块和自身找到的那多少个块的距离(称为残差)即可。找最像的块的经过叫运动搜索(Motion
Search),又叫运动推测(Motion
Estimation)。用残差和原来的块就能推算出当前块的长河叫运动补偿(Motion
Compensation)。

图片 40

录像业务

我们通常最常接触到的录像相关的事情模式一般有:本地录像文件播放网络视频点播网络视频直播等等两种。对于网络视频点播、网络录像直播,整个过程大概如下图所示:

图片 41

而当地录像文件播放就更简短了,是在下边的历程中省略掉解协议的长河。

视频业务

俺们通常最常接触到的录像相关的事务格局一般有:地点录像文件播放网络视频点播网络视频直播等等两种。对于网络录像点播、网络视频直播,整个经过大约如下图所示:

图片 42

而本地视频文件播放就更简便了,是在上头的进程中省略掉解协议的经过。

流媒体协议

趁着互联网基础设备更是完善,网络录像点播和直播工作也更为多,那个中少不了流媒体协议的襄助。常见的流媒体协议有:

  • RTP,实时传输协议,Real-time Transport
    Protocol,是一种网络传输协议,运行在 UDP
    共商之上,RTP商事详细表明了在互联网上传递音频和视频的标准数据包格式。RTP协议常用于流媒体系统(配合
    RTSP 协议)。
  • RTCP,实时传输控制协议,Real-time Transport Control
    Protocol,是实时传输协议(RTP)的一个姐妹研商。RTCP为RTP媒体流提供信道外(out-of-band)控制。RTCP
    本身并不传输数据,但和 RTP 一起合作将多媒体数据打包和殡葬。RTCP
    定期在流多媒体会话加入者之间传输控制数据。RTCP 的基本点效能是为 RTP
    所提供的服务质量(Quality of Service)提供报告。
  • RTSP,实时流传输协议,Real 提姆e Streaming
    Protocol,该协议定义了一对多应用程序怎么样有效地因此 IP
    网络传送多媒体数据。RTSP 在系统布局上位居 RTP 和 RTCP 之上,它采取TCP 或 UDP 完成数据传输。使用 RTSP
    时,客户机和服务器都足以发出请求,即 RTSP 可以是双向的。
  • RTMP,实时音讯传输协议,Real 提姆(Tim)e Messaging Protocol,是 Adobe
    Systems 集团为 Flash
    播放器和服务器之间音频、录像和数码传输开发的绽开协议。协议基于
    TCP,是一个协议族,包括 RTMP 基本协议及 RTMPT/RTMPS/RTMPE
    等多种变种。RTMP
    是一种设计用来举行实时数据通信的网络协议,紧要用来在 Flash/AIR
    平台和支撑RTMP协议的流媒体/交互服务器之间举行音摄像和数码通信。
  • RTMFP,是 Adobe 公司支付的一套新的通信协议,全称 Real 提姆e Media
    Flow Protocol,协议基于 UDP,协理 C/S 模式和 P2P
    格局,即该协议可以让动用 Adobe Flash Player
    的顶峰用户之间举办直接通信。
  • HTTP,超文本传输协议,HyperText Transfer Protocol,运行在 TCP
    之上,这些协议是我们充裕熟知的,它也可以用到视频业务中来。
  • HLS,是苹果集团贯彻的依照 HTTP 的流媒体传输协议,全称 HTTP Live
    Streaming,可协助流媒体的直播和点播,重要运用在 iOS 系统,为 iOS
    设备(如 HUAWEI、平板电脑)提供音录像直播和点播方案。对于 HLS
    点播,基本上就是常见的分支 HTTP
    点播,不同在于,它的分支非凡小。要兑现HLS点播,重点在于对媒体文件分段。对于
    HLS 直播,相对于广大的流媒体直播协议,例如 RTMP 协议、RTSP
    协议等,HLS
    最大的例外在于直播客户端获取到的并不是一个完好无损的数据流,而是连续的、短时长的媒体文件(MPEG-TS
    格式),客户端不断的下载并播放那些小文件。由于数量通过 HTTP
    协议传输,所以完全不用考虑防火墙或者代理的题目,而且分段文件的时长很短,客户端能够疾速的取舍和切换码率,以适应不同带宽标准下的播放。但是HLS
    的这种技能特色,决定了它的推移一般总是会领先平常的流媒体直播协议。

流媒体协议

随着互联网基础设备更是完善,网络视频点播和直播工作也愈发多,这里面少不了流媒体协议的支撑。常见的流媒体协议有:

  • RTP,实时传输协议,Real-time Transport
    Protocol,是一种网络传输协议,运行在 UDP
    共商之上,RTP共商详细表达了在互联网上传递音频和录像的专业数量包格式。RTP协议常用于流媒连串统(配合
    RTSP 协议)。
  • RTCP,实时传输控制协议,Real-time Transport Control
    Protocol,是实时传输协议(RTP)的一个姊妹研讨。RTCP为RTP媒体流提供信道外(out-of-band)控制。RTCP
    本身并不传输数据,但和 RTP 一起搭档将多媒体数据打包和殡葬。RTCP
    定期在流多媒体会话参预者之间传输控制数据。RTCP 的显要意义是为 RTP
    所提供的服务质地(Quality of Service)提供报告。
  • RTSP,实时流传输协议,Real 提姆(Tim)e Streaming
    Protocol,该协议定义了一对多应用程序咋样有效地经过 IP
    网络传递多媒体数据。RTSP 在系统布局上位居 RTP 和 RTCP 之上,它拔取TCP 或 UDP 完成多少传输。使用 RTSP
    时,客户机和服务器都得以发出请求,即 RTSP 可以是双向的。
  • RTMP,实时音信传输协议,Real 提姆e Messaging Protocol,是 Adobe
    Systems 集团为 Flash
    播放器和服务器之间音频、录像和数目传输开发的盛开协议。协议基于
    TCP,是一个协议族,包括 RTMP 基本协议及 RTMPT/RTMPS/RTMPE
    等多种变种。RTMP
    是一种设计用来拓展实时数据通信的网络协议,首要用于在 Flash/AIR
    平台和支撑RTMP协议的流媒体/交互服务器之间举办音录像和数目通信。
  • RTMFP,是 Adobe 集团开支的一套新的通信协议,全称 Real 提姆(Tim)e Media
    Flow Protocol,协议基于 UDP,匡助 C/S 格局和 P2P
    形式,即该协议可以让使用 Adobe Flash Player
    的极限用户之间举办直接通信。
  • HTTP,超文本传输协议,HyperText Transfer Protocol,运行在 TCP
    之上,这多少个协议是豪门充裕熟稔的,它也足以用到视频业务中来。
  • HLS,是苹果公司实现的依照 HTTP 的流媒体传输协议,全称 HTTP Live
    Streaming,可协助流媒体的直播和点播,紧要运用在 iOS 系统,为 iOS
    设备(如 华为、华为平板)提供音视频直播和点播方案。对于 HLS
    点播,基本上就是大面积的分层 HTTP
    点播,不同在于,它的分支非凡小。要实现HLS点播,重点在于对媒体文件分段。对于
    HLS 直播,绝对于常见的流媒体直播协议,例如 RTMP 协议、RTSP
    协议等,HLS
    最大的不等在于直播客户端获取到的并不是一个完好无缺的数据流,而是连续的、短时长的媒体文件(MPEG-TS
    格式),客户端不断的下载并播放这多少个小文件。由于数量经过 HTTP
    协议传输,所以完全不用考虑防火墙或者代理的题材,而且分段文件的时长很短,客户端能够长足的选拔和切换码率,以适应不同带宽口径下的播报。可是HLS
    的这种技术特点,决定了它的推迟一般总是会超出一般的流媒体直播协议。

事情方案

在国内主流的有的视频业务相关的店堂中,紧要利用的视频业务方案有:

网络视频点播

公司 协议 封装 视频编码 音频编码 播放器
CNTV HTTP MP4 H.264 AAC Flash
CNTV(部分) RTMP FLV H.264 AAC Flash
华数 TV HTTP MP4 H.264 AAC Flash
优酷网 HTTP FLV H.264 AAC Flash
土豆网 HTTP F4V H.264 AAC Flash
56网 HTTP FLV H.264 AAC Flash
音悦台 HTTP MP4 H.264 AAC Flash
乐视网 HTTP FLV H.264 AAC Flash
新浪视频 HTTP FLV H.264 AAC Flash

网络视频点播业务使用 HTTP 有两地点优势:

  • HTTP 是依照 TCP
    琢磨的应用层协议,媒体传输过程中不会油可是生丢包等气象,从而确保了视频的质地。
  • HTTP 是多方面的 Web
    服务器援助的合计,因此流媒体服务单位不必投资买进额外的流媒体服务器,从而省去了付出。

网络录像点播服务使用的封装格式有多种:MP4,FLV,F4V
等,它们之间的区分不是很大。

视频编码标准和音频编码标准是 H.264 和
AAC,这二种标准分别是现行其实运用中编码功效最高的视频正式和节奏标准。

视频播放器方面则都应用了 Flash 播放器。

网络视频直播

公司 协议 封装 视频编码 音频编码 播放器
华数 TV RTMP FLV H.264 AAC Flash
六间房 RTMP FLV H.264 AAC Flash
中国教育电视台 RTMP FLV H.264 AAC Flash
北广传媒移动电视 RTMP FLV H.264 AAC Flash
上海IPTV RTSP+RTP TS H.264 MP2 机顶盒

网络视频直播服务应用 RTMP 作为直播协议的益处是可以直接被 Flash
播放器辅助,而 Flash 播放器在 PC
时代所有极高的普及率,并且与浏览器结合的很好。由此这种流媒体直播平台基本上可以兑现了「无插件直播」,极大降低了用户接纳成本。

封装格式、录像编码、音频编码、播放器方面几乎整个行使了
FLV、H.264、AAC、Flash。FLV、RTMP、Flash 都是 Adobe
公司的成品,天生具备得天独厚的结合性。

在目前看来,以上的数目现已有点过时了,比如现在乘机移动互联网时代的发生,H5
以及客户端应用的普及,行业中对视频业务技术方案的选项也逐步在发生着转变,而大家则需要整合当前的实际上情形和技能提升的大方向去做出确切的技巧选型。

工作方案

在境内主流的有的视频业务相关的铺面中,紧要运用的视频业务方案有:

网络视频点播

公司 协议 封装 视频编码 音频编码 播放器
CNTV HTTP MP4 H.264 AAC Flash
CNTV(部分) RTMP FLV H.264 AAC Flash
华数 TV HTTP MP4 H.264 AAC Flash
优酷网 HTTP FLV H.264 AAC Flash
土豆网 HTTP F4V H.264 AAC Flash
56网 HTTP FLV H.264 AAC Flash
音悦台 HTTP MP4 H.264 AAC Flash
乐视网 HTTP FLV H.264 AAC Flash
新浪视频 HTTP FLV H.264 AAC Flash

网络录像点播业务使用 HTTP 有两方面优势:

  • HTTP 是依据 TCP
    磋商的应用层协议,媒体传输过程中不会油但是生丢包等情景,从而保证了录像的身分。
  • HTTP 是多方面的 Web
    服务器辅助的商事,由此流媒体服务单位不必投资买进额外的流媒体服务器,从而省去了开支。

网络视频点播服务使用的封装格式有多种:MP4,FLV,F4V
等,它们中间的区分不是很大。

录像编码标准和韵律编码标准是 H.264 和
AAC,这二种标准分别是当今实在使用中编码效能最高的录像正式和旋律标准。

视频播放器方面则都采纳了 Flash 播放器。

网络视频直播

公司 协议 封装 视频编码 音频编码 播放器
华数 TV RTMP FLV H.264 AAC Flash
六间房 RTMP FLV H.264 AAC Flash
中国教育电视台 RTMP FLV H.264 AAC Flash
北广传媒移动电视 RTMP FLV H.264 AAC Flash
上海IPTV RTSP+RTP TS H.264 MP2 机顶盒

网络视频直播服务使用 RTMP 作为直播协议的益处是足以平昔被 Flash
播放器辅助,而 Flash 播放器在 PC
时代所有极高的普及率,并且与浏览器结合的很好。由此这种流媒体直播平台基本上可以实现了「无插件直播」,极大降低了用户采取基金。

封装格式、视频编码、音频编码、播放器方面几乎任何用到了
FLV、H.264、AAC、Flash。FLV、RTMP、Flash 都是 Adobe
集团的成品,天生具备大好的结合性。

在目前看来,以上的数码已经有点过时了,比如现在乘机活动互联网时代的发生,H5
以及客户端应用的普及,行业中对录像业务技能方案的挑选也逐步在发生着变化,而我们则需要整合当下的莫过于情况和技能发展的大势去做出适当的技巧选型。

参考

参考