美文网首页
十九、媒体能力协商过程

十九、媒体能力协商过程

作者: ThemisHoo | 来源:发表于2019-04-29 16:18 被阅读0次

    注:以下图片来自慕课网,侵权可删

    RTCPeerConnection是WebRTC的核心类

    • 基本格式
      pc = new RTCPeerConnection([configuration])
    RTCPeerConnection方法分类
    • 媒体协商
    • Stream/Track
    • 传输相关方法
    • 统计相关方法
    媒体协商过程

    A创建offer形成一个SDP,通过云端信令channel传给B,在传之前要调一个setLocalDescription方法,触发一个非常重要的作用就是收集候选者;B端收到offer时,调用setRemoteDescription,将offer形成的SDP数据,放到自己远端的描述信息的槽里,然后回复一个Answer,Answer回复的是B本机的所有的媒体信息,网络信息,也会调用setLocalDescription方法,触发收集候选者;A收到Answer后存到自己的槽中;每个人都拿到两个SDP信息,在内部进行协商,取出交集,协商过程建立完成,进行下一步工作

    媒体协商方法
    • createOffer
      基本格式
      promise = myPeerConnection.createOffer([options])
    • createAnswer
      基本格式
      promise = myPeerConnection.createAnswer([options])
    • setLocalDescription
      基本格式
      promise = myPc.setLocalDescription(sessionDescription)
      sessionDescription是createOffer或createAnswer创建成功的结果
    • setRemoteDescription
      基本格式
      promise = myPc.setRemoteDescription(sessionDescription)
      sessionDescription是createOffer或createAnswer创建成功的结果
    Track方法
    • addTrack
      基本格式
      rtpSender = myPc.addTrack(track, stream...)
      track:添加到RTCPeerConnection中的媒体轨(音频track/视频track)
      stream:getUserMedia中拿到的流,指定track所在的stream
    • removeTrack
      基本格式
      myPc.remoteTrack(rtpSender)
    重要事件
    • onnegotiationneeded 协商事件
    • onicecandidate 收到候选者时触发的事件

    相关文章

      网友评论

          本文标题:十九、媒体能力协商过程

          本文链接:https://www.haomeiwen.com/subject/miwynqtx.html