Sobre o projeto

Video Analyzer é uma ferramenta de linha de comando para gerar descrições de conteúdo de vídeo a partir de informações visuais e de áudio. Seu pipeline tem três etapas principais: extração de quadros-chave e processamento de áudio, análise visual quadro a quadro e reconstrução final do vídeo. O analisador usa OpenCV para selecionar quadros-chave e OpenAI Whisper para transcrever o áudio disponível, incluindo verificações de áudio de baixa qualidade. Cada quadro extraído é enviado a um modelo de linguagem com capacidade visual, usando contexto de quadros anteriores para preservar a progressão cronológica. As análises dos quadros e a transcrição são então combinadas em uma descrição abrangente. Por padrão, a inferência local usa Ollama com o modelo Llama 3.2 Vision; como alternativa, os usuários podem configurar qualquer endpoint compatível com OpenAI, como OpenAI ou OpenRouter, por meio de opções de CLI ou um arquivo de configuração JSON. Os recursos relatados incluem operação totalmente local sem serviços em nuvem ou chaves de API, APIs em nuvem opcionais, modelos Whisper e visuais configuráveis, prompts personalizados, saída JSON detalhada contendo metadados, transcrição, análises de quadros e a descrição final, além de um sistema de configuração em cascata no qual argumentos de linha de comando substituem a configuração do usuário e os padrões. Os requisitos incluem Python 3.11 ou mais recente e FFmpeg. O README recomenda RAM substancial e hardware GPU/Apple Silicon para execução local do LLM, enquanto o uso baseado em API evita esses requisitos de modelo local. A instalação é feita clonando o repositório e instalando-o com pip. Um pacote opcional video-analyzer-tune pode otimizar modelos de prompt a partir de saídas editadas representativas usando DSPy MIPROv2, gravando prompts ajustados em arquivos separados. O projeto é lançado sob a Licença Apache e inclui documentação de uso, design e contribuição.