Skip to content

Latest commit

 

History

History
39 lines (29 loc) · 1.41 KB

16.md

File metadata and controls

39 lines (29 loc) · 1.41 KB

添加内容

  • 新增了符合webrtc规范的api
  • 添加了一个例子

说明

  • 将之前模拟的sdp answer进行了拆分

    • 找本机ip的函数放在ice目录
    • 模拟sdp answer的放到sdp目录
    • 将随机产生ice用户名和密码的函数,拆分出来充当工具函数
  • 将之前ice中的包处理(包数据的处理),提出来,放到网络层,也就是network目录

  • 添加的例子很简单,目的是用于和浏览器交互,目前局限于sdp的交互,和sdp的解析识别

    • sdp是用base64进行了加密,使用之前需要解密
    • RTCPeerConnect做了两件事:处理远端sdp,生成本地sdp answer(就是模拟的只支持vp8的)
    • 之后将sdp answer进行base64编码,甩给网页去处理

符合webrtc规范的api

创建了一个RTCPeerConnection结构体

这个结构体也是一个初版,包含以下属性:

  • 一个函数值来处理媒体数据
  • 一个本地sdp
  • 一个dtls配置
  • ice用户名和密码

包含以下方法:

  • 创建本地sdp offer
  • 处理远端sdp
  • 处理流

这些就是webrtc中规定的,要能产生sdp offer;能处理远端sdp;能处理流

本地sdp offer的生成,其中包含了很多信息:

  • 后续udp传媒体数据时的认证信息:dtls配置
  • ice候选匹配信息:ice的用户名和密码(因为到此,都没有用到穿透,所以都是随机字符串)
  • ice候选:本地ice + udp + 端口