Communitygithub.com

song-edit-analysis

Analisa músicas e arquivos de áudio para edição de vídeo sincronizada com batidas, temporização de clipes, mapeamento de energia, janelas virais, grades de cortes baseadas em onsets, seleção de cenas e briefings legíveis por agente. Use quando um agente precisar inspecionar um arquivo MP3/WAV/M4A/trilha de áudio, estimar tempo e grade de batidas, identificar seções, produzir marcadores de corte, escolher a melhor janela de 15-30s de uma música para vídeos curtos, ou orientar um humano ou outro agente na escolha de cenas que correspondam à energia musical.

O que é song-edit-analysis?

Esta skill transforma qualquer faixa de áudio em inteligência prática de edição, gerando saídas que vão desde temporização e grade de batidas até mapas de energia, seleção de janelas virais e briefings para seleção de cenas por agentes de IA. Ela suporta plataformas como Claude Code, Cursor, Codex e qualquer ambiente que execute scripts Python, utilizando bibliotecas como librosa, numpy e scipy para análise. O fluxo principal executa um script que produz diversos artefatos: CSVs de batidas e marcadores de corte, gráficos de energia, guias de edição legíveis por humanos e arquivos JSON estruturados para orientar outro agente na escolha de cenas. Recursos avançados incluem grades de cortes baseadas em onsets para edições densas, seleção de janelas virais baseada em repetição, energia, emendas de loop e posição de letra, além de seguidores de envelope para efeitos reativos ao áudio. A skill também oferece uma escada de energia para combinar intensidade de cenas com seções musicais, garantindo que picos de energia recebam o melhor material visual.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/BusyBee3333/viral-video-edit-skills/tree/main/skills/song-edit-analysis

Perguntar na sua IA favorita

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

Documentação

Análise de Edição de Música

Visão Geral

Use esta skill para transformar uma música em inteligência prática de edição: tempo, grade de batidas, mapa de seções, curva de energia, prioridades de corte, notas de adequação de cenas, marcadores de linha do tempo e um briefing de seleção de cenas voltado para agentes.

O script incluído é o caminho padrão porque mantém a análise reprodutível e fornece saídas tanto legíveis por humanos quanto por máquinas.

Fluxo de Trabalho

  1. Confirme o caminho do áudio e crie uma pasta de saída para os entregáveis.
  2. Garanta que as dependências Python estejam disponíveis: librosa, numpy, scipy, matplotlib, pandas, scikit-learn e soundfile.
  3. Execute scripts/analyze_song_for_editing.py <arquivo-de-áudio> --out <pasta-de-saída>.
  4. Inspecione a imagem da linha do tempo de energia e o CSV de seções gerados. Se a seccionamento automático dividir excessivamente uma seção movimentada, sintetize um mapa de seções macro mais simples na resposta final ou em um arquivo markdown separado.
  5. Use o briefing de cenas do agente quando outro agente for escolher clipes, montar uma edição ou pontuar candidatos a cenas.
  6. Para produção downstream, use $footage-review-pack para selecionar fontes, $beat-synced-montage-builder para montar a edição e $edit-delivery-qa para verificar o render final.

Saídas do Script

Para uma entrada chamada my_song.mp3, o script escreve:

  • my_song_beats.csv: cada batida detectada com tempo, posição estimada de compasso/batida, energia, graves, brilho, força de transient e prioridade de corte.
  • my_song_cut_markers_30fps.csv: marcadores de corte primários e secundários com timecode em 30fps e notas concisas.
  • my_song_sections.csv: regiões estruturais detectadas com energia média, caráter sonoro, adequação de cena e estratégia de corte.
  • my_song_phrases.csv: notas de edição em nível de frase de 8 batidas.
  • my_song_energy_timeline.png: forma de onda, curva de energia, dicas de cenas e seções detectadas.
  • my_song_editing_guide.md: guia de edição legível por humanos.
  • my_song_agent_footage_brief.json: instruções estruturadas de seleção de cenas para outro agente.
  • my_song_analysis.json: resumo geral legível por máquina.

Grades de Cortes Baseadas em Onsets (mecanismo v2, preferido para cortes densos)

Quando a edição deve cortar em cada momento que a música permite (rajadas rápidas incluídas), pule os limites de marcador e construa uma grade bruta de onsets:

env    = librosa.onset.onset_strength(y=y, sr=sr, hop_length=512)
onsets = librosa.onset.onset_detect(onset_envelope=env, sr=sr, hop_length=512,
                                    backtrack=False, delta=0.02, units="time")

delta=0.02 captura tudo (0.03-0.04 para grades mais limpas). Mescle onsets mais próximos que 0,13s mantendo o mais forte; quantize para quadros com int(round((t-t0)*FPS)); force um corte no quadro 0; descarte cortes a 2 quadros do final. Segure quando esparso, exploda quando movimentado — nunca insira cortes de preenchimento fora da grade. Onsets no quartil superior de força ganham acentos (zooms de impacto). Ajuste qualquer grade de batidas estimada para o onset real mais próximo quando dentro de 60ms (transientes ficam até ~35ms fora de uma grade de tempo constante); para momentos de transformação/mudança de estilo quantize com piso, não arredondamento, para que a mudança caia no quadro que contém o transient.

Seleção de Janela Viral (quais 15-30s cortar)

Pontue janelas candidatas com base em cinco sinais: repetição/caráter de refrão (autossimilaridade cromática sincronizada com batidas, diagonal + 8 off-diagonais zeradas, média por linha), aumento de energia (post_mean(4s) - pre_mean(4s) — encontra construção→queda), emenda de loop (similaridade cosseno de cromática+mfcc logo após o fim da janela vs logo após o início — loops invisíveis), posição da letra (uma frase começando dentro de [início-0,5, início+3,0], impulsionada por palavras emocionais), e a prioridade de início postada pelo próprio artista. Âncoras = picos de repetição principais + batidas de maior aumento de energia + a prioridade, cada um ajustado para o downbeat do compasso exatamente antes ou no momento, para que o gancho chegue cedo. Combine aproximadamente 0.26*energia + 0.20*repetição + 0.18*aumento*2 + 0.16*letra + 0.12*emenda_loop + 0.08*prioridade; mantenha janelas principais com sobreposição <50%.

Seguidores de Envelope (para efeitos contínuos)

Para efeitos reativos ao áudio, reamostre o envelope de onset para a grade de quadros, normalizando pelo percentil 95, depois um peak-hold de um polo (ataque instantâneo, decaimento exp(-1/(fps*0.22..0.25))). Pulsos de batida para zoom de impacto/florescimento: por batida adicione amp * exp(-(t-t_batida)/0.16), amp ponderada por energia. Mantenha graves / energia / agudos / transient como canais normalizados separados — nunca um único escalar de volume — e deixe canais de eventos de onset sem suavização. Renderize efeitos contra a mesma janela de início/duração da edição para que pulsos e cortes compartilhem um envelope (sincronizados por construção).

Regras de Interpretação

Trate tempo, batidas e compassos como estimativas até serem verificadas contra a forma de onda ou de ouvido. As grades de batidas geralmente são boas o suficiente para edição aproximada, mas a rotulagem de downbeat pode estar deslocada por uma batida ou frase.

Use esta escada de energia para seleção de cenas:

  • Energia 1 / muito baixa: atmosfera, títulos, planos detalhe, câmera lenta, configuração silenciosa.
  • Energia 2 / baixa: preparação, antecipação, contexto, câmera lenta, pré-ação.
  • Energia 3 / média: movimento visível, reações, B-roll rítmico, cortes de 2-4 batidas.
  • Energia 4 / alta: movimento ativo, planos próximos a impacto, B-roll rápido, cortes de 1-2 batidas.
  • Energia 5 / pico: cenas mais fortes, colisões, revelações, batidas rápidas, acertos de VFX, alternância rápida, cortes de 0,5-1 batida.

Use pontos de corte primários para mudanças principais de assunto, impactos, cortes secos, revelações, aterrissagens de speed-ramp e acertos de título. Use pontos de corte secundários para mudanças de ângulo, cortes de continuação, trocas menores de B-roll e inícios de speed-ramp.

Seleção de Cenas por Agente

Quando um agente for escolher cenas, passe a ele *_agent_footage_brief.json mais qualquer inventário de cenas disponível. Instrua o agente a:

  1. Marcar cada clipe candidato com content_type da taxonomia do briefing.
  2. Pontuar cada clipe candidato com motion_intensity de 1 a 5.
  3. Corresponder a intensidade do clipe ao energy_level de cada seção, permitindo mais ou menos 1 a menos que a edição precise de contraste deliberado.
  4. Reservar clipes com peak_impact e intensidade de movimento 5 para a seção de maior energia.
  5. Colocar mudanças de assunto, impactos e revelações nos pontos de corte primários.
  6. Usar durações mais curtas, cortes mais apertados, speed ramps ou detalhes de impacto repetidos quando o material disponível for menos intenso que a música.

Orientação para Humanos

Sempre forneça um mapa macro conciso além dos dados brutos. Editores precisam de julgamento musical, não apenas uma lista de batidas. Destaque:

  • Onde segurar os planos.
  • Onde começam os primeiros cortes rítmicos significativos.
  • Onde começa a queda ou o pico.
  • Qual seção merece o melhor material.
  • Os pontos de corte mais fortes por timestamp.
  • Qualquer incerteza, especialmente se a detecção de seções superdividir ou se o downbeat pode estar deslocado.

Skills Downstream

Esta skill produz a inteligência musical. Use as skills complementares para o restante do fluxo de trabalho repetível:

  • $footage-review-pack: construir listas de seleção, galerias de revisão, manifestos e proveniência de fontes.
  • $beat-synced-montage-builder: mapear cenas para marcadores de corte e renderizar variantes de montagem para redes sociais.
  • $edit-delivery-qa: inspecionar renders finais, fichas técnicas, densidade da linha do tempo e prontidão para entrega.

Individual skills in this repo

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

beat-synced-montage-builder

Build beat-synced social video montages from song-analysis outputs and source footage. Use when an agent needs to assemble, plan, or revise a music-timed edit; map footage to beats/onsets/cut markers; create vertical or landscape montage timelines; integrate audio-reactive FX into shots; mix gameplay, crowd, concert, nature, menu, or other accent footage; generate timeline CSVs, contact sheets, and edit briefs; or adapt the Conteto Machino / Smash Mash workflow for another song or footage library.

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.

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