Communitygithub.com

qingtengCHINA/motion-graphics-video

Crie vídeos de motion graphics de nível de portfólio (15/30/60 segundos ou personalizado): fluxo de evidências documental + sistema de design de vidro líquido + linha do tempo orientada a dados + narração TTS + renderização em blocos e aceitação completa. Use quando o usuário solicitar vídeo de motion graphics / vídeo de portfólio / vídeo promocional com narração / vídeo de história de modelo. Antes de começar, pergunte ao usuário três coisas: tema da necessidade, modelo principal e modelo TTS; recomenda-se o uso da série de modelos Qwen.

O que é motion-graphics-video?

Esta skill capacita agentes de IA a produzirem vídeos de motion graphics de altíssima qualidade, adequados para portfólios profissionais, com duração de 15, 30, 60 segundos ou personalizada. O agente assume total liberdade criativa para empregar as melhores ferramentas e técnicas, priorizando design visual excepcional, direção de arte ousada, composições marcantes e animações impactantes. A skill é baseada em um processo completo de produção de um documentário de 201 segundos, abrangendo desde a verificação de fatos até a mixagem de áudio e entrega final. As plataformas suportadas incluem agentes como Claude Code, Cursor e Codex, e o fluxo de trabalho envolve a coleta de três informações essenciais do usuário (tema, modelo principal e modelo TTS), a criação de um cronograma orientado por dados, a renderização em blocos para eficiência e uma rigorosa lista de verificação de aceitação. O resultado é um único arquivo de vídeo acompanhado de um roteiro completo, garantindo precisão factual, design consistente (como o sistema de vidro líquido) e qualidade profissional de áudio.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/qingtengCHINA/motion-graphics-video/tree/HEAD

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Motion Graphics Video · Vídeo de Motion Graphics Nível Portfólio

Trate "um vídeo" como se fosse um projeto de motion design de alto nível, como um portfólio de currículo. Use qualquer ferramenta ou técnica que você considere capaz de produzir o melhor resultado. O agente tem total liberdade criativa, priorizando design visual excepcional, direção de arte ousada, composições marcantes e animações poderosas, para que cada segundo tenha valor. Dê o seu melhor. Esta skill foi destilada de um processo completo de produção de um documentário de 201 segundos (verificação de fatos → captura de evidências → aprendizado de animações → sistema visual → linha do tempo orientada por dados → leitura de narração → renderização em blocos → mixagem de quatro faixas → aceitação item por item).


0. Antes de começar: Três perguntas obrigatórias ao usuário (não pode pular)

Use AskUserQuestion (ou equivalente) para coletar tudo de uma vez. Sem qualquer um dos itens, não comece:

  1. Necessidade / Tema — Sobre o que será o vídeo? Público-alvo e cenário de veiculação? Existem fatos, produtos, pessoas, cores da marca que devem aparecer? Também forneça as opções de duração: 15 / 30 / 60 / Personalizado segundos (padrão 60). A duração é um orçamento, não um valor fixo: no final, ela será determinada pela densidade do conteúdo e pela duração da narração.
  2. Modelo principal — O modelo responsável pelo planejamento, roteiro, código e orquestração. Recomendação: Série Qwen (ex.: Qwen4-Max / Qwen3.8-Plus): contexto longo é ideal para a linha do tempo completa do vídeo e projetos com vários arquivos, com qualidade estável para roteiro em chinês e verificação de fatos. O usuário também pode especificar outro modelo, respeitando sua escolha.
  3. Modelo TTS — O modelo responsável pela narração. Recomendação forte: Série Qwen TTS Audio (ex.: qwen-audio-3.0-tts-plus): suporta instruções de timbre e tom, tom natural para documentários. É necessário confirmar: timbre, instrução de tom e idioma.

Também confirme (valores padrão podem ser fornecidos): preferência de estilo visual, resolução / taxa de quadros (padrão 1920×1080@30), necessidade de trilha sonora (padrão: sim), necessidade de efeitos sonoros (padrão: não — efeitos sonoros sintéticos podem soar baratos, a menos que o usuário peça explicitamente), e arquivos de referência / imagens / URLs fornecidos pelo usuário.

Disciplina de chaves: Qualquer chave de API deve ser escrita apenas no arquivo .env do projeto, que deve ser adicionado ao .gitignore. Não escreva em documentos, memória, logs e não exiba na conversa.


1. Prompt principal (versão otimizada · espaços reservados variam conforme a entrada do usuário)

Entregue o seguinte prompt como diretriz criativa para o agente executor; {{…}} são espaços reservados a serem preenchidos conforme os resultados coletados na seção 0:

Crie um vídeo de motion graphics de {{DURATION}} segundos, mostrando seu nível como designer de motion, como em um portfólio de currículo.
Tema: {{THEME}}.
Você tem total liberdade criativa, use qualquer ferramenta ou técnica que produza o melhor resultado; priorize design visual excepcional, direção de arte ousada,
composições marcantes e animações poderosas. Faça cada segundo valer a pena. Dê o seu melhor.

