1. 流媒体(Streaming media)
流媒体:一连串的多媒体资料压缩后,经过互联网分段发送资料,在互联网上即时传输影音以供观赏的一种技术与过程,此技术使得资料数据包得以像流水一样发送,如果不使用此技术,就必须在使用前下载整个媒体文件。
实时流媒体:互联网内容的实时传输,就像电视直播通过电视信号在电波上播放内容一样。互联网流媒体直播需要一种形式的源媒体(如摄像机、音频接口、屏幕捕捉软件)、将内容数字化的编码器、媒体发布者和内容传输网络来分发和传递内容。
直播、会议、音视频通话都是属于实时流媒体的概念。从这个概念上,我们看出流媒体这个过程有三个方面:
(1)压缩;
(2)分段传输;
(3)接收组装显示。
做一个比喻,把西天取到的真经快递发送给佛祖。真经实在是太多,必须要分成小部分,分开发送。发送的时候,怕这个真经损坏,所以一般要加包装。经过包装的部分真经,到达佛祖那里之后,佛祖就要将包装打开,将真经拼在一起阅读。
这个和实际流媒体的过程一样,先将音频和视频编码(压缩),再以某以长度进行包装,包装盒子就是我们的封装格式,是为了便于传输和保护数据。到达观看端之后,先解开封装,再解码,最后读取并显示音视频数据。流媒体或者文件播放过程示意图如下:
简单描述上述过程如下:
(1)采集;通过手机摄像机或者电脑采集音频和视频的信息;
(2)编码及封装;编码为了压缩,封装之后便于传输
(3)网络上进行传输
(4)到达接收端之后,首先需要解封装(demux)
(5)然后进行解码得到原始的音视频数据
(6)进行音视频同步
(7)最后视频渲染到界面上,音频进行播放。
2. 音视频封装格式
封装格式(也叫容器):将已经编码压缩好的视频轨和音频轨按照一定的格式放到一个文件中,就是说仅仅是一个外壳,或者大家把它当成一个放视频轨和音频轨的文件夹也可。
通俗点,视频轨相当于饭,而音频轨相当于菜,封装格式就是一个碗,或者一个锅,用来盛放饭菜的容器。 下面是几种常用的 视频文件后缀类型 与其相对应的 封装格式。
(1)、AVI 格式,对应的文件后缀为 .avi,全称 Audio Video Interleaved,是由 Microsoft 公司于 1992 年推出。优点是图像质量好,无损 AVI 可保存 alpha 通道。缺点是体积过于庞大,并且压缩标准不统一,存在较多的高低版本兼容问题。
(2)、DV-AVI 格式,对应的文件后缀为 .avi,全称 Digital Video Format,由索尼、松下、JVC 等多家厂商联合提出的一种家用数字视频格式。常见的数码摄像机使用这种格式记录视频数据的。可通过电脑的 IEEE 1394 端口传输视频数据到电脑,也可将电脑中编辑好的的视频数据回录到数码摄像机中。
(3)、WMV 格式,对应的文件后缀为是 .wmv、.asf,英文全称 Windows Media Video,是微软推出的一种采用独立编码方式并且可以直接在网上实时观看视频节目的文件压缩格式。在同等视频质量下,WMV 格式的文件可以边下载边播放,很适合在网上播放和传输。
(4)、MPEG 格式,对应的文件后缀有.mpg、.mpeg、.mpe、.dat、.vob、.asf、.3gp、.mp4 等等,英文全称 Moving Picture Experts Group,是由运动图像专家组制定的视频格式, 1988 年组建该专家组,专门负责视频和音频标准制定,其成员都是视频、音频以及系统领域的技术专家。MPEG 格式目前有三个压缩标准,分别是 **MPEG-1、MPEG-2、**和 MPEG-4。MPEG-4 现在用的比较多的视频封装格式,是为播放流式媒体的高质量视频而专门设计的,以求使用最少的数据获得最佳的图像质量。
(5)、Matroska 格式,对应的文件后缀 .mkv,Matroska 是一种新的视频封装格式,可将多种不同编码的视频及 16 条以上不同格式的音频和不同语言的字幕流封装到一个 Matroska Media 文件当中。
(6)、Real Video 格式,对应的文件后缀 是 .rm、.rmvb,是 Real Networks 公司所制定的音频视频压缩规范称为 Real Media。用户可使用 RealPlayer 根据不同的网络传输速率制定出不同的压缩比率,从而实现在低速率的网络上进行影像数据实时传送和播放。
(7)、QuickTime File Format 格式,对应的文件后缀 是.mov, Apple 公司开发,默认的播放器是苹果的 QuickTime。这种封装格式具有较高的压缩比率和较完美的视频清晰度等特点,并可以保存 alpha 通道。
(8)、Flash Video 格式,对应的文件后缀 是. .flv,Adobe Flash 延伸出来的一种网络视频封装格式。这种格式被很多视频网站所采用。
3. 音视频编码方式简介
视频,如果未经编码,它的体积是非常庞大的。
以一个分辨率1920×1280,帧率30的视频为例。1920×1280=2,073,600(Pixels 像素)每个像素点是24bit(RGB888)也就是每幅图片为 2073600×24=49766400bit, 8 bit(位)=1 byte(字节),所以,49766400bit=6220800byte≈6.22MB。
这是一幅1920×1280图片的原始大小,再乘以帧率30,每秒视频的大小是186.6MB,每分钟大约是11GB,一部90分钟的电影,约是1000GB。所以必须要对视频编码。
编码,就是按指定的方法,将信息从一种形式(格式),转换成另一种形式(格式)。
编码终极目的:是为了压缩。各种视频编码方式,都是在保证视频的质量的同时,让视频变得体积更小,有利于存储和传输。
3.1 视频编码格式
视频编码的作用: 将视频像素数据(RGB,YUV 等)压缩成视频码流,从而降低视频的数据量。
(1)、H.26X 系列
H.26X 由国际电传视讯联盟远程通信标准化组织(ITU-T)主导,包括 H.261、H.262、H.263、H.264、H.265。
H.261,主要用于老的视频会议和视频电话系统。是第一个使用的数字视频压缩标准。实质上说,之后的所有的标准视频编解码器都是基于它设计的。
H.262,等同于 MPEG-2 第二部分,使用在 DVD、SVCD 和大多数数字视频广播系统和有线分布系统中。
H.263,主要用于视频会议、视频电话和网络视频相关产品。在对逐行扫描的视频源进行压缩的方面,H.263 比它之前的视频编码标准在性能上有了较大的提升。尤其是在低码率端,它可以在保证一定质量的前提下大大的节约码率。
H.264(Advanced Video Coding, AVC),等同于 MPEG-4 第十部分,也被称为高级视频编码,被广泛使用的高精度视频的录制、压缩和发布格式。该标准引入了一系列新的能够大大提高压缩性能的技术,并能够同时在高码率端和低码率端大大超越以前的诸标准。
H.265(High Efficiency Video Coding, HEVC),被称为高效率视频编码是一种视频压缩标准,是 H.264 的继任者。HEVC 被认为不仅提升图像质量,同时也能达到 H.264 两倍的压缩率(等同于同样画面质量下比特率减少了 50%),可支持 4K 分辨率甚至到超高画质电视,最高分辨率可达到 8192×4320(8K 分辨率),这是目前发展的趋势。
2)、MPEG 系列MPEG 系列由国际标准组织机构(ISO)下属的运动图象专家组(MPEG)开发。
MPEG-1 第二部分,主要使用在 VCD 上,有些在线视频也使用这种格式。该编解码器的质量大致上和原有的 VHS 录像带相当。
MPEG-2 第二部分,等同于 H.262,使用在 DVD、SVCD 和大多数数字视频广播系统和有线分布系统中。
MPEG-4 第二部分,可以使用在网络传输、广播和媒体存储上。比起 MPEG-2 第二部分和第一版的 H.263,它的压缩性能有所提高。
MPEG-4 第十部分,等同于 H.264,是这两个编码组织合作诞生的标准。
3.2 音频编码方式
音频编码作用: 将音频采样数据(PCM 等)压缩成音频码流,从而降低音频的数据量。 常用的音频编码方式有以下几种:
(1)(MPEG-1 or MPEG-2 Audio Layer III,MP3)
是曾经非常流行的一种数字音频编码和有损压缩格式,被设计来大幅降低音频数据量。它是在 1991 年,由位于德国埃尔朗根的研究组织 Fraunhofer-Gesellschaft 的一组工程师发明和标准化的。MP3 的普及,曾对音乐产业造成极大的冲击与影响。
(2)(Advanced Audio Coding ,AAC)
是由 Fraunhofer IIS、杜比实验室、AT&T、Sony 等公司共同开发,在 1997 年推出的基于 MPEG-2 的音频编码技术。2000 年,MPEG-4 标准出现后,AAC 重新集成了其特性,加入了 SBR 技术和 PS 技术,为了区别于传统的 MPEG-2 AAC 又称为 MPEG-4 AAC。 AAC 比 MP3 有更高的压缩比,同样大小的音频文件,AAC 的音质更高。
(3)(Windows Media Audio,WMA)
由微软公司开发的一种数字音频压缩格式,本身包括有损和无损压缩格式。