您的位置:首页 > 移动开发

MPEG-DASH VS. APPLE HLS VS. MICROSOFT SMOOTH STREAMING VS. ADOBE HDS

2015-11-27 20:44 483 查看
所有存在的自适应的HTTP动态流技术,比如专有的Adobe HTTP Dynamic Streaming(HDS)、Apple HTTP Live Streaming(HLS)、Microsoft Smooth Streaming(MSS)以及仅有的国际标准化的解决方案MPEG Dynamic Adaptive Streaming over HTTP(MPEG-DASH)都遵循几乎相同的原则。

最基准的思路就是为同样的内容生成多个版本(不同的比特流或者分享率)和切片(比如2秒一个切片),切片由Web Server提供,可以通过HTTP的get请求下载获取,通常情况下,版本之间的不同使用Mainfest文件来区别的,在这是提供给客户端之前的流session,mainfest文件提供不同质量的媒体内容及每个质量独立的URL片段。这种结构提供了部分的结合(分辨率,比特率等)以及其他(例如,开始时间,持续时间段)。因此,客户端都会首先请求mainfest清单,获取包含最基本的时间和结构信息的媒体内容,然后基于此选择最合适要求的独立切片。

每个切片的比特率或者分辨率的自适应在客户端完成。带宽允许的情况下,播放器会切换到比较高的比特率切片,如果带宽减少,基于每个片段会切换到比较低的比特率,这有几个优点,因为客户端知道它的功能,如接收的吞吐量,延迟,设备的能力(例如,屏幕分辨率)等,都是最好的。



FeatureAdobe HDSApple HLSMicrosoft SmoothMPEGDASH
Deployment on Ordinary HTTP Servers[/i]

[/i]

Official International Standard (e.g., ISO/IEC MPEG)[/i]

Multiple Audio Channels (e.g., Languages, Comments, etc.)[/i]

[/i]

[/i]

Flexible Content Protection with Common Encryption (DRM)[/i]

[/i]

[/i]

[/i]

Closed Captions / Subtitles[/i]

[/i]

[/i]

[/i]

Efficent Ad Insertion[/i]

Fast Channel Switching[/i]

[/i]

[/i]

Protocol Support’s multiple CDNs in parallel[/i]

HTML5 Support[/i]

Support in HbbTV (version 1.5)[/i]

HEVC Ready (UHD/4K)[/i]

Agnostic to Video Codecs[/i]

Agnostic to Audio Codecs[/i]

ISO Base Media File Format Segments[/i]

[/i]

[/i]

MPEG-2 TS Segments[/i]

[/i]

Segment Format Extensions beyond MPEG[/i]

Support for multiplexed (Audio + Video) Content[/i]

[/i]

[/i]

Support for non-multiplexed (separate Audio, Video) Content[/i]

[/i]

[/i]

Definition of Quality Metrics[/i]

Client Logging & Reporting[/i]

Client Failover[/i]

Remove and add Quality Levels during Streaming[/i]

Multiple Video Views[/i]

Efficient Trick Modes[/i]

特征细节:

Deployment on Ordinary HTTP Servers

MPEG-DASH和HLS可以使用普通的HTTP服务器,例如,Apache,Nginx,IIS等等,Adobe HDS和 MSS也使用服务器机制,但需要额外的实现逻辑。

Official International Standard (e.g., ISO/IEC MPEG)

MPEG-DASH是国际化的标准,2012年批准的,YouTuBe和Netflix目前在使用,其他几个不同公司的成员如微软,Adobe,苹果,三星,Akamai公司,思科,杜比,爱立信,谐波,高通,英特尔,Netflix,bitmovin等等对规范都有贡献。Apple的HLS互联网草案由苹果公司来驱动,是能够不断变化的,但是自从2009年5月,就没有被更新过?

Internet Draft:互联网草案起草文件的有效期为六个月最高,可能会被更新,替换,或在任何时候废弃的文件。互联网草案没有正式的身份,并随时更改或删除,因此,他们不应该被引用或引用任何正式文件。

Multiple Audio Channels (e.g., Languages, Comments, etc.)

支持多个音频通道之间切换,特别是多语言内容之间的切换,MPEG-DASH、HLS、MSS均支持。

Flexible Content Protection with Common Encryption (DRM)

MPEG通用加密(CENC)允许内容加密,一旦被多个DRM系统兼容。这是可能的,和几乎所有的DRM系统支持AES加密方法比较,内容的许可证密钥交换的客户端和服务器之间是不同的。

Closed Captions / Subtitles

