{
  "id": "clube-motion-pacote",
  "titulo": "Comenta Motion",
  "categoria": "narrado",
  "resumo": "Reel narrado de 43,2 s que oferece, de graça, o projeto completo de outro vídeo (o da clínica de estética) a quem comentar \"Motion\". Feito do zero em estilo Apple light: fundo claro com manchas pastel em deriva, cartões brancos de sombra larga, SF Pro e cada elemento entrando na palavra em que é dito. Não tem After Effects nem editor: um script em Python desenha cada quadro com Pillow e OpenCV a partir dos tempos das palavras da narração e entrega tudo ao ffmpeg. Voz clonada na ElevenLabs. Publicado no Instagram em 12/10/2026. Feito pelo Clube do Motion.",
  "indicado": "criador ou empresa que quer oferecer um material (projeto, guia, modelo, desconto) em troca de um comentário e mostrar na tela o que a pessoa vai receber; chamada para automação de DM.",
  "estilo": [
    "Apple light",
    "narrado",
    "cartões brancos",
    "legenda viva",
    "cada elemento na palavra dita",
    "prova na tela",
    "chamada para comentar"
  ],
  "ficha": {
    "formato": "1080×1920, 30 qps, 9:16, H.264 (CRF 16) com cor BT.709 e áudio AAC de 256 kbps",
    "duracao": "43,2 s (1.297 quadros): 42,8 s de narração e 0,5 s de respiro no fim",
    "motor": "html",
    "voz": "voz clonada na ElevenLabs (Eleven v4), 4 parágrafos, velocidade 1,12",
    "musica": "ver o guia de estilo",
    "fontes": "ver o guia de estilo"
  },
  "ferramentas": [
    "Claude Code",
    "ElevenLabs"
  ],
  "ficha_tecnica": {
    "Duração": "43,2 s (1.297 quadros): 42,8 s de narração e 0,5 s de respiro no fim",
    "Formato": "1080×1920, 30 qps, 9:16, H.264 (CRF 16) com cor BT.709 e áudio AAC de 256 kbps",
    "Voz": "voz clonada na ElevenLabs (Eleven v4), 4 parágrafos, velocidade 1,12",
    "Ferramenta": "Python (Pillow, OpenCV, NumPy) quadro a quadro, com ffmpeg codificando direto do script",
    "Trilha": "instrumental de \"Noticed\" (Lil Mosey, 73 BPM), separado no Demucs, 15 dB abaixo da voz",
    "Som": "38 eventos de efeito da biblioteca nivelada, 26 arquivos diferentes; final em −14 LUFS",
    "Chamada": "\"Comenta Motion\" para receber o link do projeto na DM",
    "Publicado": "Instagram, 12/10/2026: https://www.instagram.com/reel/DeYKve3mevI/"
  },
  "etapas": [
    {
      "titulo": "O roteiro e a voz",
      "texto": "**Resumo:** a fala do Reel exatamente como foi enviada à voz clonada (4 parágrafos), como ela foi feita e as cenas por tempo. Gancho: \"Muita gente viu esse vídeo de clínica que tá mostrando na tela agora, e tão me pedindo prompt que foi usado pra poder fazer esse vídeo.\".\n\n## Como a fala foi feita\n\n- **Texto do criador**, escrito para este Reel. A versão para a voz só mudou a pontuação e a grafia do jeito que se fala (\"tá\", \"tão\", \"pra\").\n\n- **Voz:** ElevenLabs, Eleven v4, voz clonada, um parágrafo por arquivo (estabilidade 0,5, similaridade 0,75, velocidade 1,12), conferida no faster-whisper.\n\n- **Montagem:** os quatro parágrafos juntados em `narracao.wav`, com 42,8 s; o vídeo soma 0,5 s de respiro no fim.\n\n- **Na tela**, a legenda escreve \"Motion\" com maiúscula e numa pílula preta, e mantém \"Google Drive\", \"After Effects\" e \"open source\" no mesmo bloco.\n\n## A fala, verbatim (texto enviado à voz)\n\n- Muita gente viu esse vídeo de clínica que tá mostrando na tela agora, e tão me pedindo prompt que foi usado pra poder fazer esse vídeo. Então eu resolvi pegar todo esse projeto e colocar ele no Google Drive, pra você poder baixar de graça.\n\n- Ele já vai ir com todas as imagens, os ícones, referências e etc. que eu usei pra criar o vídeo, e o projeto no After Effects. Ah, e você também vai conseguir editar diretamente no After Effects open source, beleza?\n\n- E como bônus, também vou deixar as minhas skills, que eu mesmo criei e melhorei pra poder fazer esse estilo de vídeo, até que ficasse do jeito que eu queria. E vou disponibilizar ele de graça pra você.\n\n- Comenta Motion aqui abaixo, que eu te mando uma DM com o projeto no Google Drive pra você poder baixar!\n\n## Estrutura\n\n | \n\n | Parte\n | Função\n | Tempo (s)\n\n | Pedido do público\n | o vídeo de origem e os comentários que pediram o prompt\n | 0,0–7,0\n\n | Oferta\n | o projeto vai para o Drive, de graça\n | 7,0–13,9\n\n | O que vem dentro\n | imagens, ícones, referências, projeto e o editor de código aberto\n | 14,1–25,9\n\n | Bônus\n | as skills, repetindo o \"de graça\"\n | 26,1–36,8\n\n | Chamada\n | comentar \"Motion\" e receber a DM com o link\n | 36,9–43,2\n\n## Cenas por tempo\n\nOs tempos são os da narração, que começa no quadro 0. Cada cena começa na palavra que a dispara e vai até a saída dos elementos dela.\n\n | \n\n | #\n | Tempo (s)\n | Fala\n | Tela\n\n | 1\n | 0,0–1,0\n | \"Muita gente viu…\"\n | a pílula \"2.614 visualizações\" nasce no centro com mola\n\n | 2\n | 0,96–3,5\n | \"…esse vídeo de clínica que tá mostrando na tela agora,\"\n | em \"esse\", o celular sobe com o vídeo da clínica tocando na tela; a pílula desce para baixo dele\n\n | 3\n | 3,5–7,0\n | \"e tão me pedindo prompt que foi usado pra poder fazer esse vídeo.\"\n | o celular sobe e encolhe para 74%; quatro comentários reais pipocam embaixo, um em \"pedindo\", \"prompt\", \"foi\" e \"pra\": \"Prompt\", \"Massa! Consegue o prompt brother?\", \"Consegue me mandar o prompt? Ficou top\", \"Can you send the prompt?\"\n\n | 4\n | 7,0–8,1\n | \"Então eu resolvi pegar…\"\n | os comentários descem e somem; o celular desce, encolhe para 62% e some em \"pegar\"\n\n | 5\n | 8,3–10,1\n | \"…todo esse projeto e colocar ele no\"\n | a pasta amarela \"motion-claude-code\" nasce com mola\n\n | 6\n | 10,1–13,9\n | \"Google Drive, pra você poder baixar de graça.\"\n | o cartão do Google Drive sobe atrás e a pasta encolhe para dentro dele; em \"graça\", o carimbo verde \"GRÁTIS\" chega inclinado\n\n | 7\n | 14,1–15,0\n | \"Ele já vai ir com todas as imagens,\"\n | seis imagens do projeto em grade 3×2, em cascata\n\n | 8\n | 15,0–15,6\n | \"os ícones,\"\n | seis ícones 3D sobem em fila (WhatsApp, agenda, robô, moedas, relógio, brilhos)\n\n | 9\n | 15,6–18,7\n | \"referências e etc. que eu usei pra criar o vídeo,\"\n | três prints de apps entram pela direita em leque\n\n | 10\n | 18,8–22,1\n | \"e o projeto no After Effects. Ah, e você também vai conseguir\"\n | a grade encolhe e o painel da linha do tempo sobe: \"clinica-v2.aep\", \"37 composições · 1080×1920 · 30 qps\" e oito composições reais; a agulha vermelha corre\n\n | 11\n | 22,1–25,9\n | \"editar diretamente no After Effects open source, beleza?\"\n | o painel sai para a esquerda e a imagem oficial do EffectCraft entra pela direita; em \"open\", a pílula \"EffectCraft · After Effects open source\"\n\n | 12\n | 26,3–28,0\n | \"E como bônus,\"\n | a pílula \"BÔNUS\" com estrela 3D nasce no alto, com sino\n\n | 13\n | 28,0–33,7\n | \"também vou deixar as minhas skills, que eu mesmo criei e melhorei… até que ficasse do jeito que eu queria.\"\n | três cartões de arquivo sobem (`SKILL.md`, `kit.jsx`, `PROMPT.md`); os selos argila trocam no mesmo lugar: \"criei\", \"melhorei\", \"do jeito que eu queria\"\n\n | 14\n | 34,1–36,8\n | \"E vou disponibilizar ele de graça pra você.\"\n | em \"graça\", o segundo carimbo \"GRÁTIS\"\n\n | 15\n | 36,9–37,6\n | \"Comenta Motion…\"\n | o bônus sai para cima; a caixa de comentário sobe com o avatar e \"Adicione um comentário...\"; em \"Motion\", a palavra é digitada letra a letra\n\n | 16\n | 37,6–39,2\n | \"…aqui abaixo, que eu te mando\"\n | a pílula preta grande \"Motion\" nasce no centro\n\n | 17\n | 39,2–43,2\n | \"uma DM com o projeto no Google Drive pra você poder baixar!\"\n | em \"DM\", a notificação desce do alto (\"te mandou o projeto no Google Drive\") e \"Motion\" desce um pouco e encolhe; em \"Google\", a pílula \"motion-claude-code · Google Drive\"; nos últimos 12 quadros, a imagem clareia\n\n## Momentos para a trilha\n\n- 0,0 s: o instrumental entra em 0,6 s, por baixo da primeira palavra.\n\n- 0,9 s: whoosh e pop com o celular.\n\n- 11,9 s e 35,7 s: carimbo nos dois \"GRÁTIS\".\n\n- 26,3 s: sino no \"BÔNUS\".\n\n- 37,4 a 37,8 s: uma tecla por letra de \"Motion\".\n\n- 39,1 s: notificação da DM.\n\n- 41,6 a 43,2 s: a música sai em 1,6 s e o mix inteiro fecha em 0,6 s.\n\nA lista completa dos 38 efeitos, com tempo, arquivo e volume, está em `projeto/dados/sfx.json`."
    },
    {
      "titulo": "A identidade visual",
      "texto": "**Resumo:** Apple light desenhado em Python: fundo cinza-claro com três manchas pastel que atravessam a tela devagar, cartões brancos de cantos grandes e sombra larga, SF Pro Display e uma cor para cada papel (preto no texto, argila no bônus, verde no \"GRÁTIS\"). O movimento usa mola na entrada, saída acelerada, a curva (.86, 0, .07, 1) nos deslocamentos e flutuação em tudo. Números tirados do `render_narrado.py` e do `mix.py`.\n\n## Palco e fundo\n\n | \n\n | Peça\n | Como é\n\n | Tela\n | 1080×1920, 30 qps, fundo `#F4F4F7`\n\n | Manchas\n | três gradientes gaussianos: pêssego `#FFDBCC` (raio 520, força 55%), lavanda `#DBE0FF` (480, 50%) e menta `#E6F5DB` (420, 45%)\n\n | Deriva das manchas\n | centro em `540 + 330·sen(0,13t + fase)` na horizontal e `960 + 520·cos(0,10t + 1,3·fase)` na vertical; uma volta leva de 48 a 63 s, então o desenho do fundo nunca se repete dentro do vídeo\n\n | Título fixo\n | \"Projeto + skill desse vídeo\" / \"de graça pra você\", SF Pro Display Bold 58 px, preto, em y = 130, com halo branco desfocado (16 px) para ler sobre qualquer mancha\n\n | Fim\n | nos últimos 12 quadros, a imagem clareia até 97% de branco\n\n## Cores e fonte\n\n | \n\n | Token\n | Valor\n | Papel\n\n | Preto\n | `#1D1D1F`\n | texto, pílula \"Motion\", avatar do comentário\n\n | Cinza\n | `#6E6E73`\n | textos de apoio (subtítulo do Drive, placeholder do comentário)\n\n | Claro\n | `#E5E5EA`\n | linhas divisórias e linhas falsas de texto nos cartões de arquivo\n\n | Verde\n | `#34C759`\n | só o carimbo \"GRÁTIS\"\n\n | Argila\n | `#D97757`\n | os selos do bônus (\"criei\", \"melhorei\", \"do jeito que eu queria\")\n\n | Cartões\n | branco, cantos de 24 a 75 px\n | sombra a 18% (25% a 30% nos maiores), desfoque de 24 px, 16 px abaixo\n\n- **Fonte:** SF Pro Display. Bold nos títulos, nas pílulas e no \"Motion\"; Semibold na legenda e nos rótulos; Medium nos textos de apoio e nos comentários.\n\n- **Tamanhos:** pílula \"Motion\" com 120 px, \"BÔNUS\" com 64 px, \"GRÁTIS\" com 52 px, legenda com 54 px (60 px no \"Motion\"), comentários com 34 px.\n\n## Peças desenhadas\n\n- **Celular:** moldura escura `#101012` de 498×864 com cantos de 70 px e tela de 470×836 com cantos de 56 px, onde o vídeo de origem toca reescalado.\n\n- **Pílula de visualizações:** \"2.614 visualizações\", branca, 92 px de altura.\n\n- **Comentários:** cartões brancos em pílula com bolinha colorida e a inicial (laranja, azul, roxo e verde da Apple), sem nome de usuário.\n\n- **Pasta:** pasta amarela (`#FFC446` e `#FFD264`) desenhada em vetores, com o nome \"motion-claude-code\".\n\n- **Cartão do Drive:** 900×760, ícone, \"Google Drive\" em Bold 46 px e \"pasta compartilhada · qualquer pessoa com o link\".\n\n- **Painel da linha do tempo:** cartão escuro `#1E1E28` de 940×820 com \"clinica-v2.aep\", \"37 composições · 1080×1920 · 30 qps\" e oito faixas com o nome e a cor de cada composição real; uma agulha vermelha `#FF3B30` corre a 160 px/s e volta a cada 500 px.\n\n- **Cartões de arquivo:** 300×380, ícone do Claude, quatro linhas falsas de texto e o nome do arquivo (`SKILL.md`, `kit.jsx`, `PROMPT.md`), inclinados −5°, 0° e +5°.\n\n- **Caixa de comentário:** pílula de 900×150 com avatar \"J\" e \"Adicione um comentário...\", que vira \"Motion\" letra a letra.\n\n- **Notificação:** cartão `#FAFAFC` de 960×170 com ícone rosa `#D62976` de mensagem, nome do perfil e \"te mandou o projeto no Google Drive\".\n\n## Movimento\n\n | \n\n | Peça\n | Números\n\n | Mola de entrada\n | `1 − e^(−6x)·cos(9x)` em 0,6 s; opacidade de 0 a 1 em 0,16 s\n\n | Tipos de entrada\n | `pop` (escala de 82% a 100%), `sobe` (90 px), `desce` (140 px), `direita` (260 px)\n\n | Saída\n | 0,4 s com aceleração quadrática: `fade` (encolhe 6%), `encolhe` (70%), `desce` e `sobe` (160 px), `esquerda` (700 px)\n\n | Deslocamentos\n | quadros-chave com a curva `cubic-bezier(.86, 0, .07, 1)`, de 0,5 a 0,7 s\n\n | Cascatas\n | imagens a cada 0,07 s, ícones a cada 0,06 s, prints e cartões de arquivo a cada 0,1 s, letras de \"Motion\" a cada 0,07 s\n\n | Flutuação\n | todo elemento oscila 3 px na vertical (`sen(1,1t + fase)`) e 1,8 px na horizontal, com fase aleatória; os ícones flutuam 5 px\n\n | Câmera viva\n | escala `1 + 0,012·sen(0,35t)`, deslocamento de ±8 px na horizontal e ±10 px na vertical, sempre em movimento\n\n## Legenda\n\n- Blocos de até 26 caracteres, centralizados em y = 1640, com halo branco desfocado.\n\n- Cada palavra entra com desfoque de 10 px que zera em 7 quadros (curva cúbica de saída) e some em 5 quadros quando o bloco termina.\n\n- Duas palavras seguidas nunca entram no mesmo quadro: no mínimo 3 quadros entre elas.\n\n- \"Motion\" ganha uma pílula preta de cantos de 32 px, com texto branco em Bold 60 px.\n\n## Transições\n\nCada troca nasce de uma palavra: o celular sobe e encolhe em \"e tão me pedindo\" para os comentários caberem embaixo; em \"Então\", tudo desce e o celular encolhe até sumir; a pasta nasce em \"pegar\" e encolhe para dentro do cartão do Drive em \"Google\"; a grade de imagens encolhe em \"projeto\" enquanto o painel da linha do tempo sobe; o painel sai para a esquerda em \"editar\" e a imagem do EffectCraft entra pela direita; o bônus sai para cima em \"Comenta\", quando a caixa de comentário sobe.\n\n## Trilha e voz\n\n | \n\n | Item\n | Valor\n\n | Voz\n | ElevenLabs, Eleven v4, voz clonada, estabilidade 0,5, similaridade 0,75, velocidade 1,12; quatro parágrafos juntados em 42,8 s\n\n | Tratamento\n | passa-altas de 70 Hz e compressor (limiar −20 dB, razão 2,5:1, ataque de 10 ms, soltura de 150 ms), voz a −16 LUFS\n\n | Música\n | instrumental de \"Noticed\" (Lil Mosey, 73 BPM) separado no Demucs, a −31 LUFS (15 dB abaixo da voz), entrada de 0,6 s e saída de 1,6 s\n\n | Final\n | limitador, `loudnorm` em duas passagens para −14 LUFS e pico de −1 dBTP, com 0,6 s de saída no fim\n\n## Sound design\n\nUm efeito por elemento, com o pico do arquivo no instante do evento (`início = evento − pico`) e o volume do evento multiplicado por 0,45 na mix.\n\n | \n\n | Família\n | Quando\n\n | whoosh curto\n | celular entrando, EffectCraft entrando, caixa de comentário subindo\n\n | whoosh grave e longo\n | cartão do Drive e painel da linha do tempo\n\n | pop\n | pílulas, grade de imagens (um a cada dois quadros da cascata), \"Motion\", link\n\n | notificação\n | os quatro comentários (alternando dois arquivos) e a DM chegando\n\n | papel\n | a pasta deslizando, os prints chegando, os cartões de arquivo virando\n\n | clique\n | os ícones em cascata e cada selo argila\n\n | carimbo\n | os dois \"GRÁTIS\"\n\n | sino\n | o \"BÔNUS\"\n\n | tecla\n | cada letra de \"Motion\" (cinco arquivos em rodízio)\n\n## O que é \"humano\" neste vídeo\n\n- Nada fica parado: o fundo, os elementos e a câmera se movem o tempo todo, mesmo quando a fala não pede nada.\n\n- Os carimbos chegam inclinados (−8° e −6°) e os prints em leque (−6°, 2° e 8°).\n\n- A agulha da linha do tempo corre enquanto a fala explica o projeto.\n\n- \"Motion\" é digitado letra a letra, com um som de tecla para cada uma."
    },
    {
      "titulo": "A montagem",
      "texto": "| \n\n | Arquivo\n | O que faz\n\n | `scripts/render_narrado.py`\n | lê `words.json` e posiciona tudo com `T(\"palavra\", n)`, que devolve o início da n-ésima ocorrência da palavra na fala. Cada elemento é um `E(sprite, x, y, entrada, saída, ent=…, sai=…, kf=…)`: entra com mola, flutua, anda por quadros-chave com a curva da casa e sai acelerando. Cada `som(t, nome, ganho)` anota um efeito no mesmo instante e, no início do laço, a lista é gravada em `sfx.json`. O vídeo da clínica é lido pelo ffmpeg e colado na tela do celular quadro a quadro; o resultado sai em H.264 já com `mix_final.wav`\n\n | `scripts/blocos.py`\n | parte as palavras em blocos de até 26 caracteres para a legenda: corta em pausa maior que 0,28 s e no fim de frase, mantém \"Google Drive\", \"After Effects\" e \"open source\" juntos e escreve \"Motion\" com maiúscula\n\n | `scripts/mix.py`\n | trata a voz (passa-altas de 70 Hz e compressor leve) e leva a −16 LUFS, põe o instrumental a −31 LUFS, coloca cada efeito com o pico no instante do evento e normaliza o mix em duas passagens para −14 LUFS, com pico de −1 dBTP\n\n | `audio/gerar_voz.py`\n | gera um MP3 por parágrafo na ElevenLabs (Eleven v4, estabilidade 0,5, similaridade 0,75, velocidade 1,12) e pula o que já existe\n\n- **Instale:** Python com numpy, opencv-python, Pillow, soundfile e pyloudnorm, mais o ffmpeg no PATH.\n\n- **Monte a pasta de trabalho** (ex.: `trabalho/`): copie para ela os três arquivos de `projeto/dados/`, a pasta `projeto/img/` e `audio/narracao.wav` e `audio/mix_final.wav`. O script espera tudo na mesma pasta.\n\n- **Fontes:** o vídeo usa SF Pro Display (Bold, Semibold, Medium e Regular). Instale e troque a linha `FD` do `render_narrado.py` pela pasta onde ficaram os arquivos `.otf`.\n\n- **Vídeo do celular:** na linha `CLINICA`, ponha o caminho de `projeto/clinica-recuperacao-v2.mp4` ou do vídeo que você quer mostrar.\n\n- **Arquivos de terceiros:** ponha em `trabalho/img/` imagens suas com os nomes que o `fora-do-pacote.md` lista (`drive.png`, `ae.png`, `claude.png`, `ec-hero.png`, `ec-icon.png`, os três prints e `arco-argila-listrado.jpg`). Sem eles, o script para com erro de arquivo.\n\n- **Prévia:** `python projeto/scripts/render_narrado.py trabalho previa.mp4 6 14` renderiza 6 s a partir de 14 s. O vídeo inteiro: `python projeto/scripts/render_narrado.py trabalho final.mp4`.\n\n- **Mudou um tempo ou um efeito?** Rode o render uma vez (ele regrava `sfx.json`), depois o mix e o render de novo. Para o mix, ponha o instrumental da sua música em `trabalho/mus/inst48k.wav`, troque `LIB` no `mix.py` pela pasta `audio/sfx/nivelados` e rode `python projeto/scripts/mix.py trabalho`.\n\n- **Legenda nova:** com outra narração, gere o `words.json` no faster-whisper com tempo por palavra (o formato é uma lista de trechos com `words`, cada palavra com `w`, `s` e `e`) e rode `python ../projeto/scripts/blocos.py` de dentro da pasta de trabalho.\n\n**Pegadinhas:** `T(\"e\", 1)` e `T(\"projeto\", 2)` contam ocorrências, então trocar uma frase da fala muda o número da ocorrência; confira com uma prévia curta. O render só usa o áudio que já existe em `mix_final.wav`, por isso o mix vem antes do render final. Elementos que saem antes de outro entrar no mesmo lugar dependem dos tempos das palavras: com uma fala mais rápida, aumente o espaço entre elas."
    },
    {
      "titulo": "As decisões de direção",
      "texto": "- **Nada aparece antes de ser dito.** Cada cartão, pílula e ícone tem o tempo de uma palavra da narração; o efeito sonoro cai no mesmo instante.\n\n- **A oferta vira prova.** Em vez de falar do pacote, o vídeo mostra o que está dentro: o vídeo de origem tocando, as imagens, os ícones, as referências, a linha do tempo com as composições reais e os arquivos das skills.\n\n- **O pedido do público abre o vídeo.** Comentários reais que pediram o prompt pipocam em volta do celular, sem os nomes de usuário, e o número de visualizações do vídeo de origem aparece junto com a primeira palavra.\n\n- **Grátis é um carimbo.** O selo verde inclinado aparece duas vezes, em \"de graça\" e na repetição do fim do bônus.\n\n- **A chamada é encenada.** A caixa de comentário sobe, \"Motion\" é digitado letra a letra com som de tecla e a notificação da DM desce com o link: a pessoa vê o que vai acontecer quando comentar.\n\n- **Uma cor por papel.** Preto Apple no texto e na pílula \"Motion\", argila nos selos do bônus (\"criei\", \"melhorei\", \"do jeito que eu queria\") e verde só no \"GRÁTIS\".\n\n- **Nada para morto.** Três manchas pastel atravessam o fundo devagar, todo elemento flutua alguns pixels e a câmera deriva e respira sem parar.\n\n- **Legenda viva.** Cada palavra entra com desfoque que se desfaz em 7 quadros, e \"Motion\" ganha uma pílula preta própria.\n\n- **Revisão com olho externo.** Uma IA assistiu com áudio e deu 6,8; a abertura vazia, os efeitos repetidos e o contraste do título foram corrigidos antes de publicar.\n\nDetalhes de cores, curvas e som: estilo.md. Fala e cenas por tempo: roteiro.md. Para fazer um vídeo no mesmo método com a sua oferta: PROMPT.md."
    },
    {
      "titulo": "As versões até o final",
      "texto": "| \n\n | Versão\n | O que mudou\n\n | v1\n | a mesma oferta montada sobre uma gravação de tela com a fala gravada no celular, editada em 57 s\n\n | v2\n | as mesmas falas regeradas na voz clonada da ElevenLabs, porque a gravação tinha eco, e realinhadas palavra por palavra (53,8 s)\n\n | **v3**\n | narrado feito do zero, com roteiro novo e motion por código em Apple light; publicado em 12/10/2026"
    }
  ],
  "pacote": [
    {
      "pasta": "projeto/",
      "conteudo": "`scripts/render_narrado.py` (o Reel inteiro), `scripts/blocos.py` (blocos da legenda), `scripts/mix.py` (mix), `dados/words.json` (tempo de cada palavra), `dados/legendas.json` (35 blocos de legenda), `dados/sfx.json` (os 38 efeitos), `img/` (imagens do projeto da clínica, cinco ícones 3D, duas figuras 3D de emoji e o painel das direções) e `clinica-recuperacao-v2.mp4`, o vídeo que toca dentro do celular"
    },
    {
      "pasta": "audio/",
      "conteudo": "`narracao.wav` e `narracao.mp3`, os quatro parágrafos (`p01.mp3` a `p04.mp3`, com o texto e o ajuste de voz em `p01.json` a `p04.json`), `gerar_voz.py`, o mix final (`mix_final.wav`) e `sfx/nivelados/`, com os 26 efeitos usados"
    },
    {
      "pasta": "referencias/",
      "conteudo": "`links.md` e `fora-do-pacote.md`"
    },
    {
      "pasta": "render.mp4",
      "conteudo": "o Reel final, como foi publicado"
    },
    {
      "pasta": "scripts/render_narrado.py",
      "conteudo": "lê `words.json` e posiciona tudo com `T(\"palavra\", n)`, que devolve o início da n-ésima ocorrência da palavra na fala. Cada elemento é um `E(sprite, x, y, entrada, saída, ent=…, sai=…, kf=…)`: entra com mola, flutua, anda por quadros-chave com a curva da casa e sai acelerando. Cada `som(t, nome, ganho)` anota um efeito no mesmo instante e, no início do laço, a lista é gravada em `sfx.json`. O vídeo da clínica é lido pelo ffmpeg e colado na tela do celular quadro a quadro; o resultado sai em H.264 já com `mix_final.wav`"
    },
    {
      "pasta": "scripts/blocos.py",
      "conteudo": "parte as palavras em blocos de até 26 caracteres para a legenda: corta em pausa maior que 0,28 s e no fim de frase, mantém \"Google Drive\", \"After Effects\" e \"open source\" juntos e escreve \"Motion\" com maiúscula"
    },
    {
      "pasta": "scripts/mix.py",
      "conteudo": "trata a voz (passa-altas de 70 Hz e compressor leve) e leva a −16 LUFS, põe o instrumental a −31 LUFS, coloca cada efeito com o pico no instante do evento e normaliza o mix em duas passagens para −14 LUFS, com pico de −1 dBTP"
    },
    {
      "pasta": "audio/gerar_voz.py",
      "conteudo": "gera um MP3 por parágrafo na ElevenLabs (Eleven v4, estabilidade 0,5, similaridade 0,75, velocidade 1,12) e pula o que já existe"
    }
  ],
  "prompt": "Quero um Reel narrado no mesmo método do projeto \"Projeto de graça na DM\", que está em 07-videos/projetos/motion-pacote/, com a minha oferta.\n\nO que eu vou oferecer: {{MATERIAL}} (ex.: o projeto de um vídeo, um guia, um modelo, um cupom)\nPor que as pessoas querem: {{PROVA}} (ex.: comentários pedindo, visualizações de um post, resultado de um cliente)\nO que tem dentro, item por item: {{ITENS}}\nBônus (opcional): {{BONUS}}\nPalavra que a pessoa comenta: {{PALAVRA}}\nOnde a pessoa recebe: {{ENTREGA}} (DM, link na bio, e-mail)\nVídeo ou imagem que abre o Reel: {{ABERTURA}}\nMúsica: {{MUSICA}} (a referência usou o instrumental de um rap lento, 73 BPM, 15 dB abaixo da voz)\nDuração aproximada: {{DURACAO}} (a referência tem 43 s) · Formato: {{FORMATO}} (a referência é 1080×1920, 30 qps)\n(Se algum desses estiver vazio ou com as chaves, me pergunte antes de começar.)\n\n1. Estude o projeto antes de propor qualquer coisa. Leia, nesta ordem: LEIA-ME.md, estilo.md e roteiro.md. Depois abra projeto/scripts/render_narrado.py e veja como funcionam T(\"palavra\", n), a classe E (entrada, saída, quadros-chave e flutuação), som(), card(), pilula(), o fundo com manchas, a câmera viva e a legenda por palavra. Leia também blocos.py, mix.py e audio/gerar_voz.py. Me explique em poucas linhas o que vai reaproveitar.\n\n2. O roteiro: a fala é minha. Faça só a estrutura em roteiro.md, no molde da referência: pedido do público, oferta, o que vem dentro, bônus e chamada, com o que aparece na tela em cada parte. Me dê 3 opções de gancho e espere eu escrever. Guarde o meu texto sem mudar e faça ao lado a versão para a voz, só com pontuação e grafia de como se fala.\n\n3. Narração na minha voz clonada da ElevenLabs, um parágrafo por arquivo, com o gerar_voz.py. Junte numa narracao.wav, gere o words.json no faster-whisper com tempo por palavra e confira se a transcrição bate com o texto. Me mande o áudio e espere eu aprovar antes de animar.\n\n4. Material real antes de desenhar: o vídeo ou a imagem da abertura, prints dos comentários ou números que provam o pedido (sem nome de usuário), e arquivos, imagens e ícones de verdade de cada item do pacote. Logo de marca, só o oficial. Liste o que é de terceiros.\n\n5. Para cada frase, escreva qual palavra dispara qual elemento e qual som. Regra: nada aparece antes de ser dito, cada elemento sai antes de outro ocupar o mesmo lugar e a troca de grupo acontece numa palavra de virada (\"Então\", \"Ah\", \"E como bônus\", \"Comenta\").\n\n6. Construa copiando o render_narrado.py, sem editar o original. Mantenha o fundo #F4F4F7 com três manchas pastel em deriva, os cartões brancos de sombra larga, a mola de entrada, a saída acelerada, a curva (.86, 0, .07, 1) nos deslocamentos, a flutuação em tudo, a câmera que nunca para e a legenda com desfoque por palavra. Troque os elementos, os textos, as imagens e as cores de papel: uma cor para o texto, uma para o destaque do bônus e uma só para o \"grátis\" (ou o equivalente da sua oferta).\n\n7. A chamada é encenada: a caixa de comentário sobe, a palavra é digitada letra a letra com som de tecla, a palavra cresce numa pílula preta e a notificação da entrega desce do alto com o nome do material.\n\n8. Som: um efeito por elemento, com o pico do arquivo no instante do evento, das famílias pop, notificação, clique, papel, carimbo, sino, tecla e whoosh, sem repetir o mesmo arquivo em eventos seguidos. Rode o render uma vez para gerar o sfx.json, depois o mix.py (voz a −16 LUFS, música 15 dB abaixo, final a −14 LUFS com pico de −1 dBTP) e o render final.\n\n9. Revise antes de entregar: prévias de 6 s nos trechos de troca, folha de contato a 1 qps do vídeo inteiro e uma IA que assista com áudio, perguntando se a abertura tem algo na tela desde o primeiro quadro, se algum efeito se repete, se o título fixo lê sobre o fundo e se algum elemento aparece antes da palavra. Corrija e me entregue o MP4, a legenda do post e a ficha do projeto.",
  "campos": [
    "ABERTURA",
    "BONUS",
    "DURACAO",
    "ENTREGA",
    "FORMATO",
    "ITENS",
    "MATERIAL",
    "MUSICA",
    "PALAVRA",
    "PROVA"
  ],
  "fonte": {
    "nome": "Clube do Motion",
    "url": "https://clubedomotion.com/projeto/?id=motion-pacote",
    "uso": "liberado pelo dono do Clube do Motion em 18/10/2026 (docs/permissoes/clube-do-motion.md)"
  }
}