Communitygithub.com

Construtor de Montagens Sincronizadas com Batida

Construa montagens de vídeo para redes sociais sincronizadas com a batida a partir de análises musicais e filmagens de origem. Use quando um agente precisar montar, planejar ou revisar uma edição com ritmo musical; mapear filmagens para batidas/ataques/marcadores de corte; criar linhas do tempo verticais ou paisagem para montagens; integrar efeitos reativos ao áudio nas cenas; combinar gameplays, multidão, shows, natureza, menus ou outras filmagens de destaque; gerar CSVs de linha do tempo, folhas de contato e briefings de edição; ou adaptar o fluxo de trabalho Conteto Machino / Smash Mash para outra música ou biblioteca de filmagens.

O que é Construtor de Montagens Sincronizadas com Batida?

Este skill permite que um agente de IA construa montagens de vídeo sincronizadas com a batida, transformando análises musicais e filmagens brutas em edições profissionais para redes sociais. Ele é útil para criar vídeos verticais (9:16) ou paisagem (16:9) onde cada corte e efeito visual coincide com eventos musicais significativos, como batidas, ataques e transições. Suporta plataformas como Claude Code, Cursor e Codex, e define um fluxo de trabalho completo: desde a escolha da janela musical e inventário de filmagens até a renderização final e entrega dos arquivos (vídeo, CSV de linha do tempo, folha de contato e JSON de brief). O skill impõe regras rígidas de integração de efeitos (nunca separar efeitos das filmagens, usando máscaras de pessoas, geometria da cena ou pixels do próprio quadro) e oferece três arquiteturas de renderização (ffmpeg segmentado, numpy por quadro ou shader GLSL) para máxima flexibilidade e integração visual. Ele também inclui heurísticas de timing, seleção de fontes e padrões específicos para vídeos musicais verticais e montagens no estilo 'Smash Mash', garantindo que a edição final pareça autoral e coesa com a música.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/BusyBee3333/viral-video-edit-skills/tree/main/skills/beat-synced-montage-builder

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que Construtor de Montagens Sincronizadas com Batida faz?

Visão Geral

Use este skill depois que uma música foi analisada com $song-edit-analysis, ou quando dados equivalentes de batida/marcadores de corte já existirem. O objetivo não é apenas renderizar clipes sob a música; a edição deve soar autoral em relação à música, com mudanças de assunto, impactos, reações da multidão e acentos visuais caindo em marcadores musicais significativos.

A Regra de Efeitos Integrados (innegociável, aprendida em campo em 2026-07)

Efeitos e filmagens nunca devem estar separados. Nada de alternância entre segmentos de efeitos em tela cheia e clipes reais em tela cheia — isso parece dois vídeos emendados. Cada efeito deve ancorar (a) no matte do assunto (máscaras de pessoa por quadro — VNGenerateForegroundInstanceMaskRequest no macOS, ou equivalente), (b) na geometria da cena (portais no céu, telas com cantos fixados, reflexos na água, vazamento de luz nas bordas) ou (c) nos próprios pixels da cena (caleidoscópio/espelho do quadro ao vivo, manchas de realce, ondulações temporais do histórico do quadro). Renders procedurais entram nas cenas como elementos da cena — através de céus, telas, portas, reflexos — nunca como segmentos de corte. Um elemento não rastreado com blend de tela parece um adesivo. Leis relacionadas: ficar bonito supera seguir parâmetros (reestruture em vez de enviar uma falha de coesão); uma linguagem de efeito por corte, escalada com a estrutura da música — looks únicos por corte quebram a coesão; uma correção de cor rica e comprometida sobre cada cena (a pura contenção parece desbotada e chata; a fórmula funcional é correção densa e rica + uma distorção dura da realidade por cena). Para peças emocionais no 'share-lane', prefira UM único plano contínuo com uma transformação fotométrica (rampa de cor / chegada de luz / bloom impulsionado pelos envelopes da música) — costuras impossíveis por construção.

