接受来自WebRTC信号的报价(使用Python)

Joh*_*ews 5 python opencv webrtc

我试图在Python中建立对等服务器连接,使我能够解析视频流并进行处理。

在客户端,我将学习使用Firebase疯狂简单WebRTC视频聊天(带有Codepen演示)的工作

他们将Firebase用作信令服务器,并在连接到摄像机后,可以通过发送如下消息来呼叫对等方:

"{\"sdp\":{\"type\":\"offer\",\"sdp\":\"v=0\\r\\no=- 371050945269... (long crypted message)"
Run Code Online (Sandbox Code Playgroud)

我现在想知道如何使用此信息来接受此报价并用Python捕获来自此视频流的视频帧?

我尝试了以下操作,但这返回的是流为空:

import cv2

rtsp_url = 'crypto message above'
cap = cv2.VideoCapture({'\"sdp\":{\"type\":\"offer\",\"sdp\" ...')

while True:

    # reads frames (this returned empty)
    ret, img = cap.read()
Run Code Online (Sandbox Code Playgroud)

更新08/02:我研究了aiortc,但无法确定它与上面发送的消息之间的关系。此外,我无法在Windows计算机上安装和调试代码。

fir*_*ant 2

那是不行的,opencv 对 webrtc 不了解。您可以使用 javascript 在浏览器中抓取帧,然后通过 websocket 发送到 python 脚本,或者使用 python 中的 webrtc 库(如 gstreamer)。请参阅此使用 gstreamer 的 python 示例