क्या एक ही समय में दो प्रक्रियाओं के लिए वेब कैमरा एक्सेस करना संभव है?


14

मैं Google+ हैंगआउट और इसी तरह के कॉन्फ़िगरेशन में चीज़ का उपयोग करने का प्रयास करना चाहूंगा, और मैं यह जानना चाहूंगा कि क्या वेबकैम के लिए दो प्रक्रियाओं का उपयोग करना संभव है, एक ही समय में वेब कैमरा तक पहुंच हो। मैंने अभी तक इसकी कोशिश नहीं की है, लेकिन इससे पहले कि मुझे लगता है कि मैं पूछूंगा।

तो, क्या यह संभव है?

जवाबों:


6

वैसे मैंने सिर्फ कोशिश की। दिलचस्प परिणाम।

मुझे स्काइप और पनीर और वेबकेम खिलौना और हैंगआउट (जो सभी काम करते हैं) मिले हैं और उन्हें एक साथ आजमाया है।

परिणाम:

आप एक ही समय में 2 चीजों पर एक ही वेबकैम का उपयोग नहीं कर सकते।

चीज़ (वर्किंग) + वेबकेम टॉय (काम नहीं करने वाला) + स्काइप (छोटा, टॉप राइट। नॉट वर्किंग)।

यहाँ छवि विवरण दर्ज करें

आप 2 चीजों पर 2 वेबकैम का उपयोग कर सकते हैं। (पनीर + वेबकेम खिलौना)।

यहाँ छवि विवरण दर्ज करें

Hangouts (काम नहीं कर रहा) + चीज़ (कार्य करना)

यहाँ छवि विवरण दर्ज करें

हैंगआउट (अपने आप पर काम करना)।

यहाँ छवि विवरण दर्ज करें

जब मैंने हैंगआउट खोला तो पनीर टूट गया। इसने दूसरों के साथ भी ऐसा ही किया, लेकिन मेरा इंटरनेट हर एक स्क्रीनशॉट अपलोड करने के लिए बहुत धीमा है (और मुझे संदेह है कि आप 30+ स्क्रीनशॉट की सराहना करेंगे) ...

यहाँ छवि विवरण दर्ज करें

मैं भी एक प्रतीकात्मक लिंक बनाने की कोशिश की /dev/video0और इसे के /devरूप में बचाने के लिए video2। यह काम नहीं किया।

मैं एक बार में 2 पनीर प्रक्रिया भी नहीं चला सकता।

यदि आपको करना है, तो मैं इसे पूर्ण स्क्रीन बनाने और 2 स्क्रीन रिकॉर्डिंग करने की सलाह दूंगा। मुझे संदेह है कि आप जो चाहते हैं, उसके लिए काम करेंगे।


धन्यवाद! यह संक्षिप्त है और मुझे बताता है कि मुझे क्या जानना चाहिए। अच्छा बगीचा Btw! जब समय सीमा समाप्त हो जाएगी (21 बजे जाने के लिए) तो इनाम दिया जाएगा। तब मैं इस टिप्पणी को हटा दूंगा।
रोलंडीएक्सॉर

@ मेव यह काम करने के लिए मेरा आखिरी प्रयास था :)
टिम

@Tim अगला उत्तर वही है जो आप देख रहे हैं यदि आप यहां आए हैं क्योंकि आपको ऐसा करने की आवश्यकता है।
इसियाह मीडोज

1
@impinball नहीं, बस यह एक दिलचस्प सवाल है!
टिम

14

खुशी से, अब, हाँ!

वर्तमान में गिटहब पर एक परियोजना है जो न केवल दो दिखा सकती है, बल्कि एक स्रोत से वीडियो उपकरणों की एक अनंत (केवल सिस्टम क्षमता से सीमित) संख्या है।

परियोजना कहा जाता है v4l2loopback। (निर्देशों के लिए README को देखने के लिए लिंक की जाँच करें और नीचे स्क्रॉल करें।)

आप v4l2loopbackइसके GitHub को क्लोन करके और इन कमांड को चलाकर स्थापित कर सकते हैं :

$ git clone https://github.com/umlaeute/v4l2loopback.git
$ cd v4l2loopback
$ make
$ sudo make install

उदाहरण

GStreamer, FFmpeg, MPlayer, और Skype के साथ इसका उपयोग करने के तरीके के नमूने के लिए, उनकी छोटी विकि की जाँच करें । उम्मीद है कि आप अपनी आवश्यकताओं को पूरा करने के लिए सही सेटिंग्स पा सकते हैं।

चारों ओर ट्विकिंग का आनंद लें!


1
वर्चुअल डिवाइस उन क्षेत्रों में से एक है जहां लिनक्स (और * निक्स, उस मामले के लिए) चमकता है। यह विंडोज पर अधिक जटिल है यहां तक teeकि एक मूल उपयोगिता भी लिखी जाती है जो stdinइसे भरने के लिए इंतजार नहीं करती है। मुझे आश्चर्य नहीं होगा अगर यह वास्तव teeमें हुड के नीचे अधिक स्केलेबल समर्थन के साथ एक बाइनरी समकक्ष का उपयोग करता है ।
इसियाह मीडोज

