Leiten Sie die reale Webcam über das Terminal zu einer virtuellen Webcam um

15

Gibt es eine Möglichkeit, eine reale Webcam über die Befehlszeile auf eine virtuelle Webcam umzuleiten, z. B. mithilfe des v4l2loopbackModuls mit ffmpeg?

Einzelheiten

Ich habe eine alte Webcam, die mit den meisten Programmen (vlc, cheese usw.) funktioniert, aber nicht mit anderen (Skype).

Ein möglicher Workaround, um es mit einer solchen Software zum Laufen zu bringen , besteht darin, es mithilfe des v4l2loopbackModuls auf eine virtuelle Webcam umzuleiten , wie es von Webcamoid ausgeführt wird. Ich muss es jedoch über die Befehlszeile ausführen , z. B. über ffmpeg.

Ich bin sicher , dass dies möglich ist , über ffmpegals gut, aber da echter Webcams zu virtuell diejenigen selten umgeleitet wird, fand ich keine Beispiele online (die einzigen Beispiele , die ich gefunden habe, wie diese , Redirect Screenshots oder bestehende Videos auf die virtuelle Webcam statt) .

Kubuntuer82
quelle
1
@LordNeckbeard Die Antworten haben etwas gemeinsam, aber die Fragen sind sehr unterschiedlich. Das OP fordert dazu auf, ein aufgezeichnetes Video ( input.mp4) an ein vorhandenes physisches Gerät zu senden , und der Antwortende schlägt vor, stattdessen v4l2loopback zu verwenden. Hier geht es darum, eine echte Live- Webcam an eine virtuelle Webcam zu senden , da dadurch die Webcam indirekt mit einigen Apps (z. B. Skype) kompatibel wird, die sie sonst nicht erkennen würden. Tatsächlich schlägt die Antwort auf diese Frage vor, so etwas zu verwenden, nach ffmpeg -i input.mp4dem ich hier nicht gesucht habe.
Kubuntuer82
1
@LordNeckbeard und diese Antwort zeigen auch, wie man den Desktop greift, was nicht nur nicht das war, wonach ich hier gesucht habe, sondern es ist auch sehr ähnlich zu diesem Beitrag, den ich bereits in meiner Frage erwähnt habe. Ich habe nach etwas anderem gesucht, nämlich eine andere Webcam anstelle des Desktops oder einer Datei umzuleiten (wie ich auch in der Frage sage). Ich schätze, dass die Lösungen auf der gleichen Software basieren, aber da die Fragen sehr unterschiedlich sind, finde ich es immer noch gut, dies für Menschen zu teilen, die mit diesem bestimmten Problem zu kämpfen haben .
Kubuntuer82

Antworten:

19

Basierend auf dieser Antwort (bereits in der Frage erwähnt) denke ich, dass ich selbst eine Lösung gefunden habe und sie funktioniert mit Skype!

Angenommen, die echte Webcam ist in /dev/video0. Wenn du rennst

modprobe v4l2loopback

Das Modul erstellt eine zweite (virtuelle) Webcam, zum Beispiel in /dev/video1. An dieser Stelle reicht es aus, Folgendes auszuführen:

ffmpeg -i /dev/video0 -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video1

Die neue virtuelle Webcam kann jetzt auch mit Skype verwendet und ausgewählt werden.

Kubuntuer82
quelle