Bueno, acabo de intentarlo. Resultados interesantes
Tengo skype and cheese y webcam toy y hangouts (que funcionan) y los probé juntos.
Resultados:
No puedes usar la misma cámara web en 2 cosas a la vez.
Queso (Funcionando) + Webcam Toy (No funciona) + Skype (Pequeño, arriba a la derecha. No funciona).
Sin embargo, puedes usar 2 cámaras web en 2 cosas. (Queso + Webcam Toy).
Hangouts (no funciona) + queso (en funcionamiento)
Hangouts (trabajando solo).
Queso roto cuando abrí Hangouts primero. Hizo lo mismo con los demás, pero mi Internet es demasiado lento para cargar cada captura de pantalla (y dudo que aprecies más de 30 capturas de pantalla) ...
Incluso intenté hacer un enlace simbólico /dev/video0
y guardarlo /dev
como video2
. Eso no funcionó.
Tampoco puedo ejecutar 2 procesos de queso a la vez.
Si tuviera que hacerlo, le aconsejaría que hiciera pantalla completa y que hiciera 2 grabaciones de pantalla. Sin embargo, dudo que funcione para lo que quieres.
Felizmente, ahora, ¡SÍ!
Actualmente hay un proyecto en GitHub que puede mostrar no solo dos, sino un número infinito (limitado solo por la capacidad del sistema) de dispositivos de video de una sola fuente.
El proyecto se llama
v4l2loopback
. (Verifique el enlace y desplácese hacia abajo para ver el archivo README para obtener instrucciones).Puede instalar
v4l2loopback
clonando su GitHub y ejecutando estos comandos:Ejemplos
Para ver ejemplos de cómo usarlo con GStreamer, FFmpeg, MPlayer y Skype, consulte su wiki pequeño . Esperemos que pueda encontrar la configuración adecuada para sus necesidades.
¡Disfruta retocando!
fuente
tee
utilidad básica que no espere astdin
que termine de alimentarlo. No me sorprendería si esto realmente usa un equivalente binariotee
con un soporte más escalable debajo del capó.Basado en la respuesta de @The Eye
Primero instalé paquetes gstreamer en Ubuntu 18.04 https://gstreamer.freedesktop.org/documentation/installing/on-linux.html
Recibí un mensaje de advertencia como aquí en Ubuntu 18.04 LTS https://github.com/umlaeute/v4l2loopback/issues/139 (pero no me impidió cargar el controlador v4l2loopback)
Solo tengo 1 cámara web en mi computadora portátil / dev / video0 y quería obtener 2 transmisiones del mismo hardware. Basado en https://github.com/umlaeute/v4l2loopback/blob/master/README.md
Ahora debería haber
/dev/video1
y/dev/video2
creado asumiendo que/dev/video0
era el único dispositivo de video.Ahora ejecuto lo siguiente en una ventana de terminal
Abro 2 pestañas más
En la primera pestaña
En la segunda pestaña
Ahora uno debería ver 2 transmisiones de video
ACTUALIZAR
Incluso si uso el mismo
/dev/video1
dispositivo varias veces, todo me da tanta transmisión. ejemplo.En la primera pestaña
En la segunda pestaña
En la tercera pestaña
me da tres corrientes
fuente
pactl list | grep -A2 'Source #'
luego use ese dispositivo en la siguiente tubería (también puede ejecutar varias instancias de tubería)gst-launch-1.0 pulsesrc device=alsa_input.<name of device> ! autoaudiosink
La respuesta es no con un quizás ... La Biblioteca, "Video 4 Linux" detecta si se está utilizando un dispositivo y no se inicia. Sin embargo; si desea descargar libv4l-dev y editarlo manualmente, puede editar el código para deshacerse de esta verificación y luego volver a compilarlo. Me imagino que podrías hacer que esto funcione, pero sería extremadamente inestable. Sin embargo, puede valer la pena echarle un vistazo.
TLDR: cualquier cosa es posible si usted es un programador con un poco de grasa útil. ¿No quieres ir tan lejos? Entonces no; no es posible.
fuente