【问题标题】:data channel using libjingle C/C++使用 libjingle C/C++ 的数据通道
【发布时间】:2014-06-29 07:57:26
【问题描述】:

我正在寻找一个使用 WebRTC 建立数据通道的非常基本的示例。给出的peer_connection 示例用于音频/视频,我无法运行它们来理解代码流并自己编写数据通道的代码。我已经在浏览器上使用 JavaScript 完成了这项工作,现在想对本机应用程序做同样的事情。

【问题讨论】:

    标签: webrtc libjingle


    【解决方案1】:

    您是否检查过 peerconnection.cc 中的数据通道创建 API?

    我看到了这个:

    talk_base::scoped_refptr<DataChannelInterface>
    PeerConnection::CreateDataChannel(
        const std::string& label,
        const DataChannelInit* config) {
      talk_base::scoped_refptr<DataChannelInterface> channel(
          session_->CreateDataChannel(label, config));
      if (!channel.get())
        return NULL;
    
      observer_->OnRenegotiationNeeded();
      return DataChannelProxy::Create(signaling_thread(), channel.get());
    }
    

    所以在 peerconnection_client 示例中,我认为您可以尝试使用 AddStreams 中的 peer_connection_ 在conductor.cc 中使用 peerconnection 创建数据通道并保留数据通道实例,然后在收到答案后尝试使用它发送数据。

    不幸的是,我现在没有编译环境,我自己无法尝试。

    希望你能做到。

    【讨论】:

      【解决方案2】:

      我使用的是旧版本的 webrtc。有一个名为 PCP_MAIN 的示例。此示例演示了两个对等方之间的基本文件传输。但是,这使用伪 TCP。让它作为数据通道工作并不难。可能您可能想看看 RTP 数据通道。

      我很想知道一些使用 SCTP 的示例。

      【讨论】:

      • 谢谢,目前我不是在寻找特定的传输协议,任何东西都可以。如果您有 RTP 的工作简单示例,请提供相同的示例,以便我至少可以了解 API 及其用法。
      猜你喜欢
      • 1970-01-01
      • 2015-07-15
      • 2019-01-24
      • 2010-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-02
      相关资源
      最近更新 更多