रास्पबेरी पाई कैमरा मॉड्यूल का उपयोग करते समय ENOSPC त्रुटि क्या होती है?


33

रास्पबेरी पाई कैमरा का उपयोग करने का प्रयास करते समय मुझे नीचे त्रुटि संदेश मिल रहा है

# raspistill -o /tmp/gate_now.jpg
mmal: mmal_vc_component_enable: failed to enable component: ENOSPC
mmal: camera component couldn't be enabled
mmal: main: Failed to create camera component
mmal: Failed to run camera app. Please check for firmware updates

इस पर शोध करने में, कई कारण हैं जो एक ENOSPC संदेश को जन्म दे सकते हैं, मैंने सोचा कि मैं संभावित कारणों को सूचीबद्ध करने के लिए यहां एक प्रश्न बनाऊंगा।


क्या आप इसे तापमान सेंसर के साथ भी उपयोग कर रहे हैं? मैं इस मुद्दे का सामना कभी भी किया था जब मैं अस्थायी सेंसर स्थापित करते समय modprobe कमांड चलाता था। देखें github.com/raspberrypi/linux/issues/435
Anconia

इस मुद्दे को भी OctoPi छवियों पर प्राप्त करना: github.com/guysoft/OctoPi/issues/31
GuySoft

यह 2019 है, और एक नया उत्तर (बंद) पोस्ट नहीं कर सकता, लेकिन मैंने पहले raspimjpeg स्थापित किया था जिसे मैं 'ps -ef' का उपयोग करने के लिए पर्याप्त भाग्यशाली था। "sudo pkill raspimjpeg" ने तब समस्या को हल किया।
गैविन सिम्पसन

जवाबों:


19

कैमरा सॉफ्टवेयर के लिए GitHub परियोजना पृष्ठ का उल्लेख है

त्रुटि: ENOSPC प्रदर्शित। कैमरा शायद GPU मेमोरी से बाहर चल रहा है। / बूट / फ़ोल्डर में config.txt की जाँच करें। Gpu_mem विकल्प कम से कम 128 होना चाहिए।

यह समस्या बताता है कि यह त्रुटि 1-वायर (W1) मॉड्यूल के लिए ड्राइवरों के साथ संघर्ष के कारण हो सकती है यदि मॉड्यूल सही क्रम में लोड नहीं किए जाते हैं।

आरपीआई मंचों पर यह पोस्ट कहती है कि समस्या को 1-वायर के लिए इस्तेमाल होने वाले पिन को 18 पर पिन करने से ठीक किया जा सकता है:

/boot/cmdline.txt:
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait bcm2708.w1_gpio_pin=18

2016 तक, GPU_MEM = 128 अब पर्याप्त नहीं है। इसे 128 से बढ़ाकर 144 करने से त्रुटि दूर हो गई।


मुझे लगता है कि आपको gpu_mem से मतलब है, gpio_mem से नहीं।
tedder42

14

मैं पीआई पर गति का उपयोग करता हूं, अगर मैं रास्पिस्टिल चलाना चाहता हूं, तो मुझे गति को रोकना होगा (जो आंदोलन का पता लगाने के लिए कैमरे का उपयोग भी कर रहा है)।

pi@raspberrypi ~ $ sudo /etc/init.d/motion stop
[ ok ] Stopping motion detection daemon: motion.
pi@raspberrypi ~ $ /usr/bin/raspistill -o cam2.jpg
pi@raspberrypi ~ $ sudo /etc/init.d/motion start
[ ok ] Starting motion detection daemon: motion.

हालांकि यह एक उत्तर हो सकता है, यह निश्चित रूप से कुछ विस्तार से सुधार होगा।
बेक्स

यह गति नहीं थी कि मैं दौड़ रहा था, लेकिन मेरे पास कैमरे का उपयोग करके एक और डेमॉन था, और जब मैंने रोका कि मुझे त्रुटि मिलना बंद हो गया।
रिचर्ड वाइसमैन

हां, लगता है कि कैमरा केवल एक प्रक्रिया द्वारा नियंत्रित किया जा सकता है।
स्कीम

10

