网站后台模板 php网站转化分析
web/
2025/9/27 11:32:50/
文章来源:
网站后台模板 php,网站转化分析,福州企业网站制作,wordpress 发布时那今天呢#xff1f;我们来介绍一下sdp协议#xff0c;那实际上呢#xff1f;sdp协议非常的简单。我们如果拿到一个stp的文档去看的话#xff0c;那你要分阅里边的所有的内容会觉得很枯燥#xff0c;但实际上呢#xff0c;如果我们按照这张图所展示的结构去看stp的话。你…那今天呢我们来介绍一下sdp协议那实际上呢sdp协议非常的简单。我们如果拿到一个stp的文档去看的话那你要分阅里边的所有的内容会觉得很枯燥但实际上呢如果我们按照这张图所展示的结构去看stp的话。你就会觉得它没有那么复杂了那实际上呢每一个stp它都是嵌套的方式来进行定义的。那在它最外层呢是绘画层
在绘画层之内是媒体层那媒体层呢又分为了音频和视频。在音频里头它又对音频做了各种各样的定义而视频里边儿呢也同样的做了各种各样的定义。我们按照这种结构去给它进行一下拆分。你就会容易理解它里边儿所要表达的信息是什么了所以这张图呢非常的关键大家呢一定要把这张图记住。在看协议的相关文档的时候那就按照这张图所描述的这种结构去套
就很容易理解了。那下面呢我们再来看看的规范它这个规范啊也非常的清晰那主要就是ky 6中间用等号进行连接。等号的左边是k右边是value。对于k来说呢常见的k有MA CV so那其中m呢代表的是media也就是一个媒体。那媒体可以是音频可以是视频可以是应用 a呢表示属性当我们定义了某个媒体之后要对这个媒体进行进一步的说明。那就要通过a attribute进行进一步的这个定义啊 这是C呢就是connection代表连接。v代表版本我们在进行协商的时候版本一定要是一致的比如说一个用户的版本是一。第二个用户的版本是二这样他俩是没法进行协商的必须要保证他们使用的stp的协议版本是一致的。
s代表session也就是一个会话。a与b之间进行一个通讯 那这个呢就是一个会话。会话呢是一个全局的。 o代表owner就是谁拥有这个绘画好这是k。那value呢它的值就比较多了那具体含义呢 你可以查看rfc四五六六这个协议文档中呢对value做了详细的定义。那实际我们在了解stp协议的时候呢一般都是拿到一个实际的stp数据对照着stp数据去看每一个value它的值是什么含义
那很少呢直接去看这个文档因为这个文档还是比较大的我们去看的时候呢如果你没有一个实际的例子。直接去看这文档可能不太容易理解那如果你真的想去看这文档的时候呢可以直接在百度上搜rfc四五六六就可以搜到这篇文档。这就是stp规范那下面呢我们就来看一个具体的例子那这个呢就是我从一个实际的stp的例子中抽取出的一些重要的信息。那首先第一个就是我们的版本使用的是多少
比如我们在第一次进行协商的时候版本号是一。那第二次协商的时候呢版本号就变成二那第三次呢就是三它这个版本呢是不断累加的后边这个o呢就代表是就谁拥有它如果后边是干就是不太关心具体这个名字是谁了那后边这一串数字呢对于外边心思来说呢它是不实用的
所以这块呢它的含义呢没必要特别深究。其中的in呢代表internet IP 4代表IPV 4后边呢是你本机的IP地址。那一般都会写成幺二七点零点零点一这代表我们自己的本机再下边
m是非常关键的一个信息代表一个media。那每个呢只代表一种类型的数据要么是音频要么是视频要么是应用数据。对它不可能同时既包含音频又包含视频
这是不可能的所以它的第一个单词呢audio代表的这个媒体呢是一个音频数据。好后边的九代表它使用的端口号这个端口呢
对于外边tc来说它也不用它会使用自己的ice进行网络传输。那这个端口有一个特殊的意义如果这个端口是零表示两个用户之间进行媒体协商时没有成功。那如果不是零这个值呢是多少都无所谓后边呢是这个媒体所使用的传输协议。
那底层呢使用udp tls呢就是进行数据加密那在udp之上跑的是rtp。后边的sav TF表示的是支持rt CP协议那a呢代表audio v呢代表video p呢是protocol。f呢是feedback所以这几个单词的第一个字母好再后边的这一串数呢是那它可以是幺幺幺也可以是幺零三也可以是幺零四
那每个配具体代表的是哪个编辑码器那在后边呢都有定义。再接下来这个a就是对前面的这个media进行的扩展说明也就是attribute一个属性。MID代表的是media ID也就是说我们这个media它的ID是多少那冒号零表示的这个ID是零那再下来那对于这个media来说呢它对传输的rtp协议进行了扩展那如果rtp中的p是幺幺幺。它表达的意思是它使用的编解码器是oppos采样率呢是48000双通道。
这两个a呢都是对前面这个media的一个说明当他遇到下一个 m的时候前面的这个媒体就算结束了就开始一个新的媒体。那这个m呢表示这是一个视频的媒体后边是端口号好那再下来这些信息呢与这个音频是类似的。也就是它使用的传输协议udp rtp下边儿是palo tap九六幺零二那与音频类似后边儿这a呢是对这个媒体的一个说明。
那对于视频来说它的media ID是一那这个序号呢是自动增加的再下边这个rtp map是对payload type九六进行的说明。那p6使用的是VP 8这个编辑码器它的时钟频率呢是九万那这个呢就是一个stp的例子。当然这里所展示的这些信息呢都是一些比较关键的信息点。那除了这些信息之外呢还有很多的信息在里边那没有在这里列出来
是由于没法在一张PPT中容纳所有的信息所以我只挑出其中。最关键的向你做了展示那没有展示的那些信息每一个字段都是我们必须要掌握的并不是说我在这里没有展示你就可以不清楚了。不是这样的每一个字段我们都要知道它的含义是什么只有这样你才能看外边代码的时候读懂它的逻辑是什么。那在这里啊我有两个知识点要特别向你重点介绍一下那第一个呢就是ice four和ice light。
那这个信息呢是标准stp中啊不包含的那这里我们要重点介绍一下那首先我们来看一下ice light。那你在看sdp的真实的例子的时候呢经常会看到这个属性尤其是web rtc流媒体服务器中都会包含这个属性ice light。那它的含义是什么呢这就要说到y八二tc的ice了那对于y八二tc的ice我们在前面的课程中呢也向你做过介绍。那web rtc呢实现了自己的一套传输的控制
那这套控制呢就称为ice比如说每个web rtc的终端都会收集candidate。candidate呢又是有类型的不同的类型有不同的优先级那这些内容呢都属于ice的内容。那其中在进行ice的时候要做一次验证也就是说验证一下这一端给我提供的这个candidate的是否是有效的那验证应该是双方都要验证它使用的方法呢就是通过发送向对方发一个请求。那对端收到这个请求之后呢
要回一个response这样表明我这个candidate是可用的。如果服务端与客户端之间每个都要做这个流程的话那对于流媒体服务器来说它的负载就太重了。所以为了减轻这个负载就简化了这个逻辑。所以只要客户端进行验证就了那这样呢就提高了整个连接的这个效率。所以呢对于客户端来说它会发子弹request服务端返回子弹response就OK了
服务端呢不会向客户端再发送子弹request。那这个呢就叫ice light,客户端发送stun服务端回就好了这就是ice light
那ice four就是与ice light相对应的它是一个双方检测的过程也就是说连接的双方都要发送stand request。收到request之后呢都要回response它是这样一个过程这就是ice four与ice light那如果我们在一个stp中没有发现aice light这个属性。那默认呢它就是ice four也就是说双方都要进行这个检测对于外边tc来说呢
它默认使用的就是ice four。一般的流媒体服务器都使用ice light这个我们要清楚
那第二个呢就是plan b和unify plan。那plan b呢是web rtc以前默认使用的语法那什么意思呢就是如果对于同一种媒体类型有多个源的话。它使用属性进行区别也就是说对每一种媒体类型只有一个行比如音频有一个音频的行。视频呢有视频的行
如果在我们通讯的过程中有两个音频源那它要进行区分的时候呢是使用as src来进行区分。其中每一个音频源有一个自己的ssrc它们的这个ID呢是不一样的比如在这里一个是一二三四五六七。另外一个呢是七六五四三二一同时他们的cna me呢也是不一样的这是plan b而unit five plan呢又与他们不一样了。它是对每一个媒体流都有一个行就像我们刚才介绍的如果有两个音频的媒体源。
那对于unify plan来说呢它就有两个m行其中一个m行它的ssrc呢是一二三四五六七。那另外一个行它的呢是七六五四三二一这是他们的一个最主要的区别区别的关键点呢就是m行的个数。那在plan b中呢每一种类型只有一个m行而现在对于unify plan来说呢是每一个圆都有一个m行。那对于现在的外包tc来说它都统一使用unify plan
也就是plan b被淘汰了。当然对于一些老的浏览器它还会使用plan b。那这一个呢我们要清楚尤其是做一些兼容开发的时候那有的是用plan b有的是用unify plan。那这个时候呢我们要做好兼容那以上呢就是我们这节所要向你介绍的内容那在这节中呢我首先向你介绍了sdp协议的一个基本的规范。
它是由k value所组成的那另外呢我们要知道sdp它是分层的对这对于我们理解sdp来说呢非常的关键。那你了解了这个结构之后呢我们去看sdp就会非常容易那如果你不了解的话呢就觉得很绕没有逻辑感。那另外呢我通过一个实例向你讲解了sdp是如何组织这个媒体信息的。那最后呢我又向你介绍了两个重要的知识点一个是ice light ice four
另外一个呢是plan b和unified plan。那这两个点呢是wrtc对标准sdp的一些修改这我们要知道
那这里我需要特别强调啊对于sdp中的每一个信息。我们必须都要非常清楚它的含义是什么这一点是非常关键的这也是我学习web rtc的一个心得对只有你了解了sdp中的每一个信息。你才能在阅读代码的时候游刃有余否则的话呢很多逻辑你都看不懂不知道为什么要这么写不知道它定义那个属性是干什么用的。
这样对于我们理解外边儿tc来说呢就非常困难了那以上呢就是我们这节课的内容有任何的问题
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/81136.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!