从浏览器到WebRTC本机C ++应用程序的音频流

问题描述 投票:0回答:1

我已强制运行WebRTC对等连接示例,但该示例未在浏览器上运行。我正在尝试找到一种将浏览器中的视频和音频流传输到本机程序的方法。

有什么办法吗?

c++ webrtc
1个回答
0
投票

可以做到。 WebRTC旨在在两个WebRTC代理(通常是Web浏览器)之间以对等方式工作。您的本机程序必须成为第二个对等程序。

如果您需要依赖开源组件,一个很好的起点是:

  • 用于DTLS密钥交换的OpenSSL。
  • libsrtp加密RTP数据包。
  • ffmpeg,用于从浏览器解码PCM音频(如果需要视频,则为libvpx)。

您还需要处理ICE协商,这需要处理STUN消息。还从RTP数据包中提取媒体有效载荷。所有这些步骤也是在您确定了一种在您的应用程序和浏览器之间交换SDP提供和答复的信令方法之后。

您可能已经从头开始意识到这是一项主要任务。可能有一些商业图书馆可以完成这项工作,并为您省去很多麻烦。

[如果不吓到您,您仍然想尝试使用开源组件,那么我在progress sample中的工作“可能”会有所帮助。该示例与您所要求的相反,并且尝试将视频流发送到Chrome,而不是接收音频流。有用的方面是连接协商。该示例程序能够获取RTP数据包流(当前跟踪Chrome为什么不接受H264示例的原因)。它还使用Windows Media Foundation,它显然是Windows特有的。我也采取了许多捷径,特别是在RTP和STUN数据包处理方面。

© www.soinside.com 2019 - 2024. All rights reserved.