जब भी यह प्रश्न का उत्तर देता है, तो यहां लिंक के कुछ हिस्सों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर होगा , ताकि हमारे पास कुछ उदाहरण हों - उदाहरण के लिए 2 डिवाइस बनाएं 1. उसके लिए विकल्प क्या हैं? और क्या यह संभव है (जैसा कि ओपी की आवश्यकताओं में कहा गया है) Google हैंगआउट के साथ उपयोग करने के लिए? मैंने भी बस इसे स्काइप के साथ परीक्षण किया है और यह काम नहीं करता है। हम अब संस्करण 4.3 नहीं 4.0 ...
टिम

2
जब मेरा दूसरा सिस्टम वापस आएगा, तो मुझे इसकी जाँच करनी होगी। मैं शायद एक अतिरिक्त इनाम दूंगा।
RolandiXor

3
यह अब वास्तव में ubuntu का हिस्सा है - गिट की कोई जरूरत नहीं है।
nbubis

दरअसल, यह अब उबंटू / डेबियन के लिए v4l2loopback-utils के रूप में पैक किया गया है। इसे संकलित करने की आवश्यकता नहीं है
अरनौद जींसन

3

@ द आई आंसर के आधार पर

मैंने पहली बार Ubuntu 18.04 https://gstreamer.freedesktop.org/documentation/installing/on-linux.html पर gstreamer पैकेज स्थापित किए

$ git clone https://github.com/umlaeute/v4l2loopback.git
$ cd v4l2loopback
$ make
$ sudo make install

मुझे यहाँ उबंटू 18.04 LTS https://github.com/umlaeute/v4l2loopback/issues/139 पर चेतावनी संदेश मिला (लेकिन इसने मुझे v4l2loopback ड्राइवर लोड करने से नहीं रोका)

$ sudo depmod -a

मेरे पास अपने लैपटॉप / देव / वीडियो 0 पर सिर्फ 1 वेबकैम है और मैं एक ही हार्डवेयर से 2 स्ट्रीम प्राप्त करना चाहता था। पर आधारितHttps://github.com/umlaeute/v4l2loopback/blob/master/README.md

$ modprobe v4l2loopback devices=2

अब होना चाहिए /dev/video1 और /dev/video2यह मानकर बनाया /dev/video0गया कि केवल वीडियो उपकरण था।

अब मैं निम्नलिखित को एक टर्मिनल विंडो में चलाता हूं

gst-launch-1.0 v4l2src device=/dev/video0 ! tee name=t ! queue ! v4l2sink device=/dev/video1 t. ! queue ! v4l2sink device=/dev/video2

मैंने 2 और टैब खोले

पहले टैब में

gst-launch-1.0 v4l2src device=/dev/video1 ! videoconvert ! ximagesink

दूसरे टैब में

gst-launch-1.0 v4l2src device=/dev/video2 ! videoconvert ! ximagesink

अब किसी को 2 वीडियो स्ट्रीम देखनी चाहिए

अपडेट करें

भले ही मैं उसी का उपयोग करूं /dev/video1 डिवाइस का कई बार करता यह सब मुझे कई स्ट्रीम देता है। उदाहरण।

पहले टैब में

gst-launch-1.0 v4l2src device=/dev/video1 ! videoconvert ! ximagesink

दूसरे टैब में

gst-launch-1.0 v4l2src device=/dev/video1 ! videoconvert ! ximagesink

तीसरे टैब में

gst-launch-1.0 v4l2src device=/dev/video1 ! videoconvert ! ximagesink

मुझे तीन धाराएँ देता है।


BTW अगर किसी के वेबकैम में ऑडियो है तो कमांड का उपयोग करके ऑडियो डिवाइस को फ़िल्टर pactl list | grep -A2 'Source #'करें तो उस डिवाइस का उपयोग निम्न पाइपलाइन में करें (पाइप लाइन के कई उदाहरण भी चला सकते हैं)gst-launch-1.0 pulsesrc device=alsa_input.<name of device> ! autoaudiosink
उत्साही

यह FFmpeg समाधान की तुलना में बहुत बेहतर काम करता है क्योंकि मैं F2mpeg को h264 कॉपी करने के लिए इसे डिकोड किए बिना नहीं पा सकता था जिसके परिणामस्वरूप हमेशा सीपीयू का उपयोग किया जाता था, जब कोई भी नहीं सुन रहा था
Fabian N.

2

जवाब शायद किसी के पास नहीं है ... लाइब्रेरी, "वीडियो 4 लिनक्स" यह पता लगाता है कि क्या डिवाइस का उपयोग किया जा रहा है, और आरंभ नहीं करेगा। हालाँकि; यदि आप libv4l-dev डाउनलोड करना चाहते हैं और इसे मैन्युअल रूप से संपादित करना चाहते हैं, तो आप इस चेक से छुटकारा पाने के लिए कोड को संपादित कर सकते हैं और फिर इसे फिर से जोड़ सकते हैं। मुझे लगता है कि आप इसे काम करने के लिए प्राप्त कर सकते हैं, लेकिन यह बहुत अस्थिर होगा। हालांकि जाँच के लायक हो सकता है।

TLDR: कुछ भी संभव है यदि आप एक प्रोग्रामर हैं जो कुछ कोहनी के साथ काम करते हैं। कि दूर जाना नहीं चाहते? फिर नहीं; यह मुमकिन नहीं है।

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