Armadilha de composição que vai te queimar: blends de tela devem rodar em RGB (format=gbrp) — em YUV, o preto tem croma 128 e o blend inunda o quadro de magenta. Faça a opacidade como uma multiplicação lutrgb em RGB.

Mecanismos de Corte

Dois relógios, escolha por faixa:

  • Sincronizado com ataques (preferido para faixas de energia/retenção): librosa.onset.onset_detect(onset_envelope=onset_strength(...), hop_length=512, backtrack=False, delta=0.02, units="time"); mescle ataques com menos de 0.13s mantendo o mais forte; quantize int(round((t-t0)*FPS)); force quadro 0; corte em CADA ataque sobrevivente — segure quando esparso, exploda quando intenso; acentos de soco nos ataques do quartil superior. Precisa de um pool profundo (~60+ tomadas). Prefira isso a predefinições de densidade.
  • Baseado em marcadores/prioridades (mecanismo original deste kit): corte nos marcadores primários/secundários conforme a tabela de prioridades abaixo — ainda adequado para cortes de prova de gameplay paisagem e edições de densidade moderada.
  • Ajuste qualquer grade de batida estimada para ataques reais detectados quando dentro de 60ms; para momentos de mudança de estilo/transformação, use floor em vez de round para que a mudança caia no quadro que contém a transiente.

Arquiteturas de Construção

  • Segmento-render → concat → pós-grafo (apenas ffmpeg): mp4s por tomada com cover-crop (scale=W:H:force_original_aspect_ratio=increase:flags=lanczos,crop=W:H, fontes HDR com tonemap para bt709 primeiro, tpad=stop_mode=clone para estender clipes curtos congelando — nunca encurte a grade musical), concat demuxer -c copy, um filter_complex de correção geral (eq=contrast=1.05:saturation=1.08, vinheta, grão de filme via noise=alls=5:allf=t+u), áudio multiplexado por último com fades.
  • Frame-pipe numpy (efeitos integrados por pixel): decodifique ffmpeg→rawvideo rgb24→loop numpy→codifique stdin do ffmpeg em CRF 17. O pipeline de matte comprovado: renderize um base.mp4 corrigido e limpo (corte fixo) → gere mattes de pessoa SOBRE o base → conduza efeitos a partir de uma tabela de efeitos por quadro → multiplexe o áudio original. A sincronia é perfeita por construção.
  • Fusão em shader (GLSL moderngl): filmagem decodificada em uma textura e o mundo procedural renderizado no mesmo shader de fragmento, cortes passados como --cuts para que caiam como socos de warp no shader. Integração mais profunda; veja $generated-media-sourcing para o esqueleto do renderizador.

Entradas

Prefira estas entradas:

  • Arquivo de áudio ou uma janela de trecho.
  • *_cut_markers_30fps.csv de $song-edit-analysis.
  • Fontes de filmagem ou um manifesto de fontes com caminhos de clipes, categorias, pesos e notas de uso.
  • Manifesto de mídia gerada ou pasta de ativos gerados de $generated-media-sourcing, quando o usuário pedir clipes/imagens gerados ou as fontes de filmagem estiverem incompletas.
  • Formato desejado: 9:16, 16:9 ou ambos.
  • Duração alvo, geralmente 30-40s para cortes de prova sociais.

Se não houver CSV de marcadores de corte ainda, execute primeiro $song-edit-analysis.

