come creare un duplicato di / dev / video0?


17

Ho 1 webcam collegata al mio computer ma voglio usarla in più programmi.
Il problema è quando lancio un secondo programma, mi dice che la webcam è già utilizzata.

I programmi che useranno la webcam sono: motion, pam_face_authentification e alcuni software di comunicazione come skype, google hangout ...

Come posso duplicare il flusso della mia webcam per simulare una seconda webcam?


Non capisco cosa mi stai dicendo?
user244552,

flusso su un file e sul display. potresti farlo con vlc, possibilmente con il formaggio. una volta che hai un flusso, tutto potrebbe usarlo.
j0h

Perché non farlo all'avvio del sistema operativo? Attraverso "Applicazioni di avvio".
GTX

Risposte:


9

I miei primi pensieri sono stati, mi chiedo se qualcuno abbia escogitato un modo per far apparire un video come una webcam (ad es. Sto saltando con qualcuno, ma il video e l'audio che vedono sono alcuni video che ho scelto invece). Dopo aver cercato un po 'in giro, sembra che le persone abbiano eseguito questo piping video (come discusso su Manipulation Dev Video e Fake a webcam usando un dispositivo di loopback video?

Come menzionato nel tuo commento, gst-launch v4l2src device=/dev/video0 ! v4l2sink device=/dev/video1ti consente di duplicare video0 in video1 e video1 è leggibile da alcuni software.

Per far funzionare questo all'avvio del tuo computer, puoi seguire UbuntuBootupHowto per trovare qualcosa come:

# /etc/init/videocloner.conf
description "VideoCloner"
start on runlevel [2345]
stop on runlevel [06]
respawn
exec gst-launch v4l2src device=/dev/video0 ! v4l2sink device=/dev/video1

Questo script dovrebbe iniziare all'avvio del computer e ti consente anche di eseguire sudo service videocloner start|stop (Nota: se il mio script di esempio non funziona, prova a spostarti gst-launch v4l2src device=/dev/video0 ! v4l2sink device=/dev/video1in uno script di shell e a cambiare la execlinea per chiamare invece lo script di shell) .


1
Voglio aggiungere qualcosa alla risposta di Dolan. È inoltre necessario installare ilv4l2loopback-dkms pacchetto ed eseguire il v4l2loopbackmodulo: sudo apt-get install v4l2loopback-dkmse quindisudo modprobe v4l2loopback
Tarek Loubani,

Ho provato questo, ma il risultato è che ho un / dev / video1 utilizzabile, ma un / dev / video0 non utilizzabile, quindi non mi permette di avere due programmi che usano la stessa webcam fisica. Ho provato a modificare il comando per creare / dev / vidoe1 e / dev / video2, quindi ho 2 endpoint, ma senza fortuna.
unfa

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.