所有的格式均支持CC字幕和subtitles。通常他们被关联在mainfest存储在独立的文件中,例如webvtt格式。

Efficent Ad Insertion

所有的格式都支持以替换切片块的形式插入广告,就是说原来的单个视频块被广告替代,普通的HTTP服务器就可以实现

Fast Channel Switching

快速切换通道是与块大小直接相关的功能。由于较小的块比大的块更快的进行通道切换。苹果HLS通常使用10秒的块大小,是块大小优化尺寸。Adobe,微软以及MPEG-DASH设计为2秒和4秒的块,允许更快的通道切换。此外,使用MP4格式的MPEG-DASH和微软花费比MPEG-2传输流的开销(mp2ts)用于苹果HLS格式更低。大小块之间大小的权衡是,小的块大小使快速通道切换,减少启动一些系统的延迟(有些播放器只有当已经获得了第一块充分时才开始播放),并允许更灵活的适应行为。此外,切片通过HTTP请求进行传输,减少切片的大小,可以更快的实现HTTP数据的获取。

Support multiple CDNs in parallel

所有格式都支CDN网络分发,部署在独有的服务器上。

HTML5 Support

HTML5支持HLS协议。

Support in HbbTV (version 1.5)

MPEG-DASH是官方的流媒体格式用于HbbTV 1.5和2规范。

HEVC Ready (UHD/4K)

MPEG-DASH是视频编解码器无关的,可以用编码HEVC 4K内容和H.264/AVC H.265/HEVC。

Agnostic to Video Codecs

MPEG-DASH是视频编解码器无关的,可以使用一些如视频编解码器,H.264/AVC,H.265/HEVC,MPEG-2视频,VP8,VP9,等。

Agnostic to Audio Codecs

MPEG-DASH是音频编解码器无关的,可以用一些音频编解码器如,MP3,AAC,等。

ISO Base Media File Format Segments

MPEG-DASH,微软和Adobe可以使用ISO基本媒体文件格式的基础环节,例如,MP4有着比苹果HLS使用的MPEG-2 TS切片显著降低费用。

MPEG-2 TS Segments

MPEG-DASH和苹果系统采用MPEG-2 TS格式段有开销比ISO基本媒体文件格式基础段显著高。MPEG-2 TS的188字节大小的数据包,每个包都有不同大小的4头12个字节。因此,他们开销造成的这些头随段的大小成比例,这意味着相对开销不趋于零,随着比特率。此外,每个MPEG-2 TS流由其他几个数据在音频和视频,如节目关联表,引入额外的开销。此外,音频和视频流封装打包基本流(PES)引入了一个额外的音频或视频帧。

Segment Format Extensions beyond MPEG

MPEG-DASH还支持容器格式MPEG如WebM之外。

Support for multiplexed (Audio + Video) Content

Adobe HDS,苹果HLS V6和MPEG-DASH可用于多路音视频内容,这意味着音频和视频基本流的封装在同一段。

Support for non-multiplexed (separate Audio, Video) Content

苹果HLS V8,MSS和MPEG-DASH可以使用单独的音频视频内容。

Definition of Quality Metrics

MPEG-DASH定义质量度量的标准,使客户可以将使用行为,具体介绍,开始播放,停止等发送到服务器。

Client Logging & Reporting

标准中定义的质量度量接口可用于收集来自多个不同客户机厂商的信息,并启用通用报表和客户端日志记录。

Client Failover

MPEG-DASH通过URL用于信号不同的CDN客户端故障转移机制,作为一个客户可以选择几个不同的地点下载一段。类似的方法可与苹果HLS使用故障转移的URL,但MPEG-DASH规范能够在这种情况下,更大的灵活性和更复杂的使用情况。

Remove and add Quality Levels during Streaming

MPEG-DASH使通过周期的动态插入和删除质量表示在流,在客户端与无缝切换。

Multiple Video Views

多个视频视觉,可自行切换

Efficient Trick Modes

MPEG-DASH使高效特技模式作为一个可以添加特定的表现,只有I帧的快速前进和后退。

总结,迄今为止,写的最烂的一篇博文,因为刚开始看到标题的时候以为是详细的使用比较,但是翻译着翻译者就发现好像不是那么回事,是对MPEG-DASH的介绍,是bitcodin对自己产品的推广介绍,好无语,可是又不想放弃,可是又觉得无味。索性全部交给电脑翻译吧,然后粘贴复制,所以大家看到的后面基本都不通顺。

建议:浪费你时间的一篇无用博文,您看了就当放松放松,千万不要往心里去,就这样吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: