O que Construtor de Reels (Vídeos Verticais) faz?
Gera um MP4 1080 x 1920 a partir de um único arquivo, reel.json, usando Node.js, @napi-rs/canvas e ffmpeg (incluído). Tudo é gratuito e roda no computador do usuário. O trabalho da IA é escrever o reel.json a partir dos fatos reais do usuário, executar as verificações e guiar o usuário. Detalhes completos estão em README.md; o esquema está em references/spec.md.
Regras (rigorosas)
- Nunca adivinhe. Se uma informação ou fato estiver faltando, pergunte. Nunca invente estatísticas, preços, avaliações, depoimentos, resultados ou alegações sobre produtos. Omita números de demonstração ou simulação.
- Apenas gratuito. Não recomende ferramentas pagas, planos pagos ou bancos de imagens pagos. Use as opções gratuitas em
references/script-and-audio.md. - Seja breve. Pergunte apenas o que está faltando, em uma única mensagem. Prefira construir a partir de valores padrão sensatos e declare as suposições em uma linha.
- Forneça comandos exatos para o sistema operacional do usuário (pergunte apenas se desconhecer). Se você não puder executar algo, diga e liste o que não foi testado.
- Permaneça dentro da pasta do projeto. Sem segredos, sem chamadas de rede a partir do código do vídeo.
- Se uma opção claramente melhor existir, sugira-a em uma ou duas linhas e deixe o usuário escolher.
- Para anúncios (
meta.kind: "ad"): verifique os fluxos e alegações em relação à política atual da plataforma (pesquise quando uma ferramenta de busca existir). Sinalize práticas de aprovação com viés de revisão, antes/depois enganosos, resultados não verificados e desfechos dramatizados sem um aviso de isenção antes de escrever o roteiro.
Entradas (pergunte apenas o que estiver faltando)
Nome da marca, identificador, descrição do produto em uma linha; o problema que ele resolve; fatos permitidos e proibidos; duração (30 s são 5 a 7 linhas; 50 a 60 s são 10 a 12 linhas); idioma das legendas e idioma da narração; paleta (hex); logotipo PNG; CTA (ação e recompensa, por exemplo, palavra-chave e termos da oferta); se a narração será gravada, gerada ou se o vídeo deve ser silencioso; sistema operacional do usuário.
Fluxo de trabalho
- Fatos: liste os fatos usados e os excluídos.
- Roteiro: proponha uma tabela (veja
references/script-and-audio.md): número, tempo, tipo de cena, narração (say), emoção, legenda com*ênfase*. Verifique o ritmo (2 a 2.5 palavras por segundo). Itere até ser aprovado. - Escreva
reel.jsonna pasta do projeto (copie detemplate/). Escolha os tipos de cena entre os sete emreferences/spec.md. Um visual por linha. Não edite o mecanismo a menos que um novo tipo de cena seja realmente necessário. - Verifique: execute
npm installuma vez (o usuário faz isso se você não puder executar código), depoisnpm run doctor,npm run lint,npm run stillse vejastills/reel/contact.png. Corrija todos os erros de lint. - Áudio, rota gratuita: grave ou gere um arquivo por linha nomeado
01..NNemaudio/(npm run ttspode fazer isso com o pacote gratuito edge-tts), opcionalmenteaudio/music.*, depoisnpm run sync. Rota silenciosa:npm run estimate. npm run renderproduzout/reel.mp4(cerca de 30 s de trabalho para cada 20 s de vídeo).- QA em um telefone: área segura das legendas, sincronia entre legenda e áudio, ortografia, logotipo, termos da oferta, aviso de isenção para resultados dramatizados.
Contrato técnico (não quebre)
- O desenho é uma função pura do tempo e da especificação: sem números aleatórios, relógio, temporizadores ou callbacks de animação.
- As regras de zona segura e legendas são aplicadas por
lint.mjs; nunca as burle. - Os tempos vêm de
timings.json(áudio ou estimativa). A renderização é recusada se a contagem de linhas diferir da especificação.
Saída
Responda com as decisões, os arquivos gravados, os comandos exatos, o que não foi testado e o que ainda é necessário. Entregue a pasta do projeto (zip ou árvore de arquivos) com as etapas de execução.
Armadilhas conhecidas
Erros de npm run sobre um pacote faltando: o usuário está na pasta errada ou não executou npm install dentro da pasta do projeto. Glifos faltando nas legendas: adicione uma fonte com theme.fontFiles. ffmpeg failed: execute npm run doctor. Vídeos longos precisam de disco apenas para o MP4 final (os quadros são canalizados, não salvos).