如何创建对python应用程序的视频和语音调用?

时间:2018-03-10 06:46:21

标签: python-3.x webrtc

我想为使用python开发的Web应用程序添加视频和语音调用。 我在互联网上搜索过它,我发现我可以用WebRTC来做,但这项工作是用JavaScript完成的,但我不知道如何用python做这个工作? 我在Santhon 3.6中使用Sanic作为Web框架。

另一方面,是否可以在python中使用socketio来完成这项工作? 我知道这个模块适合聊天应用程序。 感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

Sanic只是一个提供HTML和JavaScript的网络服务器。您也可以使用任何Web服务器,这对WebRTC无关紧要。 Web服务器不以任何方式与WebRTC代码交互。

视频聊天所需的所有WebRTC代码都将位于JavaScript文件中,您的浏览器将使用该代码(Firefox,Chrome,Opera等)。您需要在服务器中执行的操作是在对等方之间发送信号。对于此信令过程,您可以在python中使用socketio。

我建议您详细了解WebRTC https://codelabs.developers.google.com/codelabs/webrtc-web/#0

答案 1 :(得分:0)

构建WebRTC应用程序涉及以下几个方面:

  • 提供您的网络客户使用的网页和JavaScript代码。您可以使用纯静态文件,也可以使用您选择的服务器端框架。

  • 提供信号通道,允许参与者交换有关他们支持的媒体(音频,视频,数据频道)以及他们如何相互联系的信息。通常使用WebSocket,但这不是唯一的可能性。

  • 参加实际的WebRTC媒体交流。这实际上取决于你的用例。如果您正在进行一对一的音频/视频,那么WebRTC端点通常是Web浏览器,但它们也可以是本机应用程序。如果您正在构建类似IP语音服务的东西,那么很可能一个端点是浏览器,另一个端点是服务器,如Asterisk或FreeSWITCH。

如果您确实希望用户与使用Python编写的自定义服务器进行通信(例如,如果您使用OpenCV进行音频/视频处理),​​可以查看aiortc

https://github.com/jlaine/aiortc