चर्चा सच है ही अगर USB कैमरा अंदर सेंसर UVC अनुरूप (आज 'कैमरे के सबसे अनुपालन किया जा रहा है)।
डिफ़ॉल्ट रूप से वहाँ कोई एंड्रॉयड एपीआई बाहरी कैमरा के लिए उपलब्ध हैं। इसलिए यदि आप इस परियोजना के बारे में गंभीर हैं, तो आपके द्वारा किए गए काम में फर्मवेयर लिखना शामिल होगा जो कर्नेल ड्राइवरों से बात करता है और फिर एंड्रॉइड एप्लिकेशन लेयर पर डेटा प्रदर्शित करता है।
आप एक यूएसबी कैमरा डालते हैं तो, वहाँ कुछ चीजें है कि आप पहले जांच करने की आवश्यकता है।
1) क्या आपका कैमरा यूएसबी पोर्ट से बिजली प्राप्त कर रहा है? (यह आपका यूएसबी पोर्ट यूएसबी-OTG समर्थन यूएसबी पोर्ट दोनों लक्ष्य और मेजबान के रूप में कार्य कर सकते हैं होना चाहिए होने के लिए, चेक कैमरे पर रोशनी (यदि हो तो) या चमक नहीं कर रहे हैं या नहीं?)
2) है नोड/dev निर्देशिका में बनाया जा रहा है? (केवल कर्नेल में v4l2 और UVC समर्थन सक्षम होने पर, नोड बनाया जाएगा)। यदि नोड बनाया जा रहा है, तो अब आपके पास वास्तविक हार्डवेयर तक पहुंच है जो यूएसबी कैमरा है और आपका काम यहां से आसान हो रहा है। एंड्रॉइड फ़ाइल सिस्टम के अंदर ls -l/dev/v * की जांच करने के लिए और जांचें कि क्या वीडियो 0 या वीडियो 1 बनाया जा रहा है या नहीं।
4) यदि नोड बनाया गया है, आपको एक फर्मवेयर (यूवीसी) लिखने और वास्तविक हार्डवेयर से एक फ्रेम प्राप्त करने की आवश्यकता है। यह (यूवीसी) विभिन्न ioctl कॉल का समर्थन करता है जो कर्नेल में v4l2 परत से बात करते हैं और आपको फ्रेम लाएंगे।
ये फ्रेम अधिकतर YUYV422 या YUYV420 प्रारूप प्रारूप होंगे।
एक बार जब आप फ्रेम प्राप्त करते हैं, आरजीबी या JPEG में तब्दील (एंड्रॉयड समर्थन कन्वर्ट करने के लिए है) और कैनवास या imageView इनमें से जो भी आप की तरह पर प्रदर्शित करते हैं।
रिकॉर्डिंग के लिए आपको एन्कोडिंग के लिए ffmpeg का उपयोग करना पड़ सकता है। यह छवियों को वीडियो में परिवर्तित करेगा।
यदि आप रुचि रखते हैं तो मुझे बताएं और अधिक समर्थन की आवश्यकता है ... !!!!
स्रोत
2012-01-24 12:20:08
टैबलेट के कैमरे का उपयोग नहीं कर सकता क्योंकि यह "बोर्ड पर तय" है? – JoxTraex
यह एक औद्योगिक उपयोगिता के लिए है और मैं टैबलेट को स्थानांतरित नहीं कर सकता इसलिए मुझे एक यूएसबी कैमरा का उपयोग करना होगा। – neoffreeman