Ubuntu 16.04 + OpenCV + FFMPEG + CUDA不打开默认摄像头

时间:2018-07-20 16:00:28

标签: python-2.7 opencv ffmpeg gpu

我正在尝试使用自己的FFMPEG构建和CUDA支持使用Python进行GPU视频处理的加速OpenCV。

我的应用程序必须支持任何类型的视频设备,包括 USB和IP摄像机

我有一个用ConfigParser解析的配置文件,该文件加载了摄像头设备路径,如OpenCV文档中所述,我们可以按索引号访问USB摄像头,而对于IP摄像头,我们使用RTSP协议,因此有时路径为{ {1}}或0

为了在OpenCV之后强制使用FFMPEG,我试图像下面这样打开视频捕获流:

rtsp://192.168.1.2/0

问题是,当我尝试打开默认的USB摄像机video_capture = cv.VideoCapture() stream_opened = video_capture.open(camera_path, cv.CAP_FFMPEG) 时,camera_path = 0方法始终返回 false ,但是当它是video_capture.open之类的RTSP时它会打开视频捕获流。

当我让OpenCV决定将使用哪个后端时,它将调用GStreammer并按如下所示打开捕获流:

camera_path = "rtsp://192.168.1.2/1"

我怀疑FFMPEG不支持从USB摄像机捕获视频,是吗? ffmpeg版本缺少某些功能吗?

video_capture = cv.VideoCapture(camera_path)

0 个答案:

没有答案