Eh bien, je viens d'essayer. Des résultats intéressants.
J'ai des skype et du fromage et des jouets et des hangouts webcam (qui fonctionnent tous) et les ai essayés ensemble.
Résultats:
Vous ne pouvez pas utiliser la même webcam sur 2 choses à la fois.
Fromage (de travail) + Jouet webcam (ne fonctionne pas) + Skype (petit, en haut à droite. Ne fonctionne pas).
Vous pouvez cependant utiliser 2 webcams sur 2 choses. (Fromage + webcam jouet).
Hangouts (ne fonctionne pas) + Fromage (fonctionne)
Hangouts (travailler seul).
Fromage cassé lorsque j'ai ouvert Hangouts en premier. Il en a fait de même avec les autres, mais mon Internet est trop lent pour télécharger chaque capture d'écran (et je doute que vous apprécieriez plus de 30 captures d'écran) ...
J'ai même essayé de créer un lien symbolique vers /dev/video0
et de l'enregistrer /dev
sous video2
. Ça n'a pas marché.
Je ne peux pas non plus exécuter 2 processus de fromage à la fois.
Si vous deviez le faire, je vous conseillerais de le faire en plein écran et de faire 2 enregistrements d'écran. Je doute que cela fonctionnerait pour ce que vous voulez.
Heureusement, maintenant, OUI!
Il existe actuellement un projet sur GitHub qui peut afficher non seulement deux, mais un nombre infini (limité uniquement par la capacité du système) de périphériques vidéo à partir d'une seule source.
Le projet est appelé
v4l2loopback
. (Vérifiez le lien et faites défiler vers le bas pour afficher le fichier README pour obtenir des instructions.)Vous pouvez installer
v4l2loopback
en clonant son GitHub et en exécutant ces commandes:Exemples
Pour des exemples sur la façon de l'utiliser avec GStreamer, FFmpeg, MPlayer et Skype, consultez leur petit wiki . J'espère que vous pourrez trouver les bons paramètres pour répondre à vos besoins.
Profitez de peaufiner!
la source
tee
utilitaire de base qui n'attend pas pourstdin
finir de le nourrir. Je ne serais pas surpris si cela utilise un équivalent binairetee
avec un support plus évolutif sous le capot.Basé sur la réponse @The Eye
J'ai d'abord installé les packages gstreamer sur Ubuntu 18.04 https://gstreamer.freedesktop.org/documentation/installing/on-linux.html
J'ai reçu un message d'avertissement comme ici sur Ubuntu 18.04 LTS https://github.com/umlaeute/v4l2loopback/issues/139 (mais cela ne m'a pas empêché de charger le pilote v4l2loopback)
Je n'ai qu'une webcam sur mon ordinateur portable / dev / video0 et je voulais obtenir 2 flux à partir du même matériel. Basé sur https://github.com/umlaeute/v4l2loopback/blob/master/README.md
Il devrait maintenant y avoir
/dev/video1
et/dev/video2
créé en supposant que/dev/video0
c'était le seul appareil vidéo.Maintenant, je lance ce qui suit dans une fenêtre de terminal
J'ouvre 2 onglets de plus
Dans le premier onglet
Dans le deuxième onglet
Maintenant, on devrait voir 2 flux vidéo
MISE À JOUR
Même si j'utilise le même
/dev/video1
appareil plusieurs fois, cela me donne autant de flux. exemple.Dans le premier onglet
Dans le deuxième onglet
Dans le troisième onglet
me donne trois flux.
la source
pactl list | grep -A2 'Source #'
puis utiliser ce dispositif dans la canalisation suivante (peut exécuter plusieurs instances de pipeline trop)gst-launch-1.0 pulsesrc device=alsa_input.<name of device> ! autoaudiosink
La réponse est non avec peut-être ... La bibliothèque, "Video 4 Linux" détecte si un périphérique est utilisé, et ne démarre pas. Pourtant; si vous souhaitez télécharger libv4l-dev et l'éditer manuellement, vous pouvez éditer le code pour vous débarrasser de cette vérification puis simplement le recompiler. J'imagine que cela pourrait fonctionner, mais ce serait extrêmement instable. Peut-être vaut-il la peine de vérifier.
TLDR: Tout est possible si vous êtes un programmeur avec un peu d'huile de coude à portée de main. Vous ne voulez pas aller aussi loin? Alors non; ce n'est pas possible.
la source