流媒体(Streaming Media)指在数据网络上按时间先后次序传输和播放的连续音/视频数据流。与传统的下载播放方式不同,流媒体采用流式传输技术,将媒体数据压缩后分段发送,用户无需等待整个文件下载完成,即可边下载边播放,节省了下载等待时间和存储空间。流媒体具有连续性、实时性、时序性等特点,广泛应用于在线直播、视频点播、远程教育等领域,成为现代数字媒体时代的重要技术。
英文名:
Streaming Media播放方式:
单播、组播、广播定义:
连续的媒体数据压缩处理后,经过网络向用户终端有序或实时传输,用户可一边接收一边使用已传输的媒体数据特点:
缩短启动延时、降低缓存容量需求、具有时效性、交互性传播方式:
流式传输(顺序流式传输、实时流式传输、动态自适应流式传输)应用领域:
消费娱乐、电子商务、信息广播、远程教育、远程医疗、远程监控等流媒体(Streaming Media)是一种允许音频、视频及其他多媒体内容在互联网(Internet)及内部网(Intranet)上以实时、无需下载等待的方式进行播放的技术。它通过压缩编码、数据打包,并按照一定的时间间隔要求,将连续媒体数据发送给接收方,接收方在数据不断到达的同时,对数据进行重组、解码和播放。

发展历史
1990-2000年
- 1992年:MBone(Multicast Backbone)和RTP版本1被推出。MBone是一个配置于国际互联网上的虚拟网络系统,通过它可实现多点广播IP PACKET的路由,进而在国际互联网上实现多点广播机制。RTP是针对实时多点多媒体会议而设计的实时传输协议,提供端到端的实时媒体(交互式音频和视频)传输服务,在流媒体技术中负责数据传输。
- 1994年:美国滚石乐队的音乐会使用MBone进行现场网络直播,成为现场直播的先驱。
- 1995年:Progressive Networks在互联网上向公众广播了Mariners对战Yankees的美国职业棒球比赛;国际电信联盟(ITU-T)发布RTP文档H.263;Progressive Networks公司推出RealAudio(即时播音系统)软体系统。
- 1996年:vivo推出VivoActive;微软宣布推出播放器NetShow;Real Networks公司以IETF标准提交RTSP(实时流传输协议)草案。
- 1997年:Real Networks公司推出RealVideo新型流式视频文件格式,并发布RealSystem5.0;微软收购音频公司VXtreme;RealNetworks公司首次公开募股。
- 1998年:RealNetworks收购Vivo,推出RealSystem G2版本;苹果公司推出流媒体软件QuickTime。
- 1999年:RealNetworks公司收购Xing Technology;微软将NetShow平台更名为Windows Media;雅虎动用57亿美元的股票收购Broadcast.com。
- 2000年:RealNetworks宣布RealPlayer用户达到1亿。
2001-2010年
随着宽带增长和压缩技术进步,Adobe Flash成为视频流的代名词。互联网视频概念在大众媒体中发挥作用,YouTube、Justin.tv(后成为Twitch)和网飞(Netflix)等流媒体服务开始发展。宽带普及率提高,移动蜂窝技术进步,Adobe Flash支持98%的互联网浏览器。苹果公司发布新的流媒体协议HLS(HTTP Live Streaming)。
2011-2019年
HTTP技术在规模和质量方面优于RTMP协议,因其允许内容分发者在Web服务器上分发基于块的自适应比特率的媒体文件,无需专门流媒体服务器。向自适应流的转移有助于对抗缓冲和提高缓存效率,但废除RTMP后留下了一组新的专有技术(包括苹果的HLS、微软的Smooth和Adobe的HDS)。2012年开发了MPEG-DASH作为供应商特定技术的替代品,YouTube从Flash迁移到HTML5时选择DASH作为默认协议,但带来延迟问题。2010年,直播开始蓬勃发展。
2020-2022年
在21世纪20年代,视频直播无处不在。2020年,广播公司将流媒体协议如网络实时通信(WebRTC)、低延迟HLS、用于DASH的CMAF和安全可靠传输(SRT)用于解决延迟问题并支持交互式内容。随着流媒体应用领域扩大,许多公司研发流媒体技术以适应不同技术平台,不少服务器公司在系统中捆绑流媒体服务器软件。流媒体技术在消费娱乐、电子商务、产品发布、信息广播、远程教育、远程医疗、远程监控等方面广泛应用,流媒体服务器软件系统支持直播、点播、虚拟直播等功能,兼容多屏多系统播放,包括手机、平板、电脑、电视等终端,以及iOS、安卓、Windows、Linux等系统。

