Como criar vídeos
Cada vídeo do Chakra Studio é uma pasta em projetos/. Você deixa nela o pedido, as referências e os
parâmetros; o agente (Claude Code com a skill chakra-studio) escreve o roteiro, grava a voz, monta as
cenas e devolve os MP4 e a pasta documentada. Dá também para fazer tudo à mão: os dois caminhos estão aqui.
Antes da primeira vez
- Node 22 ou mais novo, ffmpeg e Google Chrome instalados.
- As variáveis
ELEVENLABS_*em~/dev/chakra/.env(voz, música e efeitos saem de lá). - Uma vez por máquina:
npx hyperframes telemetry disable. - Abra o Claude dentro do repositório:
cd ~/dev/chakra-studio && claude.
Caminho 1 — com o agente (o normal)
1. Crie a pasta do vídeo
node studio/scripts/novo.mjs lancamento-coraline # estilo terminal (padrão)
node studio/scripts/novo.mjs institucional --estilo classico # ouro e serifas
Use nome curto, em minúsculas e com hífen: ele vira o nome dos arquivos e o endereço no site.
2. Escreva o pedido em briefing.md
Texto livre. Quanto mais concreto, melhor. Um bom briefing responde:
- Assunto: sobre o que é.
- Para quem e onde: quem assiste e em que lugar (Reels, YouTube, site, reunião).
- Objetivo: o que a pessoa deve entender ou fazer no fim.
- Obrigatório: frases, números, nomes e telas que não podem faltar.
- Proibido: o que evitar (nome de cliente, promessa, jargão).
Exemplo:
Reels de 25 segundos apresentando a Coraline para dono de clínica. Mostrar que ela atende no WhatsApp, confirma consulta e passa para a recepção quando precisa. Não citar preço. Fechar mandando para chakra.gold.
3. Jogue as referências
| Pasta | O que pôr | Como é usado |
|---|---|---|
referencias/videos/ | vídeos de estilo, ritmo ou virada que você gosta | o agente extrai quadros e lê ritmo de corte, composição e tipografia |
referencias/imagens/ | prints, logos, fotos, telas do produto | viram material de cena ou guia visual |
referencias/conteudo/ | textos, PDFs, planilhas; links num links.txt | fonte dos fatos e números da narração |
Nada é inventado: o que vai para a tela ou para a voz sai do briefing, das referências ou de fonte citada.
4. Ajuste os parâmetros em video.json
{
"titulo": "Coraline para clínicas",
"estilo": "terminal",
"formatos": ["vertical"],
"duracao": 25,
"ritmo": "rapido",
"voz": true, "legenda": true, "musica": true, "efeitos": true,
"cta": "chakra.gold"
}
Quer só vertical? "formatos": ["vertical"]. Quer tudo? ["youtube", "vertical"]. A lista completa está em
Parâmetros.
5. Peça
produz o vídeo de projetos/lancamento-coraline
Sem pasta também funciona — "faz um reels de 20 s sobre o Midas, só vertical" — e o agente cria a pasta e
registra o seu pedido no briefing.md.
6. Confira o que voltou
saida/<nome>-youtube.mp4(1920×1080) e/ousaida/<nome>-vertical.mp4(1080×1920).saida/*.quadros.jpg: doze quadros de cada formato, para ver o vídeo inteiro de relance.README.md: parâmetros, narração, cenas com tempos, dados usados e como refazer.
Escute antes de publicar. O agente mede o volume, mas não ouve: confira a pronúncia dos nomes, a música e se os efeitos incomodam.
7. Peça ajustes
| Você pede | O que acontece | Regrava a voz? |
|---|---|---|
| "só o vertical" / "gera também pro YouTube" | muda formatos e renderiza | não |
| "sem música" / "sem efeitos" / "sem legenda" | muda o parâmetro e renderiza | não |
| "música mais baixa" | ajusta musicaSobVoz | não |
| "troca essa frase" | muda a narração; as cenas se realinham sozinhas | sim |
| "mais rápido" | cenas mais curtas, ritmo: "rapido" | se cortar texto |
| "outro clima de música" | gera trilha nova | não |
Caminho 2 — à mão
P=projetos/lancamento-coraline
$EDITOR $P/narracao.txt # o texto falado: uma frase por cena, números por extenso
node studio/scripts/tts.mjs $P # grava a voz e mostra o segundo de cada palavra (gasta créditos)
$EDITOR $P/roteiro.json # lista de cenas e a palavra em que cada uma começa
$EDITOR $P/compositions/*.html # as cenas: parta das que vieram com o estilo
node studio/scripts/montar.mjs $P youtube
(cd $P && npm run check) # erros de montagem, sobreposição e contraste
(cd $P && npx --yes hyperframes@0.8.124 snapshot --at 2,6,12 --no-end -o build/snap) # quadros para olhar
node studio/scripts/render.mjs $P # renderiza os formatos de video.json, confere e documenta
A regra que sustenta tudo: a voz manda no tempo. No roteiro, cada cena começa numa palavra
("ancora": "coraline"); na cena, cada elemento entra em c.cue('palavra'). Nenhum segundo é escrito à
mão, então regravar a voz não desmonta nada. Como escrever cenas está em skill/references/cenas.md e no
guia de cada estilo (estilo-terminal.md, estilo-classico.md).
Para ver e mexer com linha do tempo no navegador: (cd $P && npx --yes hyperframes@0.8.124 preview).
Publicar no site
node studio/scripts/publicar.mjs # copia vídeos, capas e esta documentação para site/
bash infra/vps/deploy.sh aplicar # sobe a versão nova em studio.chakra.gold
O publicar.mjs só prepara a pasta site/; o que vai ao ar é o deploy.
Guardar no git
git add projetos/lancamento-coraline && git commit -m "feat(video): add lancamento-coraline" && git push
Entram no git o pedido, os parâmetros, a narração, o roteiro, as cenas e os sons. Os MP4 e a voz gravada
ficam fora (são pesados e regeráveis): em outra máquina, tts.mjs e render.mjs refazem.
Custos e tempos
- Voz, música nova e efeito novo gastam créditos do ElevenLabs. Montar, conferir e renderizar não.
- Render: cerca de 3 minutos por minuto de vídeo, por formato, nesta máquina.
- Tamanho: de 10 a 15 MB por formato num vídeo de 30 a 80 segundos.
Problemas comuns
| Sintoma | Causa provável |
|---|---|
montar.mjs diz que a âncora não aparece na narração | a palavra do roteiro não está no texto falado, ou a voz não foi regravada depois da mudança |
| vídeo sem efeitos sonoros | o montador imprimiu "0 efeitos": falta o Chrome, ou "efeitos": false |
| elemento aparece logo no começo da cena | a palavra se repete na narração: use 'palavra#2' ou 'palavra#-1' |
| texto cortado só no vertical | a cena precisa da variante html.v no CSS ou de c.vert no script |
| música termina antes do vídeo | a trilha do estilo tem 75 s (terminal) ou 92 s (clássico): gere outra com som.mjs musica |