首页 > 解决方案 > 打开 Gstreamer 管道时出现 cv2.VideoCapture 错误

问题描述

我正在尝试像这样在window10上使用opencv-python打开gstreamer管道

cv2.VideoCapture('videotestsrc ! video/x-raw,framerate=20/1 ! videoscale ! videoconvert ! appsink', cv2.CAP_GSTREAMER)

我已经安装了 gstreamer 并测试了它,但是 VideoCapture 没有打开。所以我使用print(cv2.getBuildInformation())并检查了 gstreamer 没有像下面那样构建

Video I/O:
    DC1394:                      NO
    FFMPEG:                      YES (prebuilt binaries)
      avcodec:                   YES (58.91.100)
      avformat:                  YES (58.45.100)
      avutil:                    YES (56.51.100)
      swscale:                   YES (5.7.100)
      avresample:                YES (4.0.0)
    GStreamer:                   NO
    DirectShow:                  YES
    Media Foundation:            YES
      DXVA:                      NO

现在,我不知道如何用 gstreamer 构建 opencv。:(

标签: opencvgstreamervideo-capture

解决方案


我遇到了同样令人沮丧的问题。幸运的是,这里有一个方便的指南来解决它:https ://medium.com/@galaktyk01/how-to-build-opencv-with-gstreamer-b11668fa09c

总之,您必须使用 cmake 手动构建 gstreamer opencv 才能正确配置它。根据我的经验,大约需要 1-2 小时,编译时间为 1 小时。希望这对你有用!


推荐阅读