技术原理
多媒体信息传输
在网络上传输多媒体信息主要有下载和流式传输两种方式。音频、视频文件一般较大,受网络带宽限制,下载需较长时间,延迟大。而流式传输时,声音、影像或动画等多媒体信息由服务器向用户计算机连续实时传送,用户不必等整个文件全部下载完毕,只需几秒或十几秒启动延时即可观看。文件剩余部分在客户机上播放时,在后台从服务器继续下载,节省了延时时间。流媒体实现的关键在于流式传输技术的应用,区别于传统下载技术。
数据的压缩
预处理包括采用先进、高效的压缩算法和降低质量(有损压缩)。流媒体技术中,进行流式传输的多媒体数据应先特殊压缩,再分成压缩数据包,由服务器向用户计算机连续、实时传送。
数据的缓存
与下载方式相比,流式传输对系统存储容量要求降低,但仍需缓存。因为Internet传输数据时把数据分解为许多数据包,在网络内部采用无连接方式传送,网络动态变化,分组选择的路由可能不同,到达用户计算机的路径和时间延迟不同,可能出现后面数据先到达的情况。所以必须使用缓存机制弥补延迟和抖动影响,使媒体数据正确、连续输出,不会因网络暂时拥塞而使播放停顿。高速缓存使用环形链表结构存储数据,通过丢弃已播放内容,重新利用空出的高速缓存空间缓存后续媒体内容,所需缓存空间较小。
视频编码技术
视音频数据数字化后内容数据量庞大,只有采用压缩编码技术才能有效存储、传输和接收。视频压缩编码技术可划分为两代:
- 第一代传统压缩编码方式:理论基础是Shannon的信息论,以经典集合论为基础,用概率统计模型描述信源,使用压缩技术去掉数据冗余。
- 第二代基于内容的编码方式:在传统方式基础上,从信息接收者角度和主观特性出发,考虑对象本身的含义、重要性及引起的后果,目的是去掉内容冗余。MPEG - 4标准是MPEG专家组为满足低码率的视频通信码率要求在1999年提出的,是一种混合压缩编码方式,引入基于对象的编码方式可大大提高压缩率。现有网络拓扑结构复杂、带宽随时间变化,且用户网络环境及终端能力千差万别,要求码流能随可用带宽变化自适应调整,动态改变输出码率,即用一个可调整码流实现多种帧率、空间分辨率或视频质量的服务,分级编码思想基于此提出。分级压缩编码也称可扩展编码,把视频信息分为基本层和增强层两层压缩编码,基本层包含视频最基本、最重要的信息,是视频解码最低要求;增强层包含视频细节信息,是视频解码可选信息。解码时先得到基本层码流重建低质量视频,若带宽有富余再解码增强层码流得到高质量视频。基本层码流是增强层码流基础,一旦丢失或发生误码,将导致增强层不能解码。
组播技术
在流媒体调度机制中大量使用IP组播技术,在多个接收者之间共享同一个组播数据流,节省服务和网络带宽,提高系统服务性能。IP组播主要思想是在互联网单播框架上扩展,数据复制、转发功能主要通过路由器实现,适用于时间上集中、空间上分布的应用,适用于实时、不可靠的应用。IP组播是一种成组广播技术,发送源和接收端是一对多关系,在同一个自治区域内,使用相同组播地址的用户构成组播组,服务器只向一组特定用户发送一份数据报文,组中各用户都能收到该数据,数据仅在网络分叉节点(路由器)上复制分发,网络中任一段链路上不存在同一数据多个拷贝。

