回收站清空恢复工具-teamviewer 6 0

widevine
2023年4月3日发(作者:nero6刻录软件下载)

DASH协议及各种码率⾃适应协议的对⽐

⼀、DASH协议

官⽅⽂档,包括⼀些⽩⽪书啊之类的各种:

标准⽂档:

这些⽩⽪书没找到中⽂版,所以我⾃⼰翻译了⼀下:

⼀个⽐较系统的综述⽂档

⼆、DASH相关⼯具

Dataset、DashJS、Bitmovin等很多。有⽣成MPD⽂件的,有播放的。

三、DASH协议基本点

简述:MPEG-DASH协议是MPEG委员会提出,各⼤流媒体公司和组织共同制定的标准,全名DynamicAdaptiveStreamingover

HTTP。⽬的是为Apple/Adobe/Microsoft等公司的码率⾃适应协议提供统⼀标准。⼤致内容可以看下第⼀部分中给出的三份⽩⽪

书。

DASH的分⽚(Segment)中可以包含mp4⽂件(fMP4),也可以包含TS⽂件,但整个标准更加prefer使⽤分⽚的mp4⽂件,新标准中好

像对3GPP协议也有⽀持,这个等看完再说。对于编码标准⽆指定。

与HLS协议的m3u8索引⽂件类似,DASH协议也提供了MPD(MediaPresentationDescription)描述⽂件(XML格式)来对媒体流

的下载地址、分辨率、码率、时长、各个分⽚、编码⽅式等进⾏了规定。

图⼀、MPD⽂件格式⽰意图

图⼆、MPD分层数据模型

MPD⽂件中的⼀些关键名词定义(参考⽩⽪书):Periods(区段)、AdaptationSet(AS,⾃适应⼦集)、Representation(表

⽰)、Segment(分⽚)、Subsegment(⼦分⽚)。其中⼀个MPD中包含⼀个或多个Periods,每个Periods包含⼀个或多个AS(每个

AS对应⼀组可供切换的码流),⼀个AS包含⼀组Representation(每个Representation对应不同的分辨率或码率,保持不变),⼀个

Representation内的内容被切分为多个Segment(⽅便在不同Segment间切换,粒度⼩),Segment可以进⼀步被切分为

Subsegment。

以下是某MPD⽂件中⼀个分⽚列表的⽰例:

frameRate="24"

bandwidth="1558322"

codecs="avc1.4d401f"width="1277"height="544">

复制代码

以下是⼀个完整的MPD⽂件结构⽰例:

图三、MPD⽂件⽰例

MPD可以以不同的⽅式,例如SegmentList,SegmentTemplate,SegmentBase和SegmentTimeline,根据使⽤情况下进⾏组

织。以下是转载了别⼈⼀个带有注释的MPD⽂件⽰例:

type="static">

ad/

4

4

AAAAR3Bzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAACcIARIBMBoNd2lkZXZpbmVfdGVzdCIKMjAxNV90ZWFycyoFQVVESU8=

AAAAR3Bzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAACcIARIBMBoNd2lkZXZpbmVfdGVzdCIKMjAxNV90ZWFycyoFQVVESU8=

car_4

SegmentListExample/

car_4

复制代码

MPEG-DASH使⽤:当前国内使⽤dash协议的公司并不多,主要是国内的流服务供应商及CDN供应商对此不够重视,此外真正关⼼码

率⾃适应功能的公司也不多(坦诚来说,⽬前国内的直播公司⼤多没什么技术积累,传统视频公司都已经形成了⾃⼰的CDN+P2P甚⾄

私有协议体系,当然也有使⽤DASH的,整体来说DASH的渗透率很低)。国外主要有youtube,hulu,netflix之类的⼤型视频⽹站使

⽤。

四、码率⾃适应协议对⽐

⽬前有HLS/DASH/HDS/SSTR(MSSTR/MSS)

协议HLSHDSMSSDASH

公司或组织AppleAdobeMicrosoftMPEG

索引⽂件m3u/m3u8f4mmrmpd

分⽚⽂件tsmp4/f4fmp4mp4/ts

使⽤Apple及国内很多⼤型直播少少国外视频及直播

编码标准H264/AAC,似乎也⽀持HEVC各种编码⽅式

延迟⼤相对较⼩

加密AES-128加密各种加密⽅式

可伸缩编码⽀持

分⽚下载⽅式单⼀灵活多样

待补充

更多推荐

widevine