[Python] Install gstreamer support for opencv python package

Discussão em 'Python' iniciado por Stack, Julho 3, 2025.

  1. Stack

    Stack Membro Participativo

    I have built my own opencv python package from source.

    import cv2
    print(cv2.__version__)


    prints: 3.4.5

    Now the issue I am facing is regarding the use of gstreamer from the VideoCapture class of opencv. I am trying to get this mimimum working example running on python3

    cap = cv2.VideoCapture("videotestsrc ! appsink")

    if not cap.isOpened():
    print("Cannot capture test src. Exiting.")
    quit()

    while True:
    ret, frame = cap.read()
    if ret == False:
    break
    cv2.imshow("CVtest",frame)
    if cv2.waitKey(1) & 0xFF == ord('q'):
    break


    Capture fails, producing my print above (see if statement). I checked:

    import cv2
    print(cv2.getBuildInformation())


    prints:

    Video I/O:
    DC1394: NO
    FFMPEG: NO
    avcodec: NO
    avformat: NO
    avutil: NO
    swscale: NO
    avresample: NO
    GStreamer: NO
    libv4l/libv4l2: NO
    v4l/v4l2: linux/videodev2.h


    Seeing that, it made absolute sense that my gstreamer pipeline didn't work. I ensured WITH_GSTREAMER was set to ON during ccmake of OpenCV (which it already was). Still the issue maintained. I even tried setting WITH_GSTREAMER_0_10 to ON as well. Still no luck having gstreamer enabled from the cv2 python module.

    Before anyone suggests using pip3 to install cv2. I tried that, too. The issue with getting the package from pip is, it doesn't let you configure gstreamer support at all.

    Can anyone provide help here?

    Continue reading...

Compartilhe esta Página