FFmpeg બેકએન્ડ સાથે OpenCV VideoCapture ની HTTP પ્રોક્સી સેટિંગ્સ
જ્યારે VideoCapture તે બેકએન્ડનો સ્પષ્ટ રીતે ઉપયોગ કરે ત્યારે OPENCV_FFMPEG_CAPTURE_OPTIONS દ્વારા FFmpeg નો HTTP પ્રોક્સી વિકલ્પ પસાર કરો.
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 ક્ષમતાઓ તપાસો. પ્રોક્સી મૂલ્ય ગુમ થયેલું બેકએન્ડ કે ડિકોડર ઉમેરી શકતું નથી.
મીડિયા ઇનપુટ ખોલવું અને ફ્રેમ ડિકોડ કરવી એ પણ અલગ પરિણામો છે. સફળ ડાઉનલોડ પછીની કોડેક નિષ્ફળતાને પ્રોક્સી સુધી ન પહોંચી શકાયું હોવાના પુરાવા તરીકે જાણ કરવી ન જોઈએ.