代理技术
受视频对象占用存储空间和网络传输带宽大、服务持续时间长、服务质量要求高等特点影响,流媒体代理表现出与传统Web代理缓存技术不同要求。在Internet环境下,流媒体代理主要研究方向包括缓存策略和缓存空间管理。
- 缓存策略方面:主要研究分段(segment)缓存、预取(pre - fetch)技术、前缀(prefix)缓存、基于RTP报文缓存等。
- 缓存空间管理方面:主要研究缓存分配(allocation)和缓存替换(replacement)算法。
分段缓存技术
对视频对象进行分段缓存的原因有:流媒体对象占用存储空间较大,若以整个视频节目为最小缓存单位,少数几个视频节目就会导致代理缓存空间占满,降低缓存空间利用率,频繁缓存替换增加系统开销;对视频节目统计数据表明,用户对视频节目不同片断访问强度不同,节目开始片断访问频率更大。将节目分段缓存优势明显:有效发挥缓存空间利用率;优先缓存节目开始段,普遍降低用户服务启动时延;与调度策略结合进一步提高流媒体服务质量。
前缀缓存和预取技术
针对Internet网络传输时延和丢包率较大特征,考虑用户点播视频节目时对启动时延敏感特点,出现基于代理的前缀缓存(prefixcaching)思想:将视频对象最开始片断(称作前缀,prefix)缓存在位于用户网络中的代理服务器上,收到用户对该节目点播请求时,代理服务器向用户传送前缀部分,同时向视频内容服务器发起获取后续段请求。前缀缓存技术有效降低用户服务启动时延,屏蔽网络时延、丢包、吞吐量等因素对服务质量影响。此外,在代理服务器上可采用前向平滑技术(work - ahead smoothing)进行网络流量控制,减少网络性能突变和震荡对用户端播放器冲击。前缀缓存是简单但有效技术,仿真实验证明对每个节目只需几兆数量级缓存空间即可达到理想效果,在流媒体领域获得广泛应用。
分层编码和缓存技术
在基于空间域的编码技术的质量分层编码中,视频对象被编码为一个基本层和若干个增强层。对原始视频进行一次粗略量化后形成基本层码流,然后对原始视频和基本层视频的差再进行一次量化,生成增强层码流。若需要多个增强层码流,则重复上述过程,按照层生成时间顺序,将最先生成的称为底层编码,后生成的称为高层编码。从编码过程看,后生成的层是对先前生成层质量改进,各层之间有依赖关系,基础层质量最低,但它是所有其它层正常解码前提,只有所有底层编码都正确传输和解码前提下,高层编码才有意义。
基于RTP报文的代理缓存技术
IP网上以RTP报文传输的视频流节目内容,在代理服务器上为缓存该节目,需对RTP报文解封装(decapsulation)以获得视频内容,并将其缓存在磁盘文件中;下次用户请求该节目时,再从文件中调出该内容,使用RTP协议封装(encapsulation)内容并传送给用户。由于视频流媒体数据速率高,拆封和封装工作量很大,消耗代理服务器大量处理资源。以RTP报文为最小粒度的缓存思想,将RTP报文作为内容缓存在磁盘文件中,向用户提供视频内容时,直接从文件中读取报文经简单处理后直接发送给用户即可,免除代理服务器报文处理开销;并针对RTP协议特点,研究如何将来自代理服务器前缀段和来自服务器后缀段拼接成连续视频流问题。

