【问题标题】:Minimal WebRTC for native application without audio and video用于没有音频和视频的本机应用程序的最小 WebRTC
【发布时间】:2015-07-05 05:08:55
【问题描述】:

我有兴趣设计一个使用 DataChannels 但不使用音频和视频功能的 WebRTC/libjingle。音视频能力增加了很多依赖,依赖很大,很难交叉编译。是否有一个 WebRTC 构建的最小子集将仅分离出使用所有 sdp/stun/turn 等初始化 DTLS 数据通道所需的代码,同时保持与浏览器实现的兼容性?

【问题讨论】:

    标签: webrtc libjingle


    【解决方案1】:

    AFAIK 没有这种最小的、按比例缩小的、仅限数据通道的 libjingle 版本(或OpenWebRTC)。恕我直言,这样的版本看起来太特定于项目,而且不够通用,以至于 libjingle 开发人员无法对它感兴趣并对其进行维护。

    音频/视频功能确实添加了很多依赖项。然而,为 android 或 iOS 交叉编译它们相对容易。毕竟只需要编译它们。他们没有必要实际工作。如果只是使用数据通道,那么音频/视频功能甚至都不会被初始化。

    虽然音频/视频功能无法完全编译出来,但可以“遏制”。如果您查看webrtc-source-code/build/common.gypi,您会发现一个名为build_vp9 的变量默认为1。如果将其设置为0,则将删除一些与视频相关的依赖项。在.gyp 和.gypi 文件中有很多标志,我相信如果您调整它们,您将能够删除更多不必要的依赖项。

    如果您有兴趣为 Raspberry PI 或其他不基于 Android 或 iOS 的嵌入式平台构建 webrtc,我建议您使用OpenWebRTC,因为它对这些环境有更好的支持并且更容易交叉编译(您不必与 gyp 和 ninja 打交道。

    【讨论】:

    • OpenWebRTC 看起来很有趣。我已经与谷歌的东西斗争了几天,但没有取得多大成功。我正在尝试针对内存有限且根本没有视频/音频的最小设备。这可能有点专业,但随着时间的推移,我认为它会变得越来越普遍,因为当标准的 http/websocket 不够用时,WebRTC 是浏览器和设备之间通信的最佳方式之一。
    【解决方案2】:

    这就是你需要的 http://www.meshcommander.com/webrtc

    c 中的最小数据通道 WebRTC 实现,需要 openssl 用于 dtls。

    优点

    1. 非常精简。
    2. 直接交叉编译

    缺点

    1. 目前没有冰滴支持

    【讨论】:

    • 我尝试过使用这个库,发现它非常有问题且不可靠。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-01
    • 2016-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多