gpt4 book ai didi

javascript - Jingle 和 webRTC 之间的互操作性

转载 作者:行者123 更新时间:2023-11-30 02:32:17 25 4
gpt4 key购买 nike

是否可以通过“设备”(而非浏览器)与 webRTC 客户端(浏览器)建立 XMPP/Jingle(音频视频) session ?

Jingle ICE offer/answer 协商完成后,浏览器上的 webRTC 应用程序应使用 session /流来接收从 Jingle 设备发送的音频/视频(例如使用 libjitsismack 库)。该设备没有任何 native webRTC 实现。我想,这需要将 XML 转换为 SDP(webRTC 使用 SDP)。 Otalk 和相关的库/工具似乎支持这一点,但找不到示例。有一些 JavaScript 演示 here .但是,这些演示假定浏览器环境/上下文。我不想通过外部服务器路由音频/视频(即,如果可能,避免使用视频桥)。

问题:

  • 是否可以使用 Jingle 建立 session (使用外部 XMPP 服务器进行身份验证和 session 建立)并让设备使用 jingle 库(特别是 libjitsi 等 Java 库)发送音频/视频/数据流或 smack 或任何其他可以在 node.js 下运行的 JavaScript 库/API),而不使用 webRTC API/库(在设备上)?

  • 有没有这样做的例子/解释?

  • 或者通过网桥路由音频和视频或使用带有 session 或“房间”设施的 MUC 服务器是唯一的解决方案吗?

最佳答案

问题 1:是的,这是可能的。您需要在浏览器端(在 javascript 应用程序中)在 SDP 和 Jingle 之间进行转换,因为 WebRTC 仅使用 SDP。

问题 2:一个例子是 Jitsi Hammer .它使用 Jingle 与支持 WebRTC 的浏览器(或 SFU/网桥,例如 Jitsi Videobridge)建立 session 。连接后,它会流式传输预先录制的音频和/或视频文件。它为 XMPP 使用 smack,为 WebRTC 部分使用 ice4j 和 libjitsi。

问题 3:浏览器并不真正关心它是否连接到另一个浏览器、MCU/SFU 或其他类型的设备。只要提供有效的remoteDescription SDP,并且另一端支持WebRTC所需的协议(protocol)(ICE、DTLS/SRTP)即可。

关于javascript - Jingle 和 webRTC 之间的互操作性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27145561/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com