Skip to content

Instantly share code, notes, and snippets.

@fvilante
Last active February 15, 2025 08:44
Show Gist options
  • Save fvilante/a32186abb295d6342f4c4e6f752271fc to your computer and use it in GitHub Desktop.
Save fvilante/a32186abb295d6342f4c4e6f752271fc to your computer and use it in GitHub Desktop.

FAQ - Uso do video_frame_saver.exe com o Durômetro

1. Eu uso o video_frame_saver.exe para configurar a câmera?

Não apenas para configurar a câmera, mas também para capturar imagens. Porem:

Todas as configurações definidas ao executar o video_frame_saver.exe são temporárias e válidas apenas enquanto o programa estiver em execução. Após ser encerrado, a câmera retorna ao seu estado original.

O programa permite também definir parâmetros como qual câmera selecionar, resolução desejada e se a imagem deve ser escalada (ampliada ou reduzida), antes de ser salva.

O video_frame_saver.exe é stateless, isto é, entre uma execução e outra ele nao salva nenhum estado. Tudo é esquecido assim que o programa termina. E a unica forma de enviar para ele algum estado é atraves dos parametros inseridos junto na linha de comando.

Por exemplo, o comando video_frame_saver.exe -c 1 -x 2 -y 2 inicia o executável com o estado indicado por estes parametros -c 1 -x 2 -y 2.


2. O video_frame_saver.exe deve ser chamado apenas uma vez ao iniciar o programa do durômetro?

Não. Ele deve ser chamado a cada captura de imagem.

O video_frame_saver.exe precisa ser executado sempre que o usuário desejar capturar um novo frame da câmera. O programa do durômetro não acessa diretamente a câmera, mas depende do video_frame_saver.exe para capturar e salvar a imagem que será processada.

Portanto, o fluxo correto é:

  1. O usuário inicia o programa do durômetro.
  2. A cada nova captura de imagem, o video_frame_saver.exe é chamado.
  3. O usuário seleciona o frame desejado pressionando espaço.
  4. O arquivo de imagem salvo é processado pelo programa do durômetro.

O video_frame_saver.exe pode ser executado quantas vezes forem necessárias dentro de uma mesma sessão do programa do durômetro.


3. Se eu trocar a câmera, preciso executar o video_frame_saver.exe novamente?

Sim.

Se uma nova câmera for conectada ao computador sem reiniciar o programa do durômetro, o video_frame_saver.exe precisará ser chamado novamente para detectar e capturar imagens da nova câmera.

Para trocar de câmera corretamente:

  1. Execute video_frame_saver.exe --list para listar as câmeras conectadas e identificar o índice da nova câmera.

    Exemplo de saída:

    PS C:\rust_projects\video_frame_saver\dist> .\video_frame_saver.exe --list
    +------------------+----------------+
    | Índice da Câmera | Status         |
    +------------------+----------------+
    | 0                | Disponível     |
    | 1                | Disponível     |
    | 2                | Não Disponível |
    | 3                | Não Disponível |
  2. Use o índice correto ao chamar o video_frame_saver.exe para capturar uma imagem da nova câmera.

Se a nova câmera não funcionar corretamente, pode ser necessário verificar quais resoluções são suportadas (veja a próxima pergunta).


4. Como garantir que a captura ocorra na resolução correta?

Use os parâmetros adequados ao chamar o video_frame_saver.exe.

  1. Para descobrir quais resoluções a câmera suporta:

    video_frame_saver.exe --detect-resolutions -c <ID>

    Exemplo de saída para câmera 1:

    PS C:\rust_projects\video_frame_saver\dist> .\video_frame_saver.exe --detect-resolutions -c 1
    Câmera inicializada com sucesso!
    Resoluções suportadas pela câmera:
    320x240
    640x480
    1280x720
    1920x1080
  2. Para definir a resolução desejada ao capturar um frame:

    video_frame_saver.exe -c <ID> --width 1920 --height 1080

    Exemplo para uma câmera com ID 3:

    video_frame_saver.exe -c 3 --width 1920 --height 1080

    Se a câmera suportar essa resolução, ela será utilizada. Caso contrário, a câmera ajustará para a resolução mais próxima disponível.

  3. Exemplo de erro caso a câmera não esteja disponível:

    PS C:\rust_projects\video_frame_saver\dist> .\video_frame_saver.exe --detect-resolutions -c 2
    Error: Não foi possível abrir a câmera com o índice: 2

Isso evita que a câmera adote automaticamente uma resolução indesejada ao capturar uma imagem.


Se precisar de mais detalhes sobre o uso do video_frame_saver.exe, consulte a documentação ou experimente os parâmetros disponíveis com --help. 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment