VideoCapture ağ işini seçtiği arka uca devreder. FFmpeg içeren bir OpenCV derlemesinde, bir HTTP video URL'si FFmpeg'in http_proxy seçeneğini yakalama seçenekleri ortamı üzerinden alabilir:

import os
os.environ['OPENCV_FFMPEG_CAPTURE_OPTIONS'] = (
    'http_proxy;http://proxy.example:8080'
)

import cv2
capture = cv2.VideoCapture(
    'http://media.example/video.mp4',
    cv2.CAP_FFMPEG,
)
try:
    if not capture.isOpened():
        raise RuntimeError('Video input did not open')
    ok, frame = capture.read()
finally:
    capture.release()

OpenCV'nin FFmpeg arka ucu seçenek dizesini anahtar;değer çiftleri olarak ayrıştırır, birden çok çift arasında dikey çizgi bulunur. Örnek, ortamı OpenCV içe aktarılmadan önce ayarlar ve CAP_FFMPEG'i açıkça ister.

FFmpeg, http_proxy'yi HTTP protokolünün proxy URL'si olarak belgeler; HTTP proxy listesi herkese açık bir HTTP medya yolu için adaylar sunar. Bu, ilgisiz bir yakalama arka ucunu, yerel kamerayı veya rastgele RTSP/UDP trafiğini yapılandırmaz.

Gerçek OpenCV derlemesinin arka ucunu ve FFmpeg yeteneklerini denetleyin. Bir proxy değeri eksik bir arka uç veya kod çözücü ekleyemez.

Medya girişini açmak ve bir kareyi çözmek de ayrı sonuçlardır. Başarılı bir indirmeden sonraki kod çözücü hatası, proxy'ye ulaşılamadığının kanıtı olarak bildirilmemelidir.

İlgili makaleler