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 సామర్థ్యాలను తనిఖీ చేయండి. ప్రాక్సీ విలువ లేని బ్యాకెండ్ లేదా డీకోడర్ను జోడించలేదు.
మీడియా ఇన్పుట్ తెరవడం మరియు ఫ్రేమ్ను డీకోడ్ చేయడం కూడా వేర్వేరు ఫలితాలు. విజయవంతమైన డౌన్లోడ్ తర్వాత కోడెక్ వైఫల్యాన్ని ప్రాక్సీని చేరుకోలేకపోయిందని రుజువుగా నివేదించకూడదు.