VideoCapture желілік жұмысты өзі таңдаған бэкендке жүктейді. FFmpeg бар OpenCV құрастырмасында HTTP бейне URL-і FFmpeg-тің http_proxy опциясын capture-options ортасы арқылы ала алады:

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-ның FFmpeg бэкенді опциялар жолын key;value жұптары ретінде талдайды, бірнеше жұп арасында тік сызық болады. Мысал OpenCV импортталар алдында ортаны орнатып, CAP_FFMPEG-ті анық сұрайды.

FFmpeg http_proxy-ді HTTP протоколының прокси URL-і ретінде сипаттайды; HTTP прокси тізімі қоғамдық HTTP медиа маршруты үшін үміткерлер ұсынады. Бұл байланыссыз capture бэкендін, жергілікті камераны немесе еркін RTSP/UDP трафигін конфигурацияламайды.

Нақты OpenCV құрастырмасының бэкенді мен FFmpeg мүмкіндіктерін тексеріңіз. Прокси мәні жетіспейтін бэкенд немесе декодерді қоса алмайды.

Медиа кірісін ашу және кадрды декодтау да бөлек нәтижелер. Сәтті жүктеуден кейінгі кодек қатесін проксиге қол жетпеді деген дәлел ретінде хабарлауға болмайды.

Қатысты мақалалар