FFmpeg بیک اینڈ کے ساتھ OpenCV VideoCapture کی HTTP پراکسی ترتیبات
جب VideoCapture اس بیک اینڈ کو واضح طور پر استعمال کرے تو FFmpeg کا HTTP پراکسی آپشن OPENCV_FFMPEG_CAPTURE_OPTIONS کے ذریعے بھیجیں۔
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 صلاحیتوں کی جانچ کریں۔ پراکسی ویلیو کوئی غائب بیک اینڈ یا ڈیکوڈر شامل نہیں کر سکتی۔
میڈیا اِن پٹ کھولنا اور فریم ڈیکوڈ کرنا بھی الگ نتائج ہیں۔ کامیاب ڈاؤن لوڈ کے بعد کوڈیک کی ناکامی کو پراکسی تک نہ پہنچنے کا ثبوت بنا کر نہیں بتایا جانا چاہیے۔