O planejamento e o código são de responsabilidade do {{MAIN_MODEL}}; a narração é sintetizada pelo {{TTS_MODEL}} (timbre {{VOICE}}, tom {{TTS_INSTRUCTION}}).
Estilo visual: {{STYLE}}; formato {{RESOLUTION}}@{{FPS}}fps; trilha sonora {{MUSIC}}; efeitos sonoros {{SFX}}.

Se precisar de UI, símbolos, materiais reais, clipes de vídeo ou música de fundo, pesquise, baixe e use por conta própria;
Você DEVE examinar e consultar um por um os arquivos, imagens e URLs fornecidos pelo usuário: {{REFERENCES}}.
Primeiro, navegue pelos exemplos de animação em https://snapcn.dev/docs/components para aprender com as melhores práticas antes de começar; componentes de membros devem ser usados apenas para aprendizado de conceitos, sem contornar pagamentos ou verificações.

Requisitos de produção (inegociáveis):
1 Fatos: Cada número, data ou citação exibida na tela deve ter uma URL de origem e o momento da estatística; para eventos do último ano, pelo menos duas fontes independentes; a linguagem não deve ser mais abrangente do que a evidência.
2 Evidências: Capturas de tela reais / gravações de tela / páginas de artigos devem ser apresentadas em tela cheia ou em janelas flutuantes de vidro; ao capturar, registre as âncoras do DOM para que os zooms e realces de texto sempre se alinhem;
  Para imagens históricas, priorize snapshots do Wayback Machine; pop-ups devem ser ocultados durante a captura; não contorne proteções anti-bot ou CAPTCHAs.
3 Enquadramento: Três níveis de plano (WIDE / MID / MACRO), cada movimento de câmera deve seguir: move → settle (≥18 quadros, apenas 0,5% de deriva de respiração) → exit;
  Use curvas de Bézier suaves para aceleração/desaceleração nos movimentos, proibido movimento linear de câmera; zoom máximo de 1,8×, garantindo que o conteúdo enfatizado esteja completamente dentro da zona segura.
4 Coerência: Siga a lei da continuidade da Gestalt — nenhum elemento deve aparecer ou desaparecer abruptamente, todas as entradas e saídas devem ter animação; o vocabulário de transições deve ser fixo e cada um com um significado.
5 Tipografia: Zona segura ≥96px; máximo de 2 camadas de texto por tela (legenda + um título ou um número); posição fixa da legenda, coloração palavra por palavra, sem participar de outras animações;
  Texto na tela não deve repetir a narração, apenas fornecer datas, modelos, valores, fontes; texto na tela sem pontuação final.
6 Material: Cartões / janelas flutuantes / painéis devem usar o sistema de vidro líquido unificado (frost≈18px, rim≈0,22, bend≈0,45, dispersion≈0,35);
  Paleta de cores extraída do tema (7–8 cores), cor de destaque usada apenas como marcador; manter granulação e vinheta; usar desfoque de movimento e aberração cromática apenas em movimentos rápidos.
7 Ritmo: Cortes secos devem aderir às batidas da trilha sonora (±3 quadros); após a digitação de um cartão de problema / título, deve haver uma pausa de ≥1,5s; para listas e conteúdo do tipo parede, pausa de ≥3s;
  A duração é determinada pelo conteúdo, não corte rápido para preencher tempo nem reduza pausas para encurtar.
8 Áudio: Narração a −16 LUFS; trilha sonora deve sofrer ducking de 6–9dB sob a narração (attack≈150ms / release≈400ms); emoção dos capítulos pode usar filtro passa-baixa ou silêncio para criar respiração;
  Sem efeitos sonoros por padrão; pico verdadeiro do barramento mestre ≤ −1 dBTP.
9 Engenharia: Linha do tempo gerada por script a partir da duração da narração; cenas lêem apenas quadros relativos; limites da renderização em blocos devem cair nos pontos de corte da câmera; se a renderização falhar, reduza a concorrência e tente novamente automaticamente.
10 Entrega: Entregar apenas um arquivo de vídeo + um roteiro completo (storyboard / narração / texto na tela / materiais / animações / fontes); mover produtos intermediários para a lixeira em vez de excluí-los.

Aceitação (teste o arquivo entregue, verifique item por item): número de quadros = linha do tempo; resolução / taxa de quadros; I≈−16 LUFS e TP≤−1 dBTP; blackdetect sem preto inesperado;
Sem paradas contínuas >1,5s; emendas de blocos sem quadros repetidos / perdidos; ≥70% de cortes secos na batida; verificação visual do contato sheet no ponto médio de cada settle de câmera;
Verificação de quadros a cada 4 quadros para movimentos de câmera, verificando easing e desfoque; leitura e comparação de cada frase da narração (timestamps em nível de palavra ou Whisper local); lista de fontes consistente com o que aparece na tela.

Tabela de espaços reservados (flexível conforme entrada / escolha do usuário)

