Carrossel → MP4 animado
Esta skill reutiliza a skill instagram-carousel (ela deve estar instalada em ~/.claude/skills/instagram-carousel; chamada de <ic> abaixo).
O resultado final é um MP4, não os PNGs.
Fluxo de trabalho
- Faça o carrossel como de costume: siga os passos 1 a 4 de
<ic>/SKILL.md(brief, arquétipo, sistema visual, roteiro e HTML). Todas as regras se aplicam: continuidade entre slides, novas fontes, paleta 2+1 e revisão de design.-
Sempre pergunte a orientação antes de projetar, mesmo quando a solicitação não a mencionar (pergunta de múltipla escolha):
- Vertical: Reels/Stories 9:16 (1080×1920,
--reels) ou feed 4:5 (1080×1350, sem flag); - Horizontal: 16:9 (1920×1080,
--landscape), para YouTube, um site ou telas.
A orientação muda toda a composição (grade, tamanhos, zona segura), portanto, nunca a escolha por padrão. Horizontal só funciona no modo motion graphics.
- Vertical: Reels/Stories 9:16 (1080×1920,
-
Pergunte também o estilo: slides (a coreografia automática: movimento de câmera entre slides) ou motion graphics (tipografia cinética e transições variadas, para não parecer slides). Se o usuário disser que o resultado "parece slides" ou pedir algo mais dinâmico, use motion graphics. Veja
references/motion.md. -
E o som: efeitos internos (padrão), efeitos Openverse, música Openverse, arquivos do usuário ou nenhum som.
-
- Leia
<ic>/references/video.md: coreografia, controle da animação comdata-anim/data-delay, som e verificações. - Ajuste a coreografia no HTML, se necessário. A animação é automática, mas
data-animedata-delaypermitem ajustar os momentos-chave. - Verifique com stills antes do vídeo completo (rápido):
Abra os JPEGs emnode <ic>/scripts/video.mjs <output>/carousel.html <output>/carousel.mp4 --stills=0.6,1.5,3,4.2,6<output>/carousel-stills/e confirme que nada está cortado, sobreposto ou invisível ao final de cada entrada. - Som (opcional, veja
video.md› Som):- Openverse:
node <ic>/scripts/sounds.mjs search "whoosh" --type=sfx. Mostre as opções ao usuário e, com a permissão dele, executenode <ic>/scripts/sounds.mjs download <id> <output>/sounds/whoosh-1.mp3. - Os nomes dos arquivos definem o uso:
whoosh*(transições),pop*(adesivos/pílulas),hit*(títulos). Use vários por tipo (whoosh-1.mp3,whoosh-2.mp3…) para que as transições não soem sempre iguais; eles se alternam sem repetições consecutivas. A música vai separadamente. - Sem arquivos, os efeitos internos já variam por conta própria (5 whooshes, 3 pops, 3 hits, com tom e duração aleatórios).
- Openverse:
- Renderize o MP4:
Não precisa de ffmpeg: usa Chrome (GSAP + WebCodecs). Cerca de 30–60 s para 20–30 s de vídeo. Execute em segundo plano se for longo.node <ic>/scripts/video.mjs <output>/carousel.html <output>/carousel.mp4 [--reels] [--sfx=<output>/sounds] [--music=<output>/sounds/music.mp3] - Entregue:
carousel.mp4(H.264 + AAC, pronto para Instagram/Reels)caption.txt(legenda, hashtags, palavras-chave)- uma nota: duração, formato, sons usados (e de onde vêm, de
sounds/sound-sources.txt) e placeholders ainda a substituir
Não entregue os PNGs a menos que o usuário os solicite. Se solicitar, use render.mjs como na skill base.