Skill para analisar conteudo de video existente: baixar, extrair frames, transcrever audio e responder perguntas sobre o que acontece no video. Use quando precisar entender, resumir ou buscar informacao dentro de um video ja existente — nao para gerar video novo (isso e skill 27). Trigger em: "transcrever video", "transcrever esse video", "baixar video do youtube", "extrair frames do video", "extrair frames desse video", "legenda automatica", "resumir video", "resumir esse video", "analisar video", "analisar o conteudo desse video", "o que acontece nesse video", "whisper", "yt-dlp", "transcription video", "extract frames from this video".
69
87%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Low
Low-risk findings worth noting
Diferente de gerar vídeo (skill 27), esta skill entende vídeo que já existe: baixa, extrai o que for necessário (legenda, frames, áudio), e entrega texto/frames que o modelo consegue interpretar diretamente.
Esta skill segue GLOBAL.md, policies/execution.md, policies/handoffs.md, policies/token-efficiency.md, policies/tool-safety.md e policies/evals.md.
Para comandos completos de ffmpeg por estratégia e exemplos de payload de transcrição, consultar docs/skill-guides/video-analysis.md apenas quando necessário.
ffmpeg e yt-dlp são binários de sistema (não pacotes Node) — rodar node scripts/setup-video-analysis.mjs uma vez detecta o que falta e tenta instalar automaticamente via o gerenciador de pacote já disponível na máquina (winget/choco/scoop no Windows, brew no macOS, apt/dnf no Linux; pip para yt-dlp e faster-whisper em qualquer SO). Se não conseguir instalar sozinho, o script imprime o comando manual exato. Rodar --check-only só verifica, sem tentar instalar nada.
start, end, text por segmento)yt-dlp baixa o vídeo e verifica se a plataforma já tem legenda/caption. Se tiver, pula direto pro texto sem gastar tempo com áudio.keyframe (só cortes de cena, até 50 frames, mais barato), scene-aware (detecção de mudança de cena + fallback uniforme, até 100 frames), uniform (amostragem regular, sem cap, mais caro). ~80 frames a 512px de largura ≈ 50-80k tokens de imagem — decidir a estratégia baseado no orçamento de contexto disponível.Checkpoint por passo: ler o resultado antes de avançar — legenda "encontrada" que na verdade é auto-gerada de baixa qualidade (erros óbvios de reconhecimento) conta como "não tem legenda boa", cair pro passo 3. Frame extraído borrado/preto (falha do yt-dlp) volta pro passo 1 com outra estratégia de download antes de gastar tokens analisando frame ruim.
| Opção | Custo | Privacidade | Velocidade |
|---|---|---|---|
Local (faster-whisper) — default | $0 | áudio nunca sai da máquina | mais lento em CPU, ok em GPU |
Hosted (Groq whisper-large-v3) — override | ~$0.01-0.02/hora de áudio | áudio enviado a terceiro | rápido |
Hosted (OpenAI whisper-1) — fallback do override | mais caro que Groq | áudio enviado a terceiro | rápido |
Usar local sempre que possível — é gratuito e não depende de rede. Só trocar pra hosted quando o usuário pedir explicitamente velocidade acima de custo/privacidade (ex: vídeo muito longo, urgência).
Chave de API (só se usar hosted): GROQ_API_KEY (preferencial) com fallback pra OPENAI_API_KEY, resolvidas via env — mesma convenção de FAL_AI_API_KEY na skill 17. Sem chave configurada, usar local automaticamente em vez de falhar.
Sem pedido explícito do usuário, a skill usa: transcrição local, extração de frame em modo scene-aware (equilíbrio custo/cobertura), e tenta legenda nativa antes de qualquer processamento de áudio ou vídeo.
Baixar vídeo de plataformas de terceiros pode violar os termos de uso do serviço, dependendo do conteúdo e da finalidade. Confirmar com o usuário que ele tem direito de baixar/processar o vídeo antes de prosseguir — não assumir que todo vídeo público é livre para download.
| Racionalização | Realidade |
|---|---|
| "É só pegar a legenda automática do YouTube" | Legenda automática erra nome próprio e termo técnico — avisar o usuário quando a fonte é auto-gerada, não humana |
| "Hosted é sempre melhor, é mais rápido" | Hosted manda o áudio pra fora — usar só quando o usuário aceitar esse trade-off explicitamente |
| "Extrair todos os frames pra garantir cobertura" | Uniform sem cap em vídeo longo estoura o orçamento de contexto — escolher a estratégia pelo orçamento disponível |
faster-whisper, que a fonte não oferece (ela é hosted-only via Groq/OpenAI).felvieira/claude-skills-fv
90329e3
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.