"सामान्य परिस्थितियों में कभी भी आरपीआई-अपडेट चलाने की आवश्यकता नहीं होती है क्योंकि यह आपको हमेशा अग्रणी किनारे फर्मवेयर और कर्नेल के लिए मिलता है और क्योंकि यह एक परीक्षण संस्करण हो सकता है जो आपके आरपीआई को अनबूटे छोड़ सकता है"। https://www.raspberrypi.org/forums/viewtopic.php?p=916911#p916911 यहां तक ​​कि आरपीआई-अपडेट प्रलेखन अब भी चेतावनी देता है "यहां तक ​​कि रास्पियन पर भी आपको केवल एक अच्छे कारण के साथ इसका उपयोग करना चाहिए। इससे आपको नवीनतम रक्तस्राव बढ़त मिलती है। कर्नेल / फर्मवेयर। "

मुझे भी यही समस्या थी। एक फर्मवेयर अपडेट ने इसे हल किया।

sudo rpi-update

इसने मेरे लिए इसे हल किया, और मेरे लिए रास्पिकैम 2.1 काम करने के लिए आवश्यक लग रहा था (मैंने अपडेट से पहले रैपिकैम 1.3 का सफलतापूर्वक उपयोग किया); अद्यतन ने मुझे अपग्रेड 4.1.7-v7+किया 4.9.25-v7+, जिसने नए मॉडल को काम किया। से बदलने GPIO_MEM=128के लिए GPIO_MEM=144इस मामले में मेरे लिए आवश्यक नहीं था।
nh2

9

मुझे भी यही समस्या थी। कई अन्य पदों की तुलना में, सबसे अधिक संभावना है कि दो प्रक्रियाएं / एप्लिकेशन एक ही समय में PiCam तक पहुंचने की कोशिश कर रहे हैं। यह ffmpeg स्ट्रीमिंग, मोशन, रास्पिविड, रास्पिस्टिल आदि हो सकता है।

मेरी $ 0.02


सच :)) समय की कुछ राशि खो दी, मैं भूल गया कि मैंने प्रस्ताव प्रक्रिया बैकएंड पर स्थापित की है, कैमरे तक पहुंचने से रोक रहा है
soField

2
या ऑक्टोप्रिन्ट (जैसा कि यह मेरे लिए था)
सारण

मैं दोनों रास्पिड और एक अजगर स्क्रिप्ट को चलाने की कोशिश कर रहा था जो पिकमेरा लाइब्रेरी का उपयोग करता है। वे एक साथ नहीं चल सकते
Dante

बहुत बहुत धन्यवाद मैं भी वही गलती कर रहा था, लेकिन अन्य पोस्ट ने मुझे अपने फर्मवेयर, डिस्ट पैकेज आदि समस्या को अपडेट करने में मदद की, जब तक मैंने ऐसा नहीं किया sudo service motion stop। और कैमरा फिर से काम करने लगा।
अमित रे

बस मेरी स्थिति और समाधान की पेशकश की। मैंने picameraएक पायथन स्क्रिप्ट में आयात किया था , लेकिन यह काम नहीं कर रहा था इसलिए मैंने raspistillइसके बजाय स्क्रिप्ट के अंदर कमांड लाइन कॉल से उपयोग करने का निर्णय लिया । import picameraइससे पहले कि मैं इसके साथ उपयोग कर सकता था, इसलिए मैंने कैमरा संसाधन को नहीं निकाला raspistill
किम्बर्ली डब्ल्यू

6

मैं हाल ही में एक ENOSPEC त्रुटि की एक ही समस्या का अनुभव किया। मेरे मामले में सभी चीजें पूरी तरह से चल रही थीं, जब तक मैंने अपना कैमरा एक पीकैम हाउसिंग में नहीं डाला था। मुझे यह आवास मिला (यहां तक ​​कि अगर पिज़्मेरा के लिए desinged) भी चिप को धक्का देता है जहां तक ​​कैम और बोर्ड के बीच कनेक्टर ढीला था। इसे वापस करने से मेरी समस्या हल हो गई। यह शायद यह देखना आसान नहीं है कि क्या कनेक्टर ठीक से जगह पर है जो मिसअर्थरिटेशन का कारण बनता है।

मुझे लगता है कि यह सामान्य मामला नहीं होगा लेकिन जैसा कि पहली पोस्ट ने सुझाव दिया है कि इस त्रुटि के संभावित कारणों की सूची को बढ़ा देना चाहिए।


2

