इस प्रोजेक्ट के बारे में
op-cap, OBS के साथ उपयोग किए जाने वाले हाई-थ्रूपुट USB कैप्चर कार्ड को स्थिर करने के लिए एक Linux टूलकिट है। यह सस्ते HDMI कैप्चर डिवाइसों की सामान्य विफलताओं को लक्षित करता है: अचानक डिस्कनेक्ट, ड्राइवर हैंग, बफ़र करप्शन और OBS क्रैश।
मुख्य दृष्टिकोण: FFmpeg भौतिक कैप्चर डिवाइस को पढ़ता है और एक v4l2loopback वर्चुअल डिवाइस (डिफ़ॉल्ट /dev/video10, लेबल USB_Capture_Loop) पर लिखता है। फिर OBS हार्डवेयर के बजाय उस स्थिर लूपबैक से पढ़ता है, इसलिए हार्डवेयर हैंग होने पर केवल FFmpeg फ़ीड प्रभावित होती है, जिसे एक मॉनिटर सेवा स्वचालित रूप से पुनः आरंभ कर देती है।
README में वर्णित विशेषताएँ:
- स्वचालित क्रैश रिकवरी: USB डिवाइस विफल होने पर OBS पुनः लॉन्च किया जाता है, डिफ़ॉल्ट रूप से असीमित बार।
- स्ट्रीम पुनःआरंभ: सक्रिय स्ट्रीम का पता लगाने के लिए लॉग की निगरानी की जाती है और क्रैश के बाद उसे पुनः आरंभ किया जाता है।
- ऑटो-रीकनेक्ट: डिवाइस की निगरानी की जाती है और डिस्कनेक्ट होने पर फ़ीड पुनः आरंभ की जाती है।
- रीबूट किए बिना हैंग डिवाइसों को रिकवर करने के लिए USB रीसेट और ड्राइवर रीबाइंड।
- प्रदर्शन ट्वीक्स: USB ऑटोसस्पेंड अक्षम करता है और पावर सेटिंग्स समायोजित करता है, स्थायित्व के लिए udev नियम मार्गदर्शन के साथ।
- HDR हैंडलिंग मोड (auto, force HDR + tonemap, HDR passthrough, force SDR)।
- URL या फ़ाइल से वैकल्पिक ओवरले/वॉटरमार्क, साथ ही ऑन-स्क्रीन लोगो हटाने के लिए delogo और crop फ़िल्टर।
- इंस्टॉल के दौरान रिज़ॉल्यूशन और फ़्रेमरेट का स्वचालित फ़ॉर्मेट पता लगाना।
- Nvidia, AMD और Intel ड्राइवरों के लिए Wayland ग्राफ़िक्स ऑप्टिमाइज़ेशन, जो explicit sync और PipeWire समस्याओं का समाधान करता है।
इंस्टॉलेशन make build / make install के माध्यम से होता है, जो इंटरैक्टिव रूप से कैप्चर डिवाइस चुनता है और systemd सेवाएँ (usb-capture-ffmpeg.service, usb-capture-monitor.service) इंस्टॉल करता है। होस्ट एलियस sobs और cobs, OBS को क्रैश रिकवरी के साथ लॉन्च करते हैं, या तो अनबाउंड या /dev/video* डिवाइस चुनने के बाद।
एक इंटरैक्टिव मेंटेनेंस मेनू (scripts/maintenance.sh) नौ रिकवरी टूल प्रदान करता है: detect_device, disable_overlay, hard_reset, optimise_device, pick_delogo, repair, simulate_disconnect, uhubctl_reset और usb_reset। अतिरिक्त स्क्रिप्ट्स कैप्चर वैलिडेशन (फ़ॉलबैक रिज़ॉल्यूशन के साथ करप्शन और टाइमआउट निदान), डिवाइस ऑप्टिमाइज़ेशन, ड्राइवर ऑप्टिमाइज़ेशन, ऑटो-रीकनेक्ट, फ़ॉर्मेट पार्सिंग और एक त्वरित-संदर्भ चीट शीट को कवर करती हैं।
कॉन्फ़िगरेशन /etc/default/usb-capture में रहता है, जिसमें डिवाइस पथ, रिज़ॉल्यूशन, फ़्रेमरेट, इनपुट फ़ॉर्मेट, HDR मोड, ओवरले URL/फ़ाइल/स्थिति/स्केल, delogo टॉगल, बफ़र वैलिडेशन और फ़ॉलबैक रिज़ॉल्यूशन के साथ करप्शन थ्रेशोल्ड शामिल हैं।
एक सेफ़्टी लॉन्चर (obs-safe-launch.sh) डिवाइस हेल्थ मॉनिटरिंग, छोटी स्थिरीकरण देरी के साथ क्रैश रीस्टार्ट, स्ट्रीम ऑटो-रीज़्यूम, ~/.cache/obs-safe-launch/ के अंतर्गत लॉग कैप्चर, और लूपबैक, डिवाइस, ऑटो-रीज़्यूम तथा अतिरिक्त OBS आर्गुमेंट के लिए फ़्लैग जोड़ता है। USB हार्डवेयर रिकवरी के लिए sudo आवश्यक है; एक वैकल्पिक sudoers इंस्टॉलर यह सीमित करता है कि कौन सी रिकवरी स्क्रिप्ट बिना पासवर्ड चल सकती हैं।
आवश्यकताओं में ffmpeg, v4l-utils और v4l2loopback-dkms शामिल हैं, साथ में वैकल्पिक uhubctl और slop, तथा हार्डवेयर एक्सेलेरेशन के लिए GPU-विशिष्ट ड्राइवर।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.