缓存分配和缓存替换算法
与Web对象(如文字、图片、动画等)对比,传输视频对象需要更大存储空间和网络带宽。流媒体代理存储容量有限,有必要对缓存空间管理进行有效管理。目前针对流媒体代理缓存空间管理有两类算法:
- 缓存分配算法:根据对象流行度和大小、结合网络和代理特性,在系统启动时按一定规则选择一些媒体内容缓存在代理服务器上,以期利用有限缓存空间换取系统性能(如系统吞吐量、服务质量、网络资源节省程度等)提高。
- 缓存替换算法:在系统运行期间,根据视频对象流行度、用户点播行为以及网络资源变化情况,按一定策略动态调整代理服务器缓存空间中动态存放节目内容,以达到有效利用缓存资源提高系统性能目的。
传输方式
综述
流式传输是实现流媒体关键技术,定义广泛,主要指通过网络传送媒体(如视频、音频)技术总称。实现流式传输有三种方法:顺序流式传输(Progressive Streaming)、实时流式传输(Real Time Streaming)以及动态自适应流式传输(Dynamic Adaptive Streaming over HTTP)。
顺序流式传输
顺序流式传输是顺序下载,下载文件同时用户可观看在线媒体,给定时刻用户只能观看已下载部分,不能跳到未下载前头部分,不像实时流式传输在传输期间根据用户连接速度做调整。由于标准HTTP服务器可发送这种形式文件,也不需要其他特殊协议,常被称作HTTP流式传输。顺序流式传输适合高质量短片段,文件在播放前观看部分是无损下载,保证节目最终质量。顺序流式文件放在标准HTTP或FTP服务器上,易于管理,基本与防火墙无关。但不适合长片段和有随机访问要求视频,如讲座、演说与演示,也不支持现场广播,严格来说是点播技术。
实时流式传输
实时流式传输必须保证匹配连接带宽,使媒体可被实时观看。观看过程中用户可任意观看媒体前面或后面内容,但若网络传输状况不理想,收到图像质量会较差。实时流式传输需要特定服务器,这些服务器在媒体发送时进行更多级别控制,系统设置、管理比标准HTTP服务器更复杂,还需要特殊网络协议。有防火墙时,有时会对这些协议进行屏蔽,导致用户不能看到一些地点实时内容。实时流式传输总是实时传送,特别适合现场事件。
动态自适应流式传输
动态自适应流媒体技术DASH(Dynamic Adaptive Streaming over HTTP)采用HTTP协议,媒体文件被转换成不同码率等级储存起来,并对这些码率不同媒体文件进行切片处理,分割成一定时间间隔片段。网络点播时,服务器能响应客户端网络带宽和设备情况,自动转换合适码率视频,保障用户观看视频流畅性,提高观看效果。RTSP/RTP使用RTP传输流媒体文件,需要专门流媒体服务器,动态自适应传输只使用标准Web服务器。

