2012-07-09 12 views
8

मैं opencv के लिए स्टीरियो जोड़ी प्राप्त करने का प्रयास करता हूं। मैं यूएसबी में लॉजिटेक बी 9 10 और लॉजिटेक सी 9 10 वेबकैम को जोड़ता हूं। लेकिन यह त्रुटि है। मैंने quirks parametrs के साथ खेला और mplayer में outfmt=mjpeg सेट, लेकिन यह त्रुटि फिर से है।libv4l2: स्ट्रीम चालू करने में त्रुटि: डिवाइस पर कोई स्थान नहीं छोड़ा गया

मुझे यूवीसीवीडियो या यूएसबी ड्राइवरों में बग कहां मिल सकता है? मुझे किस निगरानी या डीबगिंग उपकरण का उपयोग करना चाहिए?

+0

पहले चरण के रूप में, क्या आपने जांच की है कि आपके आउटपुट डिवाइस पर पर्याप्त जगह शेष है? –

+0

बेशक, 5 जीबी से अधिक। – victor1234

+0

उस संक्षेप में पांच गिगाबिट का अर्थ है। आप शायद जीबी या जीबीबी मतलब है। –

उत्तर

8

यह एक बुरी तरह से त्रुटि संदेश है; कारण नियंत्रक पर पर्याप्त यूएसबी बैंडविड्थ नहीं है।

जैसा कि आपने अनुमान लगाया है, अगर आप अपने कैमरे को एमजेईपीजी का उपयोग करने के लिए प्राप्त कर सकते हैं तो आपकी समस्या का समाधान हो जाएगा।

ओपनसीवी अधिग्रहण करने के लिए एफएफएमपीईजी का उपयोग कर रहा है, (लिनक्स बिल्ड में आम तौर पर एफएफएमपीईजी समर्थन होता है) और ओपनसीवी दस्तावेज़ स्वीकार करते हैं कि एफएफएमपीईजी का उपयोग होने पर आप अधिग्रहण प्रारूप को बदल नहीं सकते हैं।

मेरे शोध में पाया गया है कि आपको FFMPEG कॉन्फ़िगरेशन को बदलने की आवश्यकता है।

कैमरे को विभिन्न यूएसबी नियंत्रकों को ले जाने का प्रयास करें यदि आप कर सकते हैं।

+0

एमजेईपीजी का उपयोग करने के लिए आप अपना कैमरा कैसे प्राप्त करते हैं? ओपनसीवी में या कैमरा ड्राइवर में कहीं? – bakalolo

+0

इसे किसी भी [यूएसबी एडाप्टर कार्ड] द्वारा हल किया जा सकता है (https://www.newegg.com/Product/ProductList.aspx?Submit=ENE&DEPA=0&Order=BESTMATCH&N=-1&isNodeId=1&Description=pci+usb+card) , जो ऑनबोर्ड नियंत्रक के साथ आता है? या मेजबान स्मृति भी एक समस्या होगी जबकि डीएमए? –

+0

हां, एक और नियंत्रक जोड़ने से –

0

यह यूएसबी नियंत्रक अंतरिक्ष से बाहर चलने में एक समस्या है।

यह आमतौर पर डिवाइस को एक अलग यूएसबी पोर्ट में प्लग करके तय किया जा सकता है। उदाहरण के लिए मेरे पास मेरे बोर्ड और यूएसबी 2 बंदरगाहों और यूएसबी 3 बंदरगाहों पर ईएसएटीए पोर्ट हैं। यदि आप पहले यूएसबी 2 पोर्ट्स का उपयोग कर रहे थे तो यूएसबी 3 पोर्ट्स आज़माएं।

आप के माध्यम से

cat /sys/kernel/debug/usb/devices | grep "B: " 

Ubuntu पर कमांड लाइन के माध्यम से वीडियो कार्ड आवंटन देख सकते हैं आप distro के आधार पर sudo का उपयोग करना पड़ सकता है। यदि आप खिड़कियां हैं, या ओएसएक्स क्षमा करें, तो मुझे उन प्रणालियों के समाधान नहीं पता हैं।

मेरे परिणाम इस तरह दिखते हैं।

B: Alloc= 0/800 us (0%), #Int= 0, #Iso= 0 
B: Alloc= 0/800 us (0%), #Int= 0, #Iso= 0 
B: Alloc= 0/800 us (0%), #Int= 0, #Iso= 0 
B: Alloc= 0/800 us (0%), #Int= 0, #Iso= 0 
B: Alloc=140/900 us (16%), #Int= 4, #Iso= 0 
B: Alloc= 0/900 us (0%), #Int= 0, #Iso= 0 
B: Alloc= 17/900 us (2%), #Int= 1, #Iso= 0 
B: Alloc= 0/900 us (0%), #Int= 0, #Iso= 0 
B: Alloc= 0/800 us (0%), #Int= 0, #Iso= 0 
B: Alloc= 0/800 us (0%), #Int= 1, #Iso= 0 
B: Alloc= 0/800 us (0%), #Int= 0, #Iso= 0 
2

यह मेरे

sudo rmmod uvcvideo 

sudo modprobe uvcvideo quirks=128 

के लिए आकर्षण के रूप में काम करता है यह हर रिबूट रीसेट कर दिया जाएगा। इस काम करता है, तो निम्न फ़ाइल बनाने: sudo vi /etc/modprobe.d/uvcvideo.conf लाइन युक्त इस लिंक options uvcvideo quirks=128

जांच http://renoirsrants.blogspot.in/2011/07/multiple-webcams-on-zoneminder.html

+0

अद्भुत मदद मिलेगी! अच्छा काम ब्रोस्की! – bakalolo

0

मैं सिर्फ इस मुद्दे में पड़ गए और यह पता चला है कि मैं एक के लिए मेरा वेबकैम (Logitech QuickCam ज़ूम) कनेक्ट करने के लिए किया था यूएसबी 3.0 पोर्ट की बजाय यूएसबी 2.0 पोर्ट इसे पहले स्थान पर प्लग किया गया था।

संबंधित मुद्दे

 संबंधित मुद्दे