{
 "grupo": "video-motion",
 "descricao": "Vídeo, motion e áudio",
 "itens": [
  {
   "id": "video-motion-roteiro-de-gancho",
   "nome": "Roteiro de gancho",
   "receita": "abra com resultado, pergunta ou conflito nos 3 primeiros segundos",
   "prova": "a retenção de 3 s medida no vídeo de teste"
  },
  {
   "id": "video-motion-estrutura-de-video-curto",
   "nome": "Estrutura de vídeo curto",
   "receita": "gancho, um ponto por cena, virada e chamada; corte a cada 2 a 4 segundos",
   "prova": "o vídeo de 30 s tem 8 a 12 cenas claras"
  },
  {
   "id": "video-motion-roteiro-em-duas-colunas",
   "nome": "Roteiro em duas colunas",
   "receita": "o que se vê e o que se ouve, com tempo por cena",
   "prova": "a leitura em voz alta bate com a duração"
  },
  {
   "id": "video-motion-storyboard-rapido",
   "nome": "Storyboard rápido",
   "receita": "quadros-chave por beat, com enquadramento e transição",
   "prova": "a sequência de quadros conta a história sem o áudio"
  },
  {
   "id": "video-motion-ritmo-de-corte",
   "nome": "Ritmo de corte",
   "receita": "corte em ação ou fala, nunca no meio de uma palavra, e respire entre ideias",
   "prova": "assistir sem hesitação nem pressa"
  },
  {
   "id": "video-motion-corte-com-ffmpeg-sem-recodificar",
   "nome": "Corte com ffmpeg sem recodificar",
   "receita": "ffmpeg -ss INÍCIO -to FIM -i entrada -c copy saida (corte em keyframe) ou recodifique para precisão",
   "prova": "ffprobe confirma a duração e o arquivo reproduz"
  },
  {
   "id": "video-motion-recodificar-para-a-web",
   "nome": "Recodificar para a web",
   "receita": "H.264 + AAC, -crf 20 a 23, -preset medium, -movflags +faststart, pixel format yuv420p",
   "prova": "o arquivo toca no navegador e no celular"
  },
  {
   "id": "video-motion-redimensionar-e-cortar-proporcao",
   "nome": "Redimensionar e cortar proporção",
   "receita": "filtros scale e crop (ou pad) para 9:16, 1:1 e 16:9 sem distorcer",
   "prova": "o vídeo tem a resolução e proporção pedidas"
  },
  {
   "id": "video-motion-juntar-clipes",
   "nome": "Juntar clipes",
   "receita": "concat demuxer com mesmos parâmetros ou filter_complex quando diferem",
   "prova": "o vídeo final tem a soma das durações"
  },
  {
   "id": "video-motion-extrair-quadros",
   "nome": "Extrair quadros",
   "receita": "ffmpeg -i v.mp4 -vf fps=1 q_%03d.png ou -ss para um quadro específico",
   "prova": "as imagens batem com os instantes pedidos"
  },
  {
   "id": "video-motion-gerar-gif-leve",
   "nome": "Gerar GIF leve",
   "receita": "paleta própria (palettegen/paletteuse), largura 480 e 12 a 15 fps",
   "prova": "o GIF tem poucos MB e boa qualidade"
  },
  {
   "id": "video-motion-legenda-embutida",
   "nome": "Legenda embutida",
   "receita": "SRT ou ASS com fonte grande, contorno, até 2 linhas e margens seguras, queimada com subtitles",
   "prova": "a legenda aparece sincronizada e sem cortar"
  },
  {
   "id": "video-motion-transcricao-para-legenda",
   "nome": "Transcrição para legenda",
   "receita": "transcreva com timestamps, revise nomes e termos e divida em linhas de 32 a 42 caracteres",
   "prova": "legenda revisada sem erro nos termos técnicos"
  },
  {
   "id": "video-motion-normalizar-o-audio",
   "nome": "Normalizar o áudio",
   "receita": "ffmpeg -af loudnorm=I=-16:TP=-1.5 para web",
   "prova": "medição ebur128 em torno de -16 LUFS"
  },
  {
   "id": "video-motion-ducking-da-trilha",
   "nome": "Ducking da trilha",
   "receita": "abaixe a música enquanto há voz (sidechaincompress ou keyframes de volume)",
   "prova": "a fala fica clara sobre a trilha"
  },
  {
   "id": "video-motion-limpar-ruido-de-voz",
   "nome": "Limpar ruído de voz",
   "receita": "filtro de ruído (afftdn/RNNoise) e corte de graves abaixo de 80 Hz com highpass",
   "prova": "o chiado some sem robotizar a voz"
  },
  {
   "id": "video-motion-easing-que-parece-vivo",
   "nome": "Easing que parece vivo",
   "receita": "entrada em ease-out, saída em ease-in, mover em ease-in-out; nunca linear",
   "prova": "o movimento tem peso e naturalidade"
  },
  {
   "id": "video-motion-antecipacao-e-sobra",
   "nome": "Antecipação e sobra",
   "receita": "um pequeno recuo antes do movimento e um excesso depois, com amortecimento",
   "prova": "o movimento parece físico"
  },
  {
   "id": "video-motion-atraso-escalonado",
   "nome": "Atraso escalonado",
   "receita": "entrada de elementos com 40 a 80 ms de diferença entre si",
   "prova": "o grupo entra como onda e não de uma vez"
  },
  {
   "id": "video-motion-animacao-de-texto",
   "nome": "Animação de texto",
   "receita": "entrada por palavra ou linha, com máscara e ease-out, e leitura possível",
   "prova": "o texto é legível por tempo suficiente"
  },
  {
   "id": "video-motion-transicao-entre-cenas",
   "nome": "Transição entre cenas",
   "receita": "use um elemento que continua entre as cenas (forma, cor, objeto) e não corte seco sem motivo",
   "prova": "a mudança de cena parece contínua"
  },
  {
   "id": "video-motion-camera-virtual-2d",
   "nome": "Câmera virtual 2D",
   "receita": "escala e posição de uma camada pai com ease para acompanhar o foco",
   "prova": "o zoom conduz o olho ao ponto certo"
  },
  {
   "id": "video-motion-profundidade-com-paralaxe",
   "nome": "Profundidade com paralaxe",
   "receita": "camadas em velocidades diferentes e leve desfoque nas distantes",
   "prova": "o fundo move menos que o primeiro plano"
  },
  {
   "id": "video-motion-efeito-de-grafico-animado",
   "nome": "Efeito de gráfico animado",
   "receita": "barras e linhas que crescem em sequência, com número contado e destaque do ponto-chave",
   "prova": "o dado final aparece legível e correto"
  },
  {
   "id": "video-motion-loop-perfeito",
   "nome": "Loop perfeito",
   "receita": "primeiro e último quadro iguais, movimento periódico fechado",
   "prova": "o vídeo emenda sem salto visível"
  },
  {
   "id": "video-motion-animacao-deterministica-por-tempo",
   "nome": "Animação determinística por tempo",
   "receita": "calcule o estado a partir do tempo (t), não do contador de quadros acumulado",
   "prova": "renderizar em 30 e 60 fps dá a mesma animação"
  },
  {
   "id": "video-motion-render-com-hyperframes",
   "nome": "Render com HyperFrames",
   "receita": "escreva a composição em HTML com timeline, valide e renderize na resolução final",
   "prova": "o arquivo gerado tem a duração e a qualidade pedidas"
  },
  {
   "id": "video-motion-cores-e-tipografia-travadas",
   "nome": "Cores e tipografia travadas",
   "receita": "defina a paleta e as fontes uma vez e reuse em todas as cenas",
   "prova": "todas as cenas parecem do mesmo vídeo"
  },
  {
   "id": "video-motion-grade-e-margens-de-seguranca",
   "nome": "Grade e margens de segurança",
   "receita": "título dentro de 90% do quadro e de 80% em formatos de rede social",
   "prova": "nenhum texto cortado em celular"
  },
  {
   "id": "video-motion-video-vertical",
   "nome": "Vídeo vertical",
   "receita": "enquadre pensando em 9:16, texto grande, áreas de interface da rede livres",
   "prova": "nada cobre os botões da plataforma"
  },
  {
   "id": "video-motion-efeitos-sonoros-que-marcam",
   "nome": "Efeitos sonoros que marcam",
   "receita": "um som curto por ação importante, volume abaixo da voz, sem encher",
   "prova": "o som reforça o movimento"
  },
  {
   "id": "video-motion-trilha-com-licenca",
   "nome": "Trilha com licença",
   "receita": "use biblioteca livre ou licenciada e guarde a prova da licença",
   "prova": "a licença registrada para cada faixa"
  },
  {
   "id": "video-motion-marca-d-agua-e-fim-de-video",
   "nome": "Marca d'água e fim de vídeo",
   "receita": "logo discreto, e cartela final com uma ação só, por 2 a 3 segundos",
   "prova": "o vídeo termina com a chamada clara"
  },
  {
   "id": "video-motion-exportar-para-cada-rede",
   "nome": "Exportar para cada rede",
   "receita": "bitrate, resolução, duração e proporção do guia de cada plataforma",
   "prova": "o arquivo passa no envio de cada plataforma"
  },
  {
   "id": "video-motion-reduzir-o-tamanho-do-arquivo",
   "nome": "Reduzir o tamanho do arquivo",
   "receita": "baixe o bitrate (CRF maior), resolução e fps desnecessários, e use audio 128k",
   "prova": "o arquivo cai de tamanho com qualidade aceitável"
  },
  {
   "id": "video-motion-capa-e-miniatura-do-video",
   "nome": "Capa e miniatura do vídeo",
   "receita": "um frame forte, texto de 1 a 4 palavras em alto contraste, legível em 168 px",
   "prova": "a miniatura se lê pequena"
  },
  {
   "id": "video-motion-revisao-de-video-antes-de-publicar",
   "nome": "Revisão de vídeo antes de publicar",
   "receita": "assista inteiro com som e sem som, confira legenda, nomes, números e áudio",
   "prova": "checklist de revisão marcado e a lista de erros zerada"
  },
  {
   "id": "video-motion-sincronia-de-audio-e-video",
   "nome": "Sincronia de áudio e vídeo",
   "receita": "corrija atraso com -itsoffset ou atrase o áudio no editor e confira em fala e palmas",
   "prova": "labial e sons acompanham a imagem"
  },
  {
   "id": "video-motion-gravacao-de-tela-limpa",
   "nome": "Gravação de tela limpa",
   "receita": "resolução alta, cursor visível, notificações desligadas, zoom no foco",
   "prova": "a ação é legível numa tela de celular"
  },
  {
   "id": "video-motion-time-lapse-e-slow-motion",
   "nome": "Time-lapse e slow motion",
   "receita": "ajuste por setpts e minterpolate, ou grave em fps maior para câmera lenta",
   "prova": "a velocidade final é a pretendida e sem engasgo"
  }
 ]
}
