< All Topics
Print

1.Introdução

É possível utilizar uma câmera fotográfica digital do tipo monorreflex no modo de captura de vídeo e encaminhar o conteúdo sendo gravado, por meio de um cabo USB, em tempo real, para o OBS Studio.

Como usar uma câmera DSLR para capturar vídeo para o OBS Studio
Exemplo de uma câmera DSLR.

Infelizmente, ainda não existe uma interface gráfica para a configuração do sistema para que crie uma câmera virtual que receberá o vídeo gerado pela câmera. Portanto, será necessário utilizar o Terminal (Ctrl+Alt+T).

2.Requisitos

Nota: é necessário instalar o OBS Studio em sua verão .deb. A versão Flatpack, ou outro empacotamento, não funcionará.

Se você não instalou o OBS Studio no tutorial de pós instalação 5, instale-o agora com os comandos a seguir:

2.1.Instalando o OBS Studio

O ffmpeg é instalado com o sistema por padrão, mas não custa testar…

sudo apt install ffmpeg

Para ter suporte à câmera virtual, instale v4l2loopback-dkms:

sudo apt -y install v4l2loopback-dkms

Adicione o PPA dos desenvolvedores do OBS Studio:

sudo add-apt-repository ppa:obsproject/obs-studio

E instale o OBS Studio:

sudo apt install obs-studio

2.2.Outros requisitos

As duas dependências a seguir também já devem ter sido instaladas junto do sistema operacional mas, novamente, seguro morreu de velho:

sudo apt install v4l-utils gphoto2

2.3.Testes

Teste a conectividade da câmera, e que o sistema consegue controlá-la.

Conecte a câmera ao computador com um cabo USB. Repare que ela será montada automaticamente como um drive externo. Isso acontece porque o uso mais habitual desta conexão é acessar o disco de armazenamento para transferir as imagens para o computador.

Ocorre que não é possível capturar imagens ou vídeos enquanto a câmera estiver montada.

Para desmontá-la, abra o Nautilus, localize a câmera e clique o botão de “ejetar”.

Nautilus exibindo a câmera montada.
Como desmontar a câmera no Nautilus.

Com a câmera desmontada, teste o funcionamento do g2photo com o seguinte comando:

env LANG=C gphoto2 --auto-detect

Também é possível verificar as capacidades da câmera:

env LANG=C gphoto2 --port usb: --abilities

Também é possível detectar o estado da máquina com o comando:

gphoto2 --summary

Tente capturar uma foto com o comando a seguir:

gphoto2 --capture-image-and-download --filename pic0001.jpg

Atenção: se der erro, é possível que o monitor do gphoto2 esteja ocupado, trabalhando em segundo plano. Vamos descobrir:

pgrep -fla gphoto2

Se aparecer, pelo menos:

(…)/gvfs-gphoto2-volume-monitor

Será necessário matar o processo gphoto2 antes que ele consiga controlar a câmera:

pkill -f gphoto2

E teste novamente a captura de foto:

gphoto2 --capture-image-and-download --filename pic0001.jpg

Também é possível testar a captura por controle remoto (tethering). Rode o comando a seguir e aperte o botão disparador da câmera:

env LANG=C gphoto2 --port usb: --capture-tethered

Se algum dos passos anteriores falhou, existem problemas com sua câmera e controlador específico. Informe o problema na página de github do gphoto2. Adicione as flags a seguir ao comando que falhou para melhor suporte e anexe a saída de registro ao seu relato:

--debug --debug-file gphoto2_debug.log

3.Configurando o sistema para capturar o vídeo para o OBS Studio

Com a câmera desmontada mas ainda conectada, liste todos os aparatos de geração de vídeo com o comando:

ls /dev/video*

Outra forma de listar as fontes de vídeo é usar o comando:

v4l2-ctl --list-devices

Uma resposta possível é:

/dev/video0 /dev/video1

Provavelmente, o último da lista será a câmera DSLR, uma vez que ela foi a última a ser conectada. Os números anteriores se referem às webcams.

Agora, ative o v4l2loopback para ativar o módulo do kernel e habilitar a criação de uma câmera virtual alimentada pelo conteúdo gerado pela câmera DSLR com o comando:

sudo modprobe v4l2loopback exclusive_caps=1 max_buffers=2

Rode novamente o comando de listagem:

ls /dev/video*

Repare que apareceu uma nova fonte de vídeo:

/dev/video0 /dev/video1 /dev/video2

Trata-se do local em que câmera virtual necessária ao OBS Studio será acoplada.

Teste para ver se está tudo ok, por exemplo, com o comando de detecção da câmera:

gphoto2 --auto-detect

Deve aparecer o modelo de sua câmera e a porta em uso.

Agora que a conexão está funcionando, é hora de criar a câmera virtual que será usada pelo OBS Studio.

Antes, no entanto, descubra o parâmetro do tamanho das imagens (liveviewsize) com o comando a seguir:

gphoto2 --get-config liveviewsize

Na câmera usada para testar esse tutorial, o parâmetro para o tamanho “large” é “0”.

De posse desse número, copie e cole o comando abaixo, substituindo o valor de “lifesizeview” pelo que você apurou com o comando acima:

gphoto2 --stdout --set-config liveviewsize=0 --capture-movie | ffmpeg -i - -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 -r 30 /dev/video2

Nota1: substitua “/dev/video2” pelo caminho para a câmera virtual apontada pelo comando de listagem em seu computador.

4.No OBS Studio

No OBS Studio, adicione uma fonte de vídeo à cena do tipo: Dispositivo de captura de vídeo (V4L2) e aponte para a câmera virtual.

Na lista de dispositivos disponíveis, é provável que ela apareça como “Dummy video device”.

Table of Contents