问题标签 [peer-connection]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 在一个 Android Activity 中为 janus 的两个不同插件(VideoRoom 和 AudioBridge)使用 Single PeerConnection - Android
先决条件:
- 我在一项活动中添加了 VideoRoom 功能,并且运行良好
- 然后我在另一个活动中添加了 AudioBridge 功能,它也运行良好
- 然后我去在一个活动中添加这两个功能。VideoRoom 功能首先被调用,所以它工作得很好。然后 AudioBridge 功能调用通过 AudioBridge 加入 audioRoom,这里“ICE failed”发生在“hangup”janus 事件中,但 VideoRoom 调用工作正常。
- 我对两者都有 2 个单独的 PeerConnections。如果我注释掉 VideoRoom 通话,则音频通话已连接并且工作正常。
必需的:
我想要的是在同一个活动中同时拨打 2 个电话(即 VideoRoom 通话和 AudioBridge 音频通话)。
问题:
但在这里我猜 2 PeerConnections 与相同的 Janus 服务器不能工作。
我想制作 Single PeerConnection,这样我就可以将它用于两个呼叫(VideoRoom 和 AudioBridge)。
我怎么能做到?你能参考任何这样的例子吗?我找不到一个。
因为在为 VideoRoom 创建 PeerConnection 时,我正在为 VideoRoom 传递 PeerConnectionParameters。显然我不能使用它,因为我必须在连接时传递 AudioBridge 的参数。
谢谢。
webrtc - 具有多个对等连接的 WebRTC - 现有对等连接之间的流在创建新连接时停止
我正在为多个用户创建一个视频聊天应用程序。主持人发起呼叫,当第二个参与者加入时,在主持人和第二个参与者之间创建对等连接。
当第三个人加入时,在 1 & 3 和 2 & 3 之间创建对等连接(每个客户端有 n-1 个对等连接)。新连接按预期工作,但 1 和 2 之间的媒体流中断。
在创建对等连接后,我正在使用索引为每个对等连接注册适当的事件侦听器 -
在停止工作之前,索引为 0 的旧对等连接的任何事件都不会被触发。有关如何调试问题的任何线索。旧对等连接的连接状态是connected
webrtc - 获取错误 Plugin(...).createPeerConnection 不是函数
我有与这篇文章中所说的相同的问题Plugin(...).createPeerConnection is not a function
我使用 Sipml5 作为客户端和 Mizutech WebRTC 网关。我们是否需要 https 才能在 localhost 之外的 webrtc 上进行调用(在 localhost 上我使用 http)?
真的很感谢你的帮助。
webrtc - WEBRTC 清除对等连接
我创建了 webrtc 视频聊天应用程序,但是当用户离开房间然后再次加入房间时抛出错误,因为在 chrome 中以前的内部没有清理。刷新页面内部清理后,用户可以创建连接而不会出错。这是用户离开房间时的代码:
有人能帮我吗?我可以清除 webrtc 内部吗?
这是错误列表:
错误错误:未捕获(承诺中):OperationError:无法在'RTCPeerConnection'上执行'setLocalDescription':无法设置本地答案sdp:在错误状态下调用:稳定错误:无法在'RTCPeerConnection'上执行'setLocalDescription':无法设置本地答案 sdp:在错误状态下调用:稳定
DOMException:无法在“RTCPeerConnection”上执行“setRemoteDescription”:无法设置远程应答 sdp:在错误状态下调用:稳定
错误错误:未捕获(承诺中):InvalidModificationError:无法在“RTCPeerConnection”上执行“setLocalDescription”:SDP 与先前为该类型生成的 SDP 不匹配错误:无法在“RTCPeerConnection”上执行“setLocalDescription”:SDP 确实与之前为该类型生成的 SDP 不匹配
DOMException:处理 ICE 候选时出错
javascript - 在某些设备中,ICE 候选者无法在 Android 11 Chrome 上生成
在尝试 WebRTC 时,我发现它在 Chrome 中具有 Android 11(主要是三星、Vivo)的一些 Android 设备中产生了问题。但是,它在同一设备上的 Firefox 中运行良好。我在三星 Galaxy A03s (SM-A037F) 上进行了测试。
我试过这个 - https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/ 在 Chrome 中,没有收集候选人,但在 Firefox 中,候选人正在收集。
我在 Chromium 错误跟踪器中发现了一个类似的错误 - https://bugs.chromium.org/p/chromium/issues/detail?id=1115498 仍然问题似乎没有得到解决。
我们如何让它在 Chrome 浏览器中运行?请帮忙。
webrtc - WebRTC Answer SDP 返回 recvonly 而不是 sendrecv
我有一个基于 Web 的 WebRTC 客户端,并且具有以下功能:
- 步骤 1. CreateOffer 将音频和视频轨道设置为 sendrecv。
- 步骤 2. 将音频和视频轨道设置为 sendrecv 的接收和应答。点对点 A/V 呼叫在此处建立。
- 步骤 3. 使用“ ”接收重新邀请
a=group:BUNDLE 0 1 video_1
。在这里,我得到了第二个视频轨道(video_1
)a=sendonly
。
重新邀请 SDP 是:
- 第 4 步。作为对上述重新邀请的响应,我的 WebRTC 客户端正在创建一个 SDP,其中两个视频轨道都设置为
a=recvonly
.
以下是作为对上述重新邀请请求的答复而生成的 SDP:
我在获取 Re-Invite 时创建了一个新的对等连接,但使用的是我在步骤 1 中创建报价时获取的相同 localstreams 对象。在创建新的对等连接之前清除旧对等连接中的现有本地轨道。
在创建新的 peerConnection 时,添加本地轨道,例如:
在这里,我从上面的日志中确认音频和视频轨道都被添加到新创建的 peerConnection 对象中。
请指导我这里出了什么问题。
PS:相同的逻辑适用于 Android,其中 Re-invite Response sdp 包含a=sendrecv
track-1 和a=recvonly
track-2。
提前致谢。