É possível que dois processos acessem a webcam ao mesmo tempo?

8

Gostaria de usar o Cheese no Google+ Hangouts e configurações semelhantes, e gostaria de saber se é possível que a webcam seja usada por dois processos para ter acesso à webcam ao mesmo tempo. Eu não tentei ainda, mas antes de fazê-lo, eu pensei em perguntar.

Então, é possível?

    
por RolandiXor 19.07.2012 / 23:46

3 respostas

5

Bem, eu apenas tentei. Resultados interessantes.

Tenho skype e queijo e webcam de brinquedo e hangouts (que todos trabalham) e tentei-los juntos.

Resultados:

Você não pode usar a mesma webcam em duas coisas ao mesmo tempo.

Cheese (Trabalho) + Webcam Toy (Não funciona) + Skype (Pequeno, superior direito. Não funciona).

Você pode usar 2 webcams em 2 coisas. (Queijo + Brinquedo da Webcam).

Hangouts (não funcionando) + Queijo (trabalhando)

Hangouts (trabalhando por conta própria).

Queijo quebrado quando abri o Hangouts primeiro. Fez o mesmo com os outros, mas minha internet é muito lenta para carregar cada screenshot (e eu duvido que você apreciaria mais de 30 screenshots) ...

Eu até tentei criar um link simbólico para /dev/video0 e salvá-lo em /dev as video2 . Isso não funcionou.

Eu também não posso executar 2 processos de queijo de uma só vez.

Uma foto do meu jardim, para animá-lo, pois a resposta é não. É muito legal no momento: eu posso balançar (no balanço), pular e aterrissar na piscina infantil. Tomado com queijo.

Se você tivesse que, eu aconselho fazer isso em tela cheia e fazer 2 gravações na tela. Eu duvido que funcionaria para o que você quer embora.

    
por Tim 06.08.2014 / 20:35
7

Felizmente, agora sim!

Atualmente há um projeto no GitHub que mostra não apenas dois, mas um número infinito (limitado apenas pela capacidade do sistema) de dispositivos de vídeo de uma única fonte.

O projeto é chamado de v4l2loopback . (Verifique o link e role para baixo para ver o README para instruções.)

Você pode instalar v4l2loopback clonando seu GitHub e executando estes comandos:

$ git clone https://github.com/umlaeute/v4l2loopback.git
$ cd v4l2loopback
$ make
$ sudo make install

Exemplos

Para exemplos de como usá-lo com o GStreamer, o FFmpeg, o MPlayer e o Skype, verifique seu pequeno wiki . Espero que você possa encontrar as configurações certas para atender às suas necessidades.

Desfrute de ajustes ao redor!

    
por The Eye 11.08.2014 / 10:29
2

A resposta é não com um talvez ... A Biblioteca, "Video 4 Linux" detecta se um dispositivo está sendo usado e não iniciará. Contudo; Se você deseja baixar libv4l-dev e editá-lo manualmente, você pode editar o código para se livrar dessa verificação e depois apenas recompilá-lo. Eu imagino que você poderia fazer isso funcionar, mas seria extremamente instável. Pode valer a pena conferir embora.

TLDR: Tudo é possível se você for um programador com alguma graxa de cotovelo à mão. Não quer ir tão longe? Então não; não é possível.

    
por Akiva 06.08.2014 / 20:58

Tags