VideoCapture delegeer netwerkwerk aan die agterkant wat dit gekies het. Met 'n OpenCV-bou wat FFmpeg verskaf, kan 'n HTTP-video-URL FFmpeg se http_proxy-opsie deur die opname-opsies-omgewing ontvang:

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 se FFmpeg-agterkant ontleed die opsiestring as sleutel;waarde-pare, met 'n vertikale streep tussen veelvuldige pare. Die voorbeeld stel die omgewing voordat OpenCV ingevoer word en vra CAP_FFMPEG uitdruklik aan.

FFmpeg dokumenteer http_proxy as die HTTP-protokol se proxy-URL; die HTTP-proxy-lys bied kandidate vir 'n openbare HTTP-media-roete. Dit konfigureer nie 'n onverwante opname-agterkant, 'n plaaslike kamera of willekeurige RTSP/UDP-verkeer nie.

Kontroleer die agterkant en FFmpeg-vermoens van die werklike OpenCV-bou. 'n Proxy-waarde kan nie 'n ontbrekende agterkant of dekodeerder byvoeg nie.

Om die media-invoer oop te maak en 'n raam te dekodeer is ook aparte resultate. 'n Kodek-fout na 'n suksesvolle aflaai moet nie as bewys gerapporteer word dat die proxy onbereikbaar was nie.

Verwante artikels