传输协议
实时传输协议RTP
实时传输协议RTP在一对一或一对多传输情况下工作,目的是提供时间信息和实现流同步。RTP通常使用UDP传送数据,当应用程序开始一个RTP会话时将使用两个端口,一个给RTP,一个给RTCP。RTP本身不能为按顺序传送数据包提供可靠传送机制,也不提供流量控制或拥塞控制,依靠RTCP提供这些服务。通常RTP算法不作为独立网络层实现,而是作为应用程序代码一部分。
实时传输控制协议RTCP
实时传输控制协议RTCP和RTP一起提供流量控制和拥塞控制服务。在RTP会话期间,各参与者周期性地传送RTCP包,RTCP包中含有已发送数据包数量、丢失数据包数量等统计资料,服务器可利用这些信息动态改变传输速率,甚至改变有效载荷类型。
实时流协议RTSP
实时流协议RTSP使一对多应用程序有效通过IP网络传送多媒体数据。RTSP在体系结构上位于RTP和RTCP之上,使用TCP或RTP完成数据传输,传送的是多媒体数据。使用RTSP时,客户机和服务器都可发出请求,点对点手机可视通话必须在手机终端实现RTSP。
播放方式
单播
单播指在客户端与媒体服务器之间建立单独数据通道,从一台服务器送出每个数据包只能传送给一个客户机。每个用户必须分别对媒体服务器发送单独查询,媒体服务器必须向每个用户发送所申请数据包拷贝。单播方式播送流媒体只适用于客户端数量很少情况,避免宽带消耗严重、播放质量降低。点播也属于单播方式,是客户端与服务器之间主动连接,点播连接提供对流最大控制,但每个客户端各自连接服务器会迅速用完网络带宽。
组播
组播又称多播,是基于“组”的广播,允许路由器一次将数据包复制到多个通道上。采用组播方式,单台服务器能够对几十万台客户机同时发送连续数据流而无延时。媒体服务器只需发送一个信息包,所有发出请求客户端共享同一信息包,信息可发送到任意地址客户机,减少网络上传输信息包总量,网络利用效率提高,成本下降。
广播
广播指用户被动接收流,广播过程中客户端接收流但不能控制流。流媒体从一个服务器端应用发送出去后,同一网段上所有客户端应用均可接收到,广播可看作组播特例。对于广播方式,客户端与服务器端关系属于被动关系,客户端只能被动接收来自服务器端信息。
文件格式
根据媒体发布文件不同用途分类
- 媒体压缩格式:简称为压缩格式,和原来媒体文件包含同样媒体信息,仅改变原来数据位编排,使文件被处理更小。根据不同压缩标准产生多种媒体压缩格式,包括AVI(Audio Video Interleaved)音频视频交错格式、MPEG(Moving Pictures Experts Group)运动影像专家组格式、WMV(Windows Media Video)和WMA(Windows Media Audio)。
- 媒体文件流格式:为保证多媒体信息能在网上实时播放,经特殊压缩编码而成的文件格式,减少原始多媒体数据数据量,提高多媒体数据在网络中播放效率。主要有微软格式、Real格式和Apple格式三大类。
| 公司 | 文件格式 |
| ---- | ---- |
| Microsoft | ASF(Advanced Stream Format) |
| Real Networks | rm/ra(Real Video/ Real Audio)、rp(realpix)、rt(Real Test) |
| Apple | MOV(Quick Time Movie) | - 媒体文件发布格式:将不同媒体集中在一起,按指定任意顺序播放,这种文件格式可用文本编辑器随意打开修改,单个媒体发布格式包含不同类型媒体所有信息,包括RAM和RPM文件、ASK文件和SMIL(Synchronized Multimedia Integration Language)文件。
应用领域
远程教育
随着网络发展,越来越多远程教育网站采用流媒体作为主要网络教学方式。互联网上进行多媒体交互教学技术多为流媒体,像Real System、Flash、Shockwave等技术常应用到网络教学中。远程教育是对传统教育模式革命,集教学和管理于一体,突破传统“面授”局限,为学习者在空间和时间上提供便利。除去实时教学,使用流媒体中VOD(视频点播)技术,可达因材施教、交互式教学目的,学生也可通过网络共享学习经验和成果。微软公司等大型企业内部,也将流媒体技术产品作为全球各分公司员工培训和交流方式。
宽带网视频点播
流媒体经特殊压缩编码,使视频点播适合在网络上传输,客户端采用浏览器方式点播,基本无需维护。采用先进机群技术,可对大规模并发点播请求进行分布式处理,适应大规模点播环境。很多大型新闻娱乐媒体在Internet上提供基于流技术音视频节目,如CNN、CBS,以及中央电视台、北京电视台等。流媒体平台成为青年群体观影新选择,网络也成为青年电影人作品发行重要平台,流媒体平台可及时捕捉每位观影用户观影习惯和偏好,相对传统院线,流媒体有更广泛选择。
互联网直播
流媒体技术在互联网直播中扮演重要角色,实现低带宽环境下提供高质量影音。例如Real公司的SureStream智能流技术,可保证不同连接速率下用户得到不同质量影音效果。流媒体Multicast(多址广播)技术可大大减少服务器端负荷,最大限度节省带宽。互联网直播是流媒体众多应用中最成熟的一个,在各领域工作中广泛应用。
视频会议
流媒体技术出现为视频会议发展起重要作用。采用流媒体格式传输影音,使用者不必等整个影片传送完毕,就可实时连续观看,改善观看前等待问题,达到即时效果。通过流媒体还可进行点对点通信,最常见例子是可视电话,大型企业可利用基于流技术视频会议系统组织跨地区会议和讨论,提高效率节省开支。
IPTV
IPTV,即交互式网络电视,利用流媒体技术通过宽带网络传输数字电视信号给用户,有效将电视、电讯和PC三个领域结合在一起。IPTV可采用两种不同方式提供用户电视服务,组播或者广播方式和视频点播方式。
对传统媒体的影响
借助流媒体技术网络直播可运用弹幕式互动交流方式,类似在网络直播同时建立实时聊天室供观众交流。这种即时交流能让主播以外相关人在第一时间向观众展示事件走向,使人人参与新闻事件发展。新闻网络流直播使更多人参与新闻事件发展,更贴近新闻事实,方便获取新闻详情。网络流媒体直播摆脱报纸、广播和电视载体束缚,通过计算机和互联网、移动终端和移动互联网普及,使人们在不同地点第一时间获得详细新闻消息,无需寻找电视、报纸。因移动终端便携性,受众可利用碎片时间阅读新闻,根据碎片时间长短选择深入了解新闻或快速浏览新闻。网络流直播兴起也使移动终端不仅作为新闻信息接收终端,也可作为新闻现场直播发布终端。相较于需编辑文本及图片类新闻,网络流媒体直播新闻传播效率高出许多。
