【问题标题】:Peer-to-server audio streaming using WebRTC使用 WebRTC 的对等服务器音频流
【发布时间】:2014-07-19 06:01:01
【问题描述】:

我了解建立点对点连接

发起者对等

  • 初始化共享信号通道
  • 初始化 RTCPeerConnection 对象 (pc)
  • 使用 getUserMedia 请求本地流
  • 向电脑注册本地 MediaStream
  • 创建 SDP 提议并发送给对等方
  • 招 ICE 候选人
  • 注册远程 ICE 候选者以开始连接检查

接收者对等

  • 侦听并处理提供的远程报价
  • 注册远程 ICE 候选者以开始连接检查
  • 生成 SDP 应答并发送给对等体

但我的 WebRTC 用例是 对等服务器,其中接收到的流在我的 Node.js 服务器上进行处理。在我的用例中,服务器具有可公开路由的 IP 地址,并且正在侦听任何新的 RTCPeerConnection 请求。因此,在我的案例中,建立点对点连接所涉及的一些步骤似乎是不必要的。

  • Q1 建立对等服务器连接的步骤与建立对等连接的步骤有何不同?

特别

  • Q2 我还需要信号通道吗?
  • Q3 我还需要采取措施来吸引 ICE 候选人吗?

【问题讨论】:

    标签: webrtc


    【解决方案1】:
    1. 您的点对点连接与点对点没有什么不同。这意味着,您的服务器只是处理大量连接的对等点。对于与服务器的每个连接,您仍然需要一个唯一的连接,因此这些步骤在连接设置上完全没有区别。但您可以重复使用媒体流。
    2. 是的,您仍然需要一个信令服务器来为您的每个客户端建立和断开连接以及让您的服务器进行通信(id est 交换 ICE/SDP)。它可以是与您的 Node.js 服务器相同的 FQDN/物理框,但仍必须进行信号发送。
    3. 是的,在客户端。诚然,您的 ICE 候选者对于您的服务器来说将很少(因为它是可公开访问的)并且您可能不必查询它们(应该只使用本地 IP 以及如果它真正打开连接可用的端口,这不是非常安全...),但客户端仍然需要将候选者涓流到服务器,以便服务器的流可以到达客户端。

    【讨论】:

    • 感谢您的帮助。关于“但你可以重用媒体流”,你能详细说明一下吗?还有一件事。那么我的 Node.js 服务器不能充当信号服务器以及处理大量连接的对等服务器吗?
    • 是的,服务器既可以作为信令服务器,也可以作为对等方。媒体流重用仅在您进行双向流式传输时,这意味着服务器正在将某些内容流回客户端,您可以将相同的流对象用于许多不同的对等连接。
    • 感谢您的澄清。如果您碰巧知道一些进行点对服务器 WebRTC 通信的代码示例,请告诉我。干杯。
    猜你喜欢
    • 2022-10-15
    • 1970-01-01
    • 2013-07-29
    • 2018-06-25
    • 2013-03-05
    • 2018-01-18
    • 1970-01-01
    • 2015-01-26
    • 2015-04-09
    相关资源
    最近更新 更多