我正在使用带有 Pi 相机模块 v3 的 Raspberry Pi 4 Model B,我正在尝试启动一个流式传输相机源的 RTSP 流服务器,当我运行服务器脚本时,我一直在使用 this RTSP 库:
import cv2
from zephyr import Stream
if __name__ == "__main__":
stream = Stream(
url="rtsp://localhost:8554/test",
resolution=(1280, 720),
fps=30,
bitrate="2M"
)
cap = cv2.VideoCapture(0)
while True:
ret, frame = cap.read()
stream.send(frame)
我明白了:
Traceback (most recent call last):
File "/home/pi/testserver1.py", line 15, in <module>
stream.send(frame)
File "/home/pi/innov/venv/lib/python3.11/site-packages/zephyr/stream/stream.py", line 174, in send
frame = cv2.resize(frame, self.resolution)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
cv2.error: OpenCV(4.8.1) /io/opencv/modules/imgproc/src/resize.cpp:4062: error: (-215:Assertion failed) !ssize.empty() in function 'resize'
即使检测到我的相机:
(venv) pi@YassinePi:~ $ libcamera-still --list-cameras
Available cameras
-----------------
0 : imx708 [4608x2592 10-bit RGGB] (/base/soc/i2c0mux/i2c@1/imx708@1a)
Modes: 'SRGGB10_CSI2P' : 1536x864 [120.13 fps - (768, 432)/3072x1728 crop]
2304x1296 [56.03 fps - (0, 0)/4608x2592 crop]
4608x2592 [14.35 fps - (0, 0)/4608x2592 crop]
我尝试将索引从 1,-1,2 更改为无效
我想可能是因为这段代码是为台式机设计的,或者是我没有正确安装所需的包
第二个原因,由于我没有Raspbian操作系统的经验,我重新安装了操作系统并重新安装了软件包,仍然不起作用。
知道如何解决这个问题吗?或者有其他方法可以做到这一点?