Espaço reservadoOrigemPadrão
{{DURATION}}Escolha de duração na Seção 060
{{THEME}}Texto da necessidade do usuárioObrigatório
{{MAIN_MODEL}}Escolha do usuárioQwen3-Max (recomendado)
{{TTS_MODEL}} / {{VOICE}} / {{TTS_INSTRUCTION}}Escolha do usuárioqwen-audio-3.0-tts-plus / Timbre de documentário estável / Tom estável, magnético, solene, velocidade moderada
{{STYLE}}Escolha do usuárioDocumentário em vidro líquido
{{RESOLUTION}} / {{FPS}}Escolha do usuário1920×1080 / 30
{{MUSIC}} / {{SFX}}Escolha do usuárioSim (faixas licenciadas CC) / Não
{{REFERENCES}}Arquivos / imagens / URLs fornecidos pelo usuárioSe não houver, deixe vazio e pesquise por conta própria

2. Linha de produção (ordem de execução)

  1. Perguntar os três elementos → Salvar em data/brief.json.
  2. Verificação de fatos → data/facts.md: cada URL + momento da estatística + diferenças de definição; tabela de correção de linguagem (remover termos como "primeiro(a)" / "empatar" / "superar recorde" se não houver evidência na fonte original).
  3. Materiais e âncoras → Captura de tela de página inteira com Playwright dpr2 + anchors.json (caixa delimitadora DOM / Range em nível de palavra) + meta.json (capturedAt / sha256); para cenas de rolagem, capturas scrollTo quadro a quadro para garantir suavidade a 30fps; texto de terminal / fluxo de pensamento deve vir de execução real ou exemplos públicos oficiais.
  4. Aprendizado de animações → Navegar pela biblioteca de componentes snapcn, extrair primitivas (entrada com mola de frase, varredura de brilho de especificação, queda de número, ponto andando em linha quebrada, parede de modelo flutuante, legenda karaokê…), implementar com pesquisa própria, não copiar o código de membros.
  5. Sistema visual → Paleta de cores / fontes / material de vidro / zona segura / vocabulário de transições / divisão de texturas por capítulo (cada capítulo com uma textura e um plano marcante).
  6. Narração → TTS frase por frase + tabela de substituição de pronúncia (ex.: QwQ → Q W Q) + corte de silêncio + normalização de volume; leitura e comparação com Whisper local, refazer síntese para frases com pontuação baixa.
  7. Batida e linha do tempo → Mapa de batidas com librosa; duração do plano = max(orçamento, pausa + narração + pausa); pontos de corte aderem às batidas; limites dos blocos = pontos de corte; saída timeline.gen.json, cenas lêem apenas quadros relativos.
  8. Renderização → Renderização em blocos com Remotion (CRF16, yuv420p, BT.709), em caso de falha, reduzir concorrência e tentar novamente; juntar e encapsular.
  9. Mixagem → Duas faixas: narração / trilha sonora (sem efeitos sonoros por padrão); ducking + filtro passa-baixa por capítulo + silêncio antes de cada frase; normalização de loudness em duas passadas (I=−16, TP≤−2 para margem AAC).
  10. Aceitação e entrega → Verificar item por item conforme lista de verificação na Seção 1; inspeção visual do contact sheet + sequência de movimento; limpar produtos intermediários (mover para lixeira); entregar vídeo único + roteiro.md.

3. Restrições rígidas

  • Chaves armazenadas apenas em .env (adicionado ao .gitignore); sem exibição em documentos / logs / conversas.
  • Exclusão sempre mover para ~/.Trash, proibido rm.
  • Não contornar proteções anti-bot, CAPTCHAs ou paywalls; se bloqueado, trocar de fonte e anotar na tabela de fatos.
  • Entregar apenas um arquivo de vídeo; cenas recriadas devem ter um canto com a marca "Animação ilustrativa".
  • Texto na tela separado da narração; texto na tela sem pontuação final; números na narração em algarismos arábicos, sem separadores de milhar.

4. Falhas comuns e soluções alternativas

  • Âncoras ausentes em páginas com carregamento preguiçoso → Pré-rolagem antes da captura + tentar scrollIntoViewIfNeeded para âncoras ausentes; calcular dinamicamente os pontos de parada / quadros com base nas âncoras reais, garantindo sincronismo de áudio e vídeo.
  • Páginas com contêiner de rolagem interna não capturadas completamente com fullPage → Usar fullPage:true + clip; para páginas muito longas, recortar localmente com base nas âncoras e recalcular as coordenadas das âncoras.
  • Pop-ups / modais de redirecionamento → Ocultar com CSS durante a captura ou ocultar seus ancestrais fixed/absolute por localização de texto; não clicar em botões que redirecionam.
  • Tela opaca de dispositivos → Colocar a camada de gravação de tela sobre o PNG do dispositivo, recortando conforme a porcentagem da tela no template.
  • Recorte de texto importante devido ao zoom → Limite de zoom de 1,8× + retângulo de foco completamente dentro da zona segura; janela de recorte dentro do painel alinhada ao centro do painel com cx/cy.
  • Falso positivo na detecção de parada → Usar dois indicadores ("média + proporção de pixels alterados") a 960×540@10fps; para settle, manter 0,5% de deriva de respiração.
  • Pico verdadeiro AAC acima do limite → Deixar margem de 0,5–1dB no alvo TP do loudnorm (ex.: −2,2); medir novamente após encapsulamento.

Habilidades Relacionadas