VideoCapture നെറ്റ്‌വർക്കിംഗ് ജോലി അത് തിരഞ്ഞെടുത്ത ബാക്കെൻഡിന് നൽകുന്നു. FFmpeg ഉള്ള OpenCV ബിൽഡിൽ, ഒരു HTTP വീഡിയോ URL-ന് ക്യാപ്ചർ ഓപ്ഷനുകളുടെ പരിസ്ഥിതിയിലൂടെ FFmpeg-ന്റെ http_proxy ഓപ്ഷൻ ലഭിക്കാം:

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 മീഡിയ റൂട്ടിന് സ്ഥാനാർത്ഥികൾ നൽകുന്നു. ഇത് ബന്ധമില്ലാത്ത ക്യാപ്ചർ ബാക്കെൻഡോ, പ്രാദേശിക ക്യാമറയോ, അനിയന്ത്രിതമായ RTSP/UDP ട്രാഫിക്കോ കോൺഫിഗർ ചെയ്യുന്നില്ല.

യഥാർത്ഥ OpenCV ബിൽഡിന്റെ ബാക്കെൻഡും FFmpeg കഴിവുകളും പരിശോധിക്കുക. പ്രോക്സി മൂല്യത്തിന് കാണാത്ത ബാക്കെൻഡോ ഡീകോഡറോ ചേർക്കാനാവില്ല.

മീഡിയ ഇൻപുട്ട് തുറക്കുന്നതും ഫ്രെയിം ഡീകോഡ് ചെയ്യുന്നതും വെവ്വേറെ ഫലങ്ങളാണ്. വിജയകരമായ ഡൗൺലോഡിന് ശേഷമുള്ള കോഡെക് പരാജയം പ്രോക്സി എത്തിച്ചേരാനാകാത്തതിന്റെ തെളിവായി റിപ്പോർട്ട് ചെയ്യരുത്.

അനുബന്ധ ലേഖനങ്ങൾ