मेरे पास एक ही त्रुटि संदेश था क्योंकि मैंने कैमरे को सक्षम करने के बाद फर्मवेयर (के माध्यम से sudo rpi-update) को अपडेट नहीं किया था । मैंने कुछ दिन पहले ही फर्मवेयर को अपडेट किया था और मुझे लगा कि यह पर्याप्त होगा, लेकिन चूंकि कैमरा वापस सक्षम नहीं था, इसलिए उसने मदद नहीं की।raspi-config


2

मेरे मामले में यह सिर्फ इतना था कि मैंने कैमरा संलग्न करने के बाद अपने पीआई को रिबूट नहीं किया था।


यह संचालित होने पर कभी भी कैमरे को पाई से न जोड़ें!
दिमित्री ग्रिगोरीव

1

मैंने पिछले RASPBIAN STRETCH LITE (9.4 - 2018-06-27) के साथ PI3B v1.2 में PI CAMERA 2.1 के साथ कोशिश की है, सभी पूरी तरह से अपग्रेड (उपयुक्त-अपग्रेड)

यदि यह कमांड इस तरह से " पता = 1 " वाले कैमरे का पता नहीं लगाता है :

pi@raspberrypi:~ $ vcgencmd get_camera
supported=1 detected=1

फिर कनेक्शन की समस्या है। जांचें कि क्या केबल दोनों तरीके पिन के अच्छे पक्ष के साथ हैं (और निश्चित रूप से "कैमरा" बस से जुड़ा हुआ है, न कि "डिस्प्ले" बस जो समान आकार हैं)।

(ज़ाहिर है, रासपी-विन्यास और रीबूटिंग के साथ कैमरा इंटरफ़ेस सक्षम करने के बाद)

यदि यह काम नहीं करता है, तो आमतौर पर यह कैमरा के साथ एक हार्डवेयर समस्या होती है और त्वरित विकल्प एक नए के साथ कैमरा को बदलना है।

अगर पता चला = 1 लेकिन रास्पिस्टिल का उपयोग करने की कोशिश करते समय यह संदेश दिखाई देता है:

pi@raspberrypi:~ $ raspistill -o test.jpg
mmal: mmal_vc_component_enable: failed to enable component: ENOSPC
mmal: camera component couldn't be enabled
mmal: main: Failed to create camera component
mmal: Failed to run camera app. Please check for firmware updates

फिर कनेक्शन ठीक हैं, लेकिन सुनिश्चित करने के लिए समस्या कैमरे के साथ एक हार्डवेयर समस्या है और आपको एक नए के लिए कैमरा बदलना होगा। यह एक दोषपूर्ण कैमरा है, क्योंकि इसे हल करने के लिए समय बर्बाद मत करो। यदि आपको एक नया मिलता है तो यह काम करेगा।


फिर भी आप यह नहीं कह सकते कि कैमरा काम नहीं कर रहा है। मेरे पास ये सभी मुद्दे थे और जब मैंने http: // {my ip}: 8081 /? एक्शन = स्ट्रीम का उपयोग करके लाइव स्ट्रीमिंग की तो यह काम कर रहा था। इसका मतलब है कि raspimjpeg चल रहा था। यह संभवतः तब होता है जब आपके पास पहले से ही कैमरे का उपयोग करने की एक या अधिक प्रक्रिया होती है क्योंकि पता लगाया गया = 1 का अर्थ है कि कम से कम यह कैमरे के साथ संपर्क करने में सक्षम है।
अमित रे

0

मेरे मामले में, मुझे ड्राइवर को उतारने के लिए modprobe का उपयोग करना पड़ा: sudo modprobe -r bcm2835-v4x2

फिर कैमरे पर लाल एलईडी को बंद कर दिया जाता है, और मैं कैमरे को फिर से सक्षम करने के लिए रास्पिड का उपयोग कर सकता हूं।


0

मेरे मामले में मुझे कैमरे पर केबल को फिर से लिखने की आवश्यकता थी। मैंने एक मामले के माध्यम से केबल को खिलाने के लिए इसे काट दिया था; इसने अच्छा संबंध नहीं बनाया होगा।


0

मुझे अपने AIY विजन किट (Pi Zero W) पर वह त्रुटि मिली क्योंकि मैं कैमरा डेमो ऐप को बंद करना भूल गया:

sudo systemctl stop joy_detection_demo

-1

मैंने chmod 666 / dev / video0 द्वारा मेरा हल किया

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.