d62a6059252dd42aaae4fd3d043b5bb5c8eab8b3

网易视频云干货系列——流媒体技术介绍之下篇和大家见面了!上篇的分享从传统流媒体的技术特点等方面进行分析。中篇的分享举例对比了企业方案。本次的分享将主要举例国际技术标准的解决方案,对比分析各自的优缺点。

目前,HAS技术的实现方式从标准的类型来看主要有两大类:一类是企业方案,即提供了整体的技术解决方案,如Apple Live Streaming技术、Adobe Dynamic Streaming技术、Microsoft Smooth Streaming技术;另一类是一些国际标准组制定的技术标准,如OIPF的HTTP Adaptive Streaming、MPEG的DASH(Dynamic Adaptive Streaming over HTTP)、IETF的草案(由Apple公司提议的草案)。

OIPF  

OPEN IPTV Forum在其定义的OIPF技术规范中对码率自适应技术进行了界定,规范中对如何实现HTTP码流自适应的理论进行了细化及扩展,明确了如何使用及使用的范围。该标准以3GPP的Adaptive HTTP Streaming技术规范为基础进行相关的扩展,增加了对MEPG-2 TS格式的支持。 

OIPF的码率自适应标准中对终端下载的索引文件进行了定义,OIPF中将索引文件命名为MPD(Media Present Description)文件,采用XML格式进行组织。 

同时OIPF标准规定了媒体的封装格式为TS和MP4,并且对分片的一些细节进行了界定,如同一内容的不同码率的文件必须使用同样的媒体封装格式,但是编码的Profile可以不同。 

该标准对直播应用场景以及快进、快退、定位等操作均进行了定义。

MPEG-DASH (Dynamic Adaptive Streaming over HTTP)

MPEG-DASH 是基于HTTP的自适应串流方案中的唯一国际标准,MPEG-DASH 技术由 MPEG 主导开发。DASH标准对目前出现的HTTP Adaptive Streaming (HAS)技术框架进行了总结归纳,对背景、目的以及使用场景进行了介绍。该标准中定义了一系列的使用场景,如3D Video、互动3D、动态码率自适应、Peer-2-Peer以及多画面电视,同时还对如何与内容保护技术结合进行了定义。 

DASH标准的制定主要为了解决以下问题: 

  更为有效地将MPEG的媒体通过HTTP协议,以自适应、渐进式、下载或流的方式进行内容分发; 

  支持直播业务; 

  更为有效地利用传统的基于HTTP的CDN网络、代理Server或防火墙等网络基础部件; 

  支持与内容保护系统的结合,完成对内容的保护。 

总的来说,DASH对采用HTTP传输MPEG媒体涉及到的各方面提出了一系列的技术要求,包括了媒体内容格式、传输方式、MPD文件、业务控制、自适应以及媒体保护等。

c995d143ad4bd1136ede4ba45dafa40f4bfb0510

spacer.gif


图 MPEG-DASH方案结构图

MPEG-DASH前端HTTP服务器和MPEG-DASH客户端之间的逻辑关系如图所示。节目内容首先存储在MPEG-DASH前端HTTP服务器上,随后使用HTTP协议进行传输。媒体内容在服务上存储方式由两个部分组成:第一:媒体内容描述Media Presentation Description (MPD),其中包括内容的文件块索引文件文件、内容的变量信息、URL以及其他特点。第二:文件片段,它代表了该节目所有的节目数据块。

spacer.gif

4b90f603738da9770eba7abdb751f8198718e38b

图 MPEG-DASH方案MPD数据结构图

所有的HTTP为基础的码流传输技术都包含两个功能模块,节目码流和文件块索引文件,在DASH方案中节目码流称之为媒体表示,而文件块索引文件称之为媒体描述,文件的数据结构如图所示。

在播放节目内容时,MPEG-DASH客户端首先要获取MPD文件,MPD文件可是通过HTTP、email、广播或者其他方式传输。通过解析MPD文件,email客户端可以了解节目的时间信息、节目的可用性、节目类型、清晰度、最大与最小带宽,以及几种不同编码码率的节目流、DRM信息、节目位置以及与内容相关的其他信息。利用以上这些信息,MPEG-DASH客户端选择合适码率进行播放。在节目内容开始传输并开始缓冲时,客户端继续从服务器端获取节目片段,并检测网络带宽变化。通过对网络带宽的检测客户端可以选择接受多大码率的节目。在MPEG-DASH中只定义了MPD和文件片段的格式,并没有定义二者的封装格式以及客户端如何获取二者。

u  优势

从纯技术的观点,在所有的互联网电视方案中MPEG-DASH看起来像最好的选择,它采用了好的设计思想,同时保持了很好的兼容性。作为被ISO和MPEG-LA推动的标准,与其他软件或互联网公司设计的互联网电视方案,它的设计更好满足产业实际。Ultraviolet很好了反映了“buy once, play anywhere”的设计思想,只有很少数的消费者是Apple或Android的忠实支持者,大多数用户拥有多个不同类型和厂家的终端设备;

u  不足

从用户端看,非常少的播放器采用MPEG-DASH方案,而且MPEG-DASH方案仍然处在起草阶段;Apple和Disney公司没有参加Ultraviolet组织,Ultraviolet是对Apple产品的一种潜在威胁,它允许用户在其他不同的设备上观看同一个视频流。

总结

通过研究各种标准组提出的技术规范以及微软、苹果等公司的企业技术方案,我们可以看出基于HTTP的码率自适应的实现原理是类似的,主要的区别在于媒体文件格式以及索引文件格式的不同,如表所示。

spacer.gif

8644ebf81a4c510fa4891e8c6759252dd52aa5d3

表 HAS文件格式对比

在这里我们谈了许多HAS的优势,HAS方案的功能对比如表-2所示,但是目前的技术体系还有许多方面有待完善及改进。

首先,上述技术体系都是基于Client驱动的模式,依靠Client对网络状况及其自身硬件平台的能力情况进行判断,通过解析索引描述文件,最终从头端Server中以主动“拉取”的形式获取内容。在直播应用中,终端是需要频繁不断地更新描述文件来获取新的内容的相关信息。如采用Server驱动的模式,则不需要对描述文件进行频繁地更新,Server不断获取到最新的内容,并且连续不断地以“推送”的方式向终端发送媒体数据,比较适应于对实时性要求较高的直播应用。

其次,上述HAS技术体系缺乏质量的监测与控制机制。例如,当一个用户在观看直播频道时进行频道切换,当前时间的GOP以及播放器需要的初始化信息需要尽快传送到终端进行播放,但是目前的HAS技术体系中没有对重要的HTTP包进行加速传输的机制。

spacer.gif

b21bb051f81986180aba13124ded2e738ad4e6a3

表 HAS功能对比

HAS技术的出现为面向多终端的新媒体服务平台的建设提供了一个极佳的解决方案,可以预见HAS技术将有着极为广阔的发展空间。

流媒体技术介绍的分享就到这里。想看到流媒体技术技术完整版请在网易视频云官方微信(vcloud163)或者网易视频云官方微博查看哦,也可到网易视频云官网(vcloud.163.com),与技术专家直接进行交流!