【问题标题】:How to tell if pc.onnegotiationneeded was fired because stream has been removed?如何判断 pc.onnegotiationneeded 是否因为流已被删除而被解雇?
【发布时间】:2015-05-02 07:34:54
【问题描述】:

我正在处理一个 RTCPeerConnection (pc),它有一个名为 onnegotiationneeded 的事件处理程序。

当使用pc.addStreampc.removeStream 添加或删除完整的媒体流时,会触发“onnegotiationneeded”。

是否可以在 onnegotiationneeded 函数内部判断它是否因为添加或删除了流而被执行?因为通过阅读文档我找不到那个状态。

目前,当我执行pc.addStreampc.removeStream 时,我正在切换一个标志。这个标志可以帮助我在onnegotiationneeded 中判断它是否由流删除触发。

但我想知道浏览器(Chrome 40 或 Firefox 36)API 是否已经提供了这样的属性?

【问题讨论】:

    标签: javascript html webrtc sdp peer-connection


    【解决方案1】:

    MDN documentation for the onnegotiationneeded handler 声明:

    这应该设置为您提供的一个函数,该函数传递一个 参数:一个Event对象,包含negotiationneeded事件。 事件中没有提供其他信息;任何你 需要,你可以通过检查的属性得到 RTCPeerConnection.

    所以基本上,你不能单独通过回调来做到这一点。但您也许可以将它与onstreamaddedonstreamremoved 处理程序一起使用

    您可能会找到一个舒适的解决方案来跟踪添加的曲目和流here

    【讨论】:

      猜你喜欢
      • 2011-05-19
      • 1970-01-01
      • 2022-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多