Fluxo de Trabalho

  1. Escolha a janela musical antes de renderizar. Use a análise da música para selecionar um trecho de 30-40s de alta energia ou narrativamente coerente.
  2. Faça um inventário das filmagens. Use scripts/scan_video_sources.py para pontuar vídeos candidatos quanto a movimento, brilho, saturação e tempos de início promissores.
  3. Se faltarem filmagens reais ou o usuário pedir mídia gerada, use $generated-media-sourcing para criar ou planejar clipes gerados e placas estáticas antes do mapeamento final das fontes.
  4. Crie uma taxonomia de fontes. Tipos comuns: gameplay, crowd, real_laser, photos_festival, photos_nature, character_select, menu, reaction, product, broll, generated_video, generated_still.
  5. Construa o plano de segmentos a partir de marcadores de corte adjacentes. Pule microsegmentos abaixo de cerca de 0.17s a menos que a faixa realmente exija cortes stutter.
  6. Combine a intensidade da filmagem com a prioridade do marcador:
    • Prioridade 1-2: configuração, contexto, seguras, movimento suave.
    • Prioridade 3: ação média, mudanças de ângulo, B-roll rítmico.
    • Prioridade 4: ação ativa, cortes rápidos, respostas de reação.
    • Prioridade 5: melhores impactos, revelações, KOs, acertos da multidão, flashes de laser.
  7. Use acentos como pontuação, não como preenchimento. Lasers reais, reações da multidão, flashes da natureza, momentos de menu, placas geradas e luzes abstratas devem amplificar mudanças de frase, caixas, preenchimentos e quedas.
  8. Renderize segmentos, concatenate, anexe o trecho de áudio limpo e então produza:
    • vídeo final
    • CSV de linha do tempo
    • folha de contato
    • JSON de brief com mix de fontes, mix de tipos, dimensões, janela musical e intenção criativa
  9. Execute $edit-delivery-qa antes de considerar a edição finalizada.

Padrões de Renderização

Para edições verticais que incluem filmagens paisagem, mantenha a ação principal legível:

  • Use um fundo com bleed total e desfocado/melhorado do mesmo clipe.
  • Sobreponha o primeiro plano nítido centralizado com escala e posição y estáveis.
  • Adicione separadores sutis no topo/base apenas se necessário.
  • Evite cortes verticais apertados que percam o palco, direção de lançamento, rostos ou UI importante.

Para filmagens de destaque com bleed total:

  • Escale/corte para preencher o formato de entrega.
  • Aumente contraste/saturação o suficiente para ser lido rapidamente.
  • Mantenha acentos de laser/festival/reação curtos: frequentemente 2-12 quadros ou uma batida.

Para edições de gameplay paisagem:

  • Mantenha a ação em tela cheia visível.
  • Prefira 1920x1080, 30fps mínimo.
  • Use cortes rápidos de uma batida em seções de alta energia, mas preserve a legibilidade da fonte.

Regras de Seleção de Fontes

Prefira ação óbvia na tela: impactos, colisões, picos, revelações, combos rápidos, reações expressivas ou momentos de luz de alto movimento.

Guarde tomadas de reação humana explosivas para chamada-e-resposta após impactos principais. Não rejeite automaticamente filmagens apenas com multidão; rejeite apenas reações fracas, lentas ou visualmente planas.

Use filmagens reais para acentos finais de laser/festival sempre que possível. Placeholders gerados são aceitáveis para exploração, mas substitua-os antes da entrega final se existirem fontes reais.

Rejeite ou priorize fortemente para baixo: cartões de título, entrevistas, menus sem função deliberada, palcos vazios, slates planos, ação muito cortada e configuração de baixo movimento em seções de pico.

Clipes e imagens gerados devem ser rotulados nas saídas de linha do tempo/brief com generated_video ou generated_still, o prompt usado e se o ativo é final_ok, replace_if_real_source_found ou placeholder_only.

Heurísticas de Tempo

  • Use marcadores primários para cortes duros, mudanças de assunto, impactos, revelações e aterrissagens de rampa de velocidade.
  • Use marcadores secundários para cortes de continuação, mudanças de ângulo, pequenas trocas de B-roll e inícios de rampa de velocidade.
  • Durante seções de alta energia, comprimento médio de segmento em torno de 0.35-0.50s funciona bem para uma montagem social densa.
  • Para um corte de prova de 35s, 70-90 segmentos é um alvo forte quando o material de origem pode suportá-lo.
  • Reserve as filmagens mais fortes para a seção de maior energia; não gaste todo o material de pico durante a configuração.

Padrão de Vídeo Musical Vertical (2026-07)

Para promoção musical 9:16 (a nova faixa junto com o padrão Smash): 1080×1920@30 sempre; final com loop contínuo (estado fotométrico retorna ao quadro 0 ao longo dos últimos ~22 quadros); texto de chamada com cinética de segunda linha (linha 1 estática no quadro 0, linha 2 aparecendo ligada à batida dentro de ±100ms de um ataque real em 0.8–1.3s); ou um contêiner estilo Sweeps (tela preta, janela de filmagem centralizada, chamada em monoespaço acima, crédito abaixo) ou cinematográfico com bleed total. Itere como versões numeradas em infraestrutura estável — mude apenas a linguagem de efeito entre versões; quando o cliente amar um momento de 2 segundos, faça desse momento a linguagem inteira da próxima versão.

Padrão de Projeto do Conteto Machino

A forma reutilizável do projeto Smash Mash:

  • Janela musical: cerca de 52.98s-88.17s, um trecho de alta energia de 35.19s.
  • Edição densa baseada em marcadores: aproximadamente um segmento por batida ou marcador principal.
  • Gameplay/ação principal é dominante.
  • Multidão, lasers reais, natureza e momentos de contexto de menu/fonte aparecem como pontuação breve.
  • Entregáveis incluem MP4s finais, folhas de contato, CSVs de linha do tempo e arquivos JSON de brief.

Para o padrão detalhado, leia references/conteto-edit-standard.md.

Referências opcionais:

  • references/example-prompts.md: prompts reutilizáveis para futuras tarefas de edição.
  • references/file-schemas.md: formatos flexíveis de CSV de linha do tempo e JSON de brief.
  • references/render-recipes.md: receitas FFmpeg/layout adaptadas deste projeto.
  • references/gui-vision.md: visão de produto para um fluxo de trabalho gráfico futuro.

Script

Use scripts/scan_video_sources.py quando precisar de um inventário de filmagens reutilizável:

python3 scripts/scan_video_sources.py /caminho/para/videos --out /caminho/para/inventario_fontes

Ele escreve um CSV e JSON com duração da mídia, pontuações brutas de movimento/brilho e tempos de início recomendados. Use a saída para construir pools de fontes e evitar cortar repetidamente dos mesmos momentos mortos.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

edit-delivery-qa

Verify final video edits before delivery. Use when an agent needs to inspect a rendered MP4/MOV/WebM, confirm duration/resolution/frame rate/audio, generate or review contact sheets, analyze timeline CSVs, check cut density/source mix, check FX integration and cohesion, verify text-to-beat sync, catch weak frames or accidental placeholders, and decide whether a beat-synced social edit is ready to show.

generated-media-sourcing

Generate or plan media assets for beat-synced edits when real footage is missing or the user asks for generated visuals - AI video (Gemini/Veo/Flow), AI images, or procedural audio-reactive GPU renders (tunnels, portals, kaleidoscopes, starbursts, mandalas, title pieces via Python+moderngl GLSL). Use with beat-synced-montage-builder when a montage needs generated clips, stills, or procedural audio-reactive elements instead of, or alongside, sourced footage.

song-edit-analysis

Analyze songs and audio files for beat-synced video editing, clip timing, energy mapping, viral window selection, onset-locked cut grids, footage selection, and agent-readable edit briefs. Use when an agent needs to inspect an MP3/WAV/M4A/audio track, estimate tempo and beat grids, identify sections, produce cut markers, pick the best 15-30s window of a song for short-form video, or guide a human or another agent in choosing footage that matches musical energy.

viral-video-edits

End-to-end system for making S-tier beat-synced short-form music video edits — song analysis, viral window selection, footage sourcing with shot-level QA, hook writing, onset-locked cutting, integrated audio-reactive FX (person mattes, procedural GLSL renderers, cinematic grade), and delivery QA. Use this whenever the user asks to make a video edit, music video, reel, TikTok/Shorts/vertical video, beat-synced montage, lyric/hook video, audio-reactive visual, tunnel/portal/kaleidoscope render, or to promote a song with video content — even if they don

Habilidades Relacionadas