Linha de Produção de Clonagem 1:1 de Vídeos de Resenha de Livros
Decomponha o formato de vídeo de uma conta de referência em uma receita reutilizável e, em seguida, use uma linha de produção industrial (portão de storyboard → timeline TTS quadro a quadro → renderização de texto sobreposto → renderização headless quadro a quadro) para produzir conteúdo original no mesmo formato. O que é clonado é o formato (estrutura/embalagem/ritmo/estilo visual), não o conteúdo — roteiro, imagens e narração são totalmente originais.
Este skill foi completamente validado com o livro Rápido e Devagar (referência "Xiang Bu Huo", 109 quadros, 654,9s de vídeo final).
Antes de começar, confirme três coisas com o usuário
- Vídeo de referência: caminho do arquivo local ou link (Douyin/Bilibili, etc.). Se não for possível obter o arquivo de vídeo, peça ao usuário para gravar a tela ou baixar e colocar no projeto.
- Título do livro desta edição: Qual livro será abordado (melhor para negócios, cognição, psicologia, carreira, crescimento).
- Nome da marca + Nome da persona: Exemplo: "Lab do Conhecimento / Mark".
Fase A · Inicialização do Projeto
PROJ=diretório do projeto (definido pelo usuário ou novo)
mkdir -p $PROJ/{00_benchmark,01_script,02_storyboard,03_audio,04_subtitles,05_assets/images,07_hyperframes_production,08_publish,scripts}
cp <diretório_skill>/templates/{pipeline.py,create_storyboard.py,gen_audio_minimax.py,build_hyperframes_html.py,render_html_video.py} $PROJ/scripts/
cp <diretório_skill>/templates/.env.example $PROJ/.env # Usuário preenche MINIMAX_API_KEY
Dependências: python3 + playwright (com chromium) + ffmpeg. Se faltarem, instale: pip install playwright && playwright install chromium.
Fase B · Análise do Benchmark → Produção da Receita
Siga references/benchmark-analysis.md para analisar o vídeo de referência e produzir 00_benchmark/recipe.md (receita em cinco camadas: especificações/ritmo/estrutura/visual/áudio). Em seguida, injete a receita nos modelos:
| Item da Receita | Local de Injeção |
|---|---|
| Palavras-chave de estilo visual do corpo | STYLE_SUFFIX em create_storyboard.py |
| Descrição do fundo do cartão de capítulo/final | CARD_BG_PROMPT / OUTRO_CARD_PROMPT no mesmo arquivo |
| CSS de cor de destaque/cor do título | #ffde59 (amarelo destaque) / #e8c66a (dourado título) em build_hyperframes_html.py, etc. |
O modelo padrão já vem com a receita "quadrinhos retrô americanos + fundo preto e dourado" (referência Xiang Bu Huo). Se o benchmark seguir essa linha, a injeção pode ser pulada.
Fase C · Criação do Roteiro (Seis Parágrafos)
Siga references/copywriting-template.md para escrever 01_script/final.md.
Regra de ferro: Cada frase deve poder ser transformada em uma imagem concreta — o portão de cobertura da próxima etapa depende palavra por palavra do roteiro. Atualize simultaneamente a [Configuração por Episódio] no topo de create_storyboard.py (SCRIPT_MD aponta para final.md, BOOK_TITLE).
Fase D · Storyboard (Portão ①)
Preencha cada frase do roteiro nas quádruplas SHOTS do scripts/create_storyboard.py (narração = fatia exata do texto original, imagem = tradução literal, card_id, overlay_text). Em seguida:
python3 scripts/create_storyboard.py
Se o portão de cobertura não passar, pare e corrija. Nunca prossiga com defeito. Produto: 02_storyboard/prompts.tsv + nano_banana_prompts.md.
Fase E · Geração de Imagens em Lote (Etapa Manual)
Entregue o arquivo nano_banana_prompts.md inteiro para a ferramenta de geração de imagens do usuário (Gemini Antigravity / Nano Banana ou qualquer ferramenta). Instruções: 16:9, nomes de arquivo exatamente iguais à lista, colocar em 05_assets/images/, pular arquivos existentes. Deve gerar N imagens do corpo + chapter_card_bg.png + outro_card.png. Esta etapa pode ser executada em paralelo com a Fase F.
Fase F · Narração + Timeline em Nível de Quadro
python3 scripts/gen_audio_minimax.py --limit 3 # Sintetiza os primeiros 3 quadros para o usuário testar o timbre
python3 scripts/gen_audio_minimax.py # Completo (limite de 18 RPM, ~110 quadros ≈ 7 minutos)
Timeline = cálculo de duração baseado em bytes PCM, preciso quadro a quadro, sem Whisper. Ao alterar texto, apenas o quadro correspondente é ressintetizado (cache de hash).
Fase G · Renderização do Vídeo (Portão ② + Motor)
python3 scripts/build_hyperframes_html.py # Verificação de conjunto: só renderiza se "tudo estiver pronto"
python3 scripts/render_html_video.py --start 0 --duration 6 --out /tmp/smoke_hook.mp4
python3 scripts/render_html_video.py --start <momento de um cartão de capítulo> --duration 6 --out /tmp/smoke_card.mp4
python3 scripts/render_html_video.py --start <5 segundos antes do final> --duration 6 --out /tmp/smoke_outro.mp4
# Após inspeção visual dos três trechos, renderizar o vídeo completo (~110 quadros ≈ 11 min de vídeo, renderização ~14 min)
python3 scripts/render_html_video.py
Se a renderização for interrompida, basta executar novamente (retomada automática). É possível pré-visualizar no navegador: open 07_hyperframes_production/index.html (espaço para reproduzir, ←→ para avançar/retroceder 5 segundos).
Fase H · Validação + Publicação
Lista de comandos de validação, pontos de inspeção visual por amostragem, modelos de materiais de publicação (fórmula de título/tags/capa/comentário fixado) estão em references/pipeline-guide.md. Os materiais são salvos em 08_publish/.
Regras Rígidas (Nunca Violar)
- Não avançar sem passar pelo portão: portão de cobertura (roteiro = narração), verificação de conjunto (todas as imagens prontas para renderizar)
- Chave de API apenas no
.env: nenhum script, documento ou artefato da conversa pode ter a chave codificada - Imagens sem texto, todo texto na camada de renderização: cartões de capítulo/dados/legendas/marca são sobreposições HTML. Trocar de livro = zero retrabalho.
- Antes da renderização completa, três trechos devem ser inspecionados visualmente: gancho / cartão de capítulo / final
- Todos os prompts de geração de imagem devem incluir sufixo de estilo fixo + proporção 16:9 + fundo sem texto ou logotipos
Referência de Desempenho (Calibrar Expectativas)
Roteiro de 3601 caracteres → 109 quadros → 654,9s de vídeo final; TTS: 7 minutos; Renderização a 24 fps (vídeo completo ~14 min); Tempo total de trabalho humano ≈ um dia útil (roteiro consome mais da metade).