Puisqu'il n'y a pas de réponse en utilisant ffmpeg
c'est ça.
Explication
Alors que v4l2loopback
crée des périphériques vidéo virtuels, ils ne sont associés à rien par défaut. Pour les rendre utiles, vous devez leur envoyer des flux via des applications externes telles que ffmpeg
.
Chargez d'abord le module
$ sudo modprobe v4l2loopback exclusive_caps=1 video_nr=5 #creates `/dev/video5`
puis envoyez l'entrée de votre webcam à l'appareil virtuel.
$ ffmpeg -i /dev/video0 -f v4l2 -codec:v rawvideo -pix_fmt yuv420p /dev/video5
Maintenant /dev/video5
fonctionne comme une pseudo-webcam. Notez que, contrairement à une webcam physique, il est possible d'accéder à un seul périphérique vidéo virtuel à partir de plusieurs applications simultanément. Ainsi, dans ce cas, il n'est pas nécessaire de créer de nombreux périphériques virtuels.
J'ai écrit un script pour envelopper ces étapes : v4l2_webcam - GitHub .
Application
Vous pouvez envoyer n'importe quelle vidéo (brute) vers un périphérique vidéo virtuel. Cela signifie, par exemple, qu'il est possible d'utiliser une vidéo mixée de manière complexe en OBS comme entrée de caméra dans une réunion Web (par exemple, Skype, Zoom, etc.).
Voici un exemple relativement complexe mais très pratique :
Structure
Résultat