Analyse de chanson pour montage
Aperçu
Utilisez cette compétence pour transformer une chanson en intelligence de montage pratique : tempo, grille de temps, carte des sections, courbe d'énergie, priorités de coupe, notes d'adéquation des séquences, marqueurs de timeline et un bref de sélection de séquences orienté agent.
Le script fourni est le chemin par défaut car il rend l'analyse reproductible et produit des sorties à la fois lisibles par l'humain et exploitables par machine.
Déroulement
- Confirmez le chemin audio et créez un dossier de sortie pour les livrables.
- Assurez-vous que les dépendances Python sont disponibles :
librosa,numpy,scipy,matplotlib,pandas,scikit-learnetsoundfile. - Lancez
scripts/analyze_song_for_editing.py <fichier-audio> --out <dossier-sortie>. - Inspectez l'image de la timeline d'énergie et le CSV des sections générés. Si le découpage automatique sur-découpe une section chargée, synthétisez une carte macro de sections plus simple dans la réponse finale ou dans un fichier Markdown séparé.
- Utilisez le bref de séquences pour agent lorsqu'un autre agent devra choisir les clips, assembler un montage ou évaluer des candidats de séquences.
- Pour la production en aval, utilisez
$footage-review-packpour organiser les sources,$beat-synced-montage-builderpour assembler le montage et$edit-delivery-qapour vérifier le rendu final.
Sorties du script
Pour une entrée nommée ma_chanson.mp3, le script écrit :
ma_chanson_beats.csv: chaque temps détecté avec le temps, la position estimée mesure/temps, l'énergie, la basse, la brillance, la force transitoire et la priorité de coupe.ma_chanson_cut_markers_30fps.csv: marqueurs de coupe primaires et secondaires avec timecode 30fps et notes de marqueur concises.ma_chanson_sections.csv: régions structurelles détectées avec énergie moyenne, caractère sonore, adéquation des séquences et stratégie de coupe.ma_chanson_phrases.csv: notes de montage au niveau de la phrase de 8 temps.ma_chanson_energy_timeline.png: forme d'onde, courbe d'énergie, indices de séquences et sections détectées.ma_chanson_editing_guide.md: guide de montage lisible par l'humain.ma_chanson_agent_footage_brief.json: instructions structurées de sélection de séquences pour un autre agent.ma_chanson_analysis.json: résumé global exploitable par machine.
Grilles de coupes verrouillées par attaque (moteur v2, préféré pour le montage dense)
Lorsque le montage doit couper sur chaque moment que la chanson offre (y compris les rafales rapides), ignorez les seuils de marqueurs et construisez une grille d'attaques brutes :
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 capture tout (0.03-0.04 pour des grilles plus propres). Fusionnez les attaques plus proches que 0.13 s en conservant la plus forte ; quantifiez en images avec int(round((t-t0)*FPS)) ; forcez une coupe à l'image 0 ; supprimez les coupes à moins de 2 images de la fin. Maintenez quand c'est clairsemé, rafale quand c'est chargé – n'insérez jamais de coupes de remplissage hors grille. Les attaques dans le quartile supérieur de force reçoivent des accents (zooms percutants). Accrochez toute grille de temps estimée à l'attaque réelle la plus proche si elle est à moins de 60 ms (les transitoires se situent jusqu'à ~35 ms d'une grille de tempo régulier) ; pour les moments de transformation/changement de style, quantifiez avec le plancher, pas l'arrondi, de sorte que le changement atterrisse sur l'image contenant la transitoire.
Sélection de fenêtre virale (quelle fenêtre de 15 à 30 secondes couper)
Évaluez les fenêtres candidates sur cinq signaux : répétition/chorus (similarité chromatique sync au rythme, diagonale + 8 hors-diagonales mises à zéro, moyenne des lignes), montée d'énergie (post_mean(4s) - pre_mean(4s) — trouve la construction→chute), joint de boucle (similarité cosinus du chroma+mfcc juste après la fin de la fenêtre vs juste après le début — boucles invisibles), placement des paroles (une phrase commençant dans [début-0.5, début+3.0], boostée par les mots émotionnels), et le temps de début publié par l'artiste lui-même comme priorité. Ancres = pics de répétition les plus élevés + temps de montée d'énergie les plus hauts + la priorité, chacun accroché au temps fort de la mesure au même moment ou juste avant pour que l'accroche arrive tôt. Combinez approximativement 0.26*énergie + 0.20*répétition + 0.18*montée*2 + 0.16*paroles + 0.12*joint_boucle + 0.08*priorité ; conservez les fenêtres supérieures avec un chevauchement <50%.
Suiveurs d'enveloppe (piloter des effets continus)
Pour des effets audio-réactifs, rééchantillonnez l'enveloppe d'attaque sur la grille d'images, normalisez par le 95e percentile, puis un maintien de crête unipolaire (attaque instantanée, décroissance exp(-1/(fps*0.22..0.25))). Impulsions de temps pour le zoom percutant / l'éclosion : par temps ajoutez amp * exp(-(t-t_temps)/0.16), amp pondérée par l'énergie. Gardez les canaux basse / énergie / aigu / transitoire comme canaux normalisés séparés – jamais un seul scalaire de volume – et laissez les canaux d'événements d'attaque non lissés. Rendez les effets contre exactement la même fenêtre début/durée que le montage, de sorte que les impulsions et les coupes partagent une seule enveloppe (sync par construction).
Règles d'interprétation
Considérez le tempo, les temps et les mesures comme des estimations jusqu'à vérification sur la forme d'onde ou à l'oreille. Les grilles de temps sont généralement assez bonnes pour un montage approximatif, mais l'étiquetage du temps fort peut être décalé d'un temps ou d'une phrase.
Utilisez cette échelle d'énergie pour la sélection des séquences :
- Énergie 1 / très faible : atmosphère, titres, plans de détail, panoramiques lents, installation calme.
- Énergie 2 / faible : préparation, anticipation, contexte, ralenti, pré-action.
- Énergie 3 / moyenne : mouvement visible, réactions, B-roll rythmique, coupes de 2 à 4 temps.
- Énergie 4 / élevée : mouvement actif, plans proches de l'impact, B-roll rapide, coupes de 1 à 2 temps.
- Énergie 5 / maximale : séquences les plus fortes, collisions, révélations, fouettés rapides, hits VFX, alternance rapide, coupes de 0,5 à 1 temps.
Utilisez les points de coupe primaires pour les changements de sujet majeurs, les impacts, les coupes franches, les révélations, les atterrissages de rampes de vitesse et les hits de titres. Utilisez les points de coupe secondaires pour les changements d'angle, les coupes de continuation, les petits échanges de B-roll et les démarrages de rampes de vitesse.
Sélection de séquences par agent
Lorsqu'un agent choisira les séquences, transmettez-lui *_agent_footage_brief.json ainsi que tout inventaire de séquences disponible. Ordonnez à l'agent de :
- Étiqueter chaque clip candidat avec
content_typeissu de la taxonomie du brief. - Noter chaque clip candidat avec
motion_intensityde 1 à 5. - Faire correspondre l'intensité du clip au
energy_levelde chaque section, en permettant plus ou moins 1 sauf si le montage nécessite un contraste délibéré. - Réserver les clips
peak_impactet d'intensité de mouvement 5 pour la section de plus haute énergie. - Placer les changements de sujet, les impacts et les révélations sur les points de coupe primaires.
- Utiliser des durées plus courtes, des recadrages plus serrés, des rampes de vitesse ou des détails d'impact répétés lorsque les séquences disponibles sont moins intenses que la musique.
Guide orienté humain
Fournissez toujours une carte macro concise en plus des données brutes. Les monteurs ont besoin d'un jugement musical, pas seulement d'une liste de temps. Signalez :
- Où tenir les plans.
- Où commencent les premières coupes rythmiques significatives.
- Où commence la chute ou le pic.
- Quelle section mérite les meilleures séquences.
- Les points de coupe les plus forts par horodatage.
- Toute incertitude, surtout si la détection des sections sur-découpe ou si le temps fort peut être décalé.
Compétences en aval
Cette compétence produit l'intelligence musicale. Utilisez les compétences compagnes pour le reste du flux de travail reproductible :
$footage-review-pack: construire des listes restreintes, des galeries de revue, des manifests et la provenance des sources.$beat-synced-montage-builder: mapper les séquences aux marqueurs de coupe et générer des variantes de montage social.$edit-delivery-qa: inspecter les rendus finaux, les planches-contact, la densité de la timeline et l'état de préparation à la livraison.