O que code-video-infinite faz?
O quadro não é "gerado", é "escrito". Aqui não há modelos de geração de imagem/vídeo: um vídeo é uma página web ou um projeto Remotion. Dê a ele um tempo t, ele desenha aquele quadro; renderizado por navegador headless ou Remotion quadro a quadro, e ffmpeg combina áudio e vídeo. O som também pode ser sintetizado por código. Portanto, cada vídeo pode ser buscado arbitrariamente, re-renderizado arbitrariamente, e uma nova versão não desviará da anterior.
Esta skill é a fusão de cinco mecanismos: uma entrada, um fluxo, três portões, cada mecanismo mantendo sua documentação completa e materiais.
0 · Rode estes dois comandos antes de começar (30 segundos, não pule)
node scripts/doctor.mjs # Ambiente: Node / ffmpeg / ffprobe / Python / Chrome / verificar se os 5 mecanismos estão completos
node scripts/find.mjs --stats # Diretório: 880 materiais organizados por fonte e coleção
Se doctor mostrar FAIL, corrija o ambiente primeiro, depois crie. Se faltar Chrome, instale Chrome ou npx playwright install chromium; no Windows, se o npm for bloqueado pela política de execução, use npm.cmd.
1 · Escolha o mecanismo primeiro, depois o estilo
A necessidade do usuário determina o mecanismo, não a abundância do catálogo. Um vídeo usa apenas um mecanismo principal por padrão, o segundo mecanismo serve apenas para obter materiais.
| Como é a demanda | Mecanismo | O que ele faz de melhor | Custo inicial |
|---|---|---|---|
| Vídeo de 15–30s de produto/lançamento/habilidade, com ritmo, movimento de câmera, "não parecendo PPT" | onetake | Síntese em HTML único, desfoque de movimento de obturador real, efeitos sonoros sintetizados, oráculo de ritmo e transição | Python + Chrome; renderização 4K60 é lenta (informe o tempo antes) |
| Vídeo promocional, sensação cinematográfica, captura real de página web, narrativa multi-cena, para editar no CapCut, para postar em redes sociais | shotcraft | 124 cartas de lente + modelo Ink Press + captura de página real + seleção de áudio do Freesound + estação de trabalho | Node + Remotion (instalação via npm); Remotion tem licença separada |
| Precisa de formas específicas, materiais, objetos 3D, personagens e animais, desenho à mão, cenas executáveis | claude-motion | 47 casos de código fonte + 20 componentes + 30 modelos de objetos + 14 pontos de partida de cena, código fonte fiel em vez de tags de estilo | Node ≥ 22 + Playwright Chromium + ffmpeg; grande volume de materiais |
| Precisa de estilo MG (plano/linha/ isométrico/renderização 3D/quadro a quadro/colagem/líquido/morfologia/Bauhaus/Synthwave/vidro/lettering/adesivo/pixel/HUD cibernético) | mg-motion | 15 técnicas de assinatura verificáveis + pacote de 103 samples musicais + 10 portões de máquina + duas rodadas de revisão | Precisa de Chrome (MG_CHROME) + ffmpeg + fontes auto-inicializadas |
| Precisa apenas do código fonte real de um movimento, transição ou animação de texto, para usar em outro projeto | wise-motion | 462 entradas de efeitos, pré-visualização, entradas de código fonte real e scripts de exportação | Apenas entrega materiais, não projeta o vídeo inteiro para você |
Detalhes de roteamento, combinações inválidas e limites claros de cada mecanismo estão em references/engine-selection.md.
Pesquise qualquer material com o mesmo comando (através dos 5 mecanismos):
node scripts/find.mjs "HUD radar"
node scripts/find.mjs "café desenho à mão" --limit 5
node scripts/find.mjs fade --source wise-motion
node scripts/find.mjs "título entrada" --collection shot-card --json
2 · Pipeline de seis etapas (ordem fixa, pode omitir etapas, mas não pule os portões)
| Etapa | O que fazer | Documentação aprofundada |
|---|---|---|
| 0 Requisitos | Perguntar especificações de entrega (duração/quadro/fps/áudio/legendas/idioma), fonte de materiais, público e plataforma; perguntar tudo de uma vez, não perguntar item por item | references/pipeline.md §0 |
| 1 Referência | Se houver vídeo de referência, analise-o: gráfico de energia, pontos de corte, proporção de estática, t80 e motion blur (onetake analyze_ref.py); se não houver, escreva metas numéricas verificáveis | references/motion-grammar.md |
| 2 Conceito | Três ideias centrais diferentes entre si, o usuário escolhe uma; ao mesmo tempo, selecione look/estilo pelo nome, não aplique padrão silenciosamente | onetake §2 / mg-motion §2 |
| 3 Ritmo e transição | Storyboard projetado com ritmo e transição como duas pernas: não permita planos de duração igual, não permita que um beat substitua o anterior | references/motion-grammar.md |
| 4 Materiais e planos | Captura de página real / restaurar UI a partir de captura / modelos de objetos / cartas de lente / entradas de efeitos; primeiro obtenha o menor trecho executável | ENGINE.md de cada mecanismo |
| 5 Implementação | Cada quadro é função pura do tempo; movimentos escolhidos da biblioteca, curvas definidas por t80; primeiro gere quadro estático, depois o vídeo completo | ENGINE.md de cada mecanismo |
| 6 Renderização e entrega | Rascunho 1080p30 → aprovação → 4K60/versão final; passe pelos três portões; reporte conforme contrato de entrega | references/delivery.md |
3 · Regras de ferro (fundidas dos cinco mecanismos, cada uma já foi pisada por alguém)
- Cada quadro depende apenas de t. Proibido
Date.now(), estado acumulado por rAF, animações CSS acionadas por estado; pseudo-aleatoriedade com semente fixa. - Não confunda a história do template com a história do usuário. Conceito deve ser escolhido entre três; se o novo vídeo usar o beat do template, será lido como template.
- Não leve o look do vídeo anterior para o próximo. Look/estilo deve ser selecionado pelo nome, padrão silencioso não é permitido.
- Não divida o tempo em partes iguais como um metrônomo. Planos de duração igual, mesmo que bem feitos individualmente, serão lidos como slides.
- Não substitua o beat, faça a transição dele. Cada fronteira de parágrafo deve ter algo que sobreviva e se mova/escala visivelmente para o próximo parágrafo; cenas mutuamente exclusivas (troca de página com
display:none), mesmo com ritmo perfeito, é PPT. Exceções: cortes secos de impacto e cards finais. - O espaço em branco é condição para o impacto cair. Em vídeos de referência, cerca de 1/3 do tempo é estático; vídeo sem pausa = sem clímax.
- Pequenos elementos, grande fundo. A tela desses vídeos geralmente é 70% branca/cor de fundo; tela cheia é exceção, não padrão.
- A causa deve ser visível. A mão desenhando a partir do caminho gravado, bola caindo, ponto se dividindo — a página se movendo sozinha é lida como protetor de tela.
- Movimento rápido precisa de obturador. Acima de ~80 px/quadro sem desfoque de movimento causa cintilação e imagem fantasma; use o obturador do renderizador, não CSS blur.
- A câmera deve seguir o protagonista. Câmera parada será avaliada como "falta movimento de câmera fluido que acompanhe"; declare
inFrame, deixe a câmera atrasar, inclinar, e estabilizar. - Rascunho 1080p30. Não renderize 4K60 em clipes não aprovados.
- Não use partículas/confetes/lascas como decoração. Será lido como template; para algo chamativo, deixe as letras pousarem sozinhas.
- Som: um quarto, um material. Cada evento com um som sintético = versão em áudio de slides.
- Não finja: amostras não executadas não são reprodução, vídeos sem áudio não são vídeos com áudio, aprovação técnica não equivale a padrão estético.
4 · Três portões, indispensáveis
| Portão | Quem julga | O que julga | O que fazer se não passar |
|---|---|---|---|
| Portão de máquina | node scripts/qc.mjs gate <video> | Duração/quadro/fps/trilha de áudio/LUFS/pico verdadeiro/quadros pretos/proporção de quadros estáticos | Alterar o vídeo e re-renderizar, não alterar o padrão |
| Portão de quadros estáticos | Você mesmo read_image | 6–10 quadros-chave podem servir como pôster: composição/camadas/espaço em branco/tipografia | Reorganizar a composição |
| Portão de revisão | Subagente independente em contexto limpo | Avaliação em 7 dimensões + lista de alterações com números de quadro; após alterações, reavalie uma rodada | Alterar por ordem de impacto |
O portão de máquina mede apenas o que a máquina pode medir; a estética é sempre deixada para a revisão independente, a auto-inspeção do criador tem viés de confirmação.
Os portões específicos de cada mecanismo (mg-qc.mjs, verify_promo.py, final-review.md, jury.md) e seus critérios estão em references/quality-gates.md.
5 · Som
- Objetivo: um quarto, um material, número de eventos menor que o número de beats; música padrão usa apenas faixas com permissão comercial e registro.
- Metas comuns:
−14 LUFS(redes sociais/web),−16 LUFS(filmes longos/podcast), pico verdadeiro≤ −1 dBTP(após codificação AAC, o nível sobe); para maior margem, use−3.5. - Ferramentas prontas dos três mecanismos: onetake
sfx_palette.py/score.py(mixagem sintetizada + gravação), mg-motionaudio.py+ 103 samples, shotcraftsound-design.md+sfx-source.py(Freesound, CC0 padrão). - Detalhes e limites de licenciamento em
references/sound.md.
6 · Contrato de entrega
Cada vídeo deve ter todos os sete itens (faltar um significa não concluído): duas frases de conceito / beat sheet com timecode / técnicas de assinatura correspondentes uma a uma / quais estilos foram usados e como foram transmitidos / rota técnica / números medidos (duração quadro fps LUFS pico verdadeiro quadros pretos proporção de estáticos) / top-3 fraquezas honestas.
Entregas extras dos mecanismos: onetake multi-idioma com mesma fonte (?lang= sem bifurcação), claude-motion ADAPTATION.md (preservação/reescrita/licenciamento/problemas não resolvidos), shotcraft estação de trabalho de efeitos e projeto CapCut, mg-motion diretório de versões v1/ v2/. Veja references/delivery.md.
7 · Mapa de diretórios
Code-Video-Infinite.skill/
├── SKILL.md # Este arquivo: roteamento + regras de ferro + portões + entrega
├── README.md # Para humanos: o que são os 5 mecanismos, como instalar, tabela de licenças
├── LICENSES.md # Licenças por mecanismo e declarações de terceiros
├── references/ # Conhecimento compartilhado após fusão (novo, apenas julgamentos entre mecanismos)
│ ├── engine-selection.md # Matriz de decisão e limites
│ ├── pipeline.md # Profundidade de cada etapa das 6 etapas
│ ├── motion-grammar.md # Vocabulário unificado de ritmo/curva/transição/movimento de câmera
│ ├── sound.md # Som e limites de licenciamento
│ ├── quality-gates.md # Critérios dos três portões
│ ├── delivery.md # Contrato de entrega
│ ├── assets-and-licenses.md# Onde estão os materiais, se podem ser redistribuídos
│ └── provenance.md # Cinco fontes, versões, o que foi feito na fusão
├── catalog/
│ ├── INDEX.md # Lista de 880 materiais (gerado)
│ ├── index.json # Mesma versão legível por máquina
│ └── assets-index.json # Lista de 537 materiais pesados
├── scripts/
│ ├── doctor.mjs # Autoverificação de ambiente
│ ├── find.mjs # Pesquisa entre mecanismos
│ ├── qc.mjs # Portão de máquina unificado (measure / gate / delegate)
│ ├── build-catalog.mjs # Reconstrução de índice
│ └── check-links.mjs # Verificação de links entre documentos
└── engines/ # Cinco mecanismos preservados (com suas documentações/materiais/licenças)
├── onetake/ ENGINE.md + lib/motion.js + scripts/ + looks/ + cases/
├── shotcraft/ ENGINE.md + references/shots(124) + template/ + demos/ + assets/
├── claude-motion/ ENGINE.md + references/*.json + assets/{cases,extensions,models,scenes}
├── mg-motion/ ENGINE.md + mg-styles-15/{harness,assets} + references/ + scripts/
└── wise-motion/ ENGINE.md + catalog/registry.json + references/effects(462) + scripts/
8 · Quando ler qual arquivo
| Momento | Ler |
|---|---|
| Não sabe qual mecanismo usar | references/engine-selection.md |
| Vai começar, precisa de ações e comandos específicos de cada etapa | references/pipeline.md |
| Ritmo errado, parecendo PPT, movimento muito mole/muito duro | references/motion-grammar.md |
| Dublagem/efeitos sonoros/música/volume | references/sound.md |
| Vídeo pronto, medo de não passar no portão | references/quality-gates.md |
| Vai entregar, precisa de relatório, ou quer refazer | references/delivery.md |
| Usar material de um mecanismo, não tem certeza se pode usar comercialmente | references/assets-and-licenses.md |
| Quer atualizar um mecanismo ou perguntar sobre a fonte | references/provenance.md |
| Profundidade do mecanismo (única autoridade) | engines/<engine>/ENGINE.md e seus references/ |
9 · Licenciamento e limites de materiais (versão resumida)
As licenças dos cinco mecanismos são diferentes, o repositório fundido não altera as licenças individuais: onetake é PolyForm Noncommercial (gratuito para uso não comercial), wise-motion é Apache-2.0, claude-motion e o upstream mg-styles-15 são MIT (ativos de terceiros mantêm suas licenças), shotcraft tem licença própria e Remotion tem licença separada (uso comercial por empresas precisa ser verificado). Fontes, modelos, efeitos sonoros, músicas de fundo têm autorização registrada item a item em references/assets-and-licenses.md e nos arquivos LICENSE / ATTRIBUTION / NOTICE de cada mecanismo. Nomes de marcas são sempre fictícios, não use marcas reais.