OpenCV VideoCapture-ren HTTP proxy ezarpenak FFmpeg backend-arekin
Pasatu FFmpeg-en HTTP proxy aukera OPENCV_FFMPEG_CAPTURE_OPTIONS bidez, VideoCapture-k backend hori berariaz erabiltzen duenean.
VideoCapture-k hautatutako backend-ari uzten dio sare-lana. FFmpeg dakarren OpenCV konpilazio batekin, HTTP bideo URL batek FFmpeg-en http_proxy aukera jaso dezake capture-options ingurunearen bidez:
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-ren FFmpeg backend-ak aukera-katea gako;balio bikote gisa analizatzen du, bikote anitzen artean barra bertikal bat dagoelarik. Adibideak ingurunea ezartzen du OpenCV inportatu aurretik eta CAP_FFMPEG eskatzen du berariaz.
FFmpeg-ek http_proxy HTTP protokoloaren proxy URL gisa dokumentatzen du; HTTP proxy zerrendak HTTP medio-bide publiko baterako hautagaiak eskaintzen ditu. Horrek ez du erlaziorik gabeko capture backend bat, tokiko kamera bat edo nahierara RTSP/UDP trafikoa konfiguratzen.
Egiaztatu benetako OpenCV konpilazioaren backend-a eta FFmpeg gaitasunak. Proxy balio batek ezin du falta den backend edo deskodetzaile bat gehitu.
Medio-sarrera irekitzea eta fotograma bat deskodetzea ere emaitza bereiziak dira. Deskarga arrakastatsuaren ondorengo kodek akatsa ez litzateke proxy-ra iristeko ezintasunaren froga gisa jakinarazi behar.