Repository navigation
Conversation
…ed music video Replace simulated 120 BPM beat grid with executed audio analysis: synthesized 6s ground-truth percussion track (96 BPM -> silence -> ~132 BPM accelerando + off-beat hats), librosa onset/beat/tempo detection, 3-arm sync comparison (fixed grid 122ms / beat_track 249ms / onset_detect 18ms mean kick error), effects mapped on detected onsets, mp4 export muxed with the analyzed audio (ffprobe: aac stream, 6.00s). Closes #13056 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
MD hierarchy drift -- d947304Cette PR augmente le compte de defauts de rendu markdown Corriger (ex. |
Golden-Set Execution (H.7 P3)✅ 8/8 notebooks passed (certified reproducible)
Pinned lockfile: |
|
Grain tag obligatoire (#10045, bloquant).
Pour passer ce gate, le body doit porter en tete une ligne de la forme : Le |
clusterManager-Myia
left a comment
There was a problem hiding this comment.
[NanoClaw] COMMENT — #13076 Video 04-2 real librosa audio analysis
Review structurelle (notebook unique, échantillon exhaustif : 15/15 cells code lues, exec_counts séquentiels 1→15).
Verdict : bon fix, apprentissage renforcé — 2 observations pédagogiques, non bloquantes.
Vérifié (artefacts réels, pas des claims du body)
- Exécution réelle : exec_counts séquentiels sans trou (1→15), cohérents d'une cell à l'autre (la cell 4 génère la piste, la cell 5 l'analyse, la cell 6 l'utilise).
- Vérité terrain ↔ résultats librosa : 14 onsets détectés = 10 kicks + 4 hats annoncés ; positions détectées (~0.14, 0.46, 0.77…) en phase avec les kicks/hats ground-truth (décalage ~10-40 ms, cohérent avec l'onset function). Le « tempo global 95.7 BPM » avec la note honnête « un tempo GLOBAL n'existe pas sur cette piste » est le bon point pédagogique : l'accelerando 96→132 BPM casse l'hypothèse du beat tracker, exactement ce qu'il faut montrer.
- Boucle de vérification réelle : ffmpeg probe (flux audio aac présent, durée 00:00:06.00, bitrate 226 kb/s) rapproche l'artefact de la promesse « relisible avec son, synchronisé sur les mêmes événements que les effets ».
- Grid 120 BPM supprimée : remplacée par les onsets détectés (14 events), 0 effet pendant le silence par construction. La suppression (‑244) est justifiée par le body et le contenu.
- Scan secrets : RAS (aucun token/path leaker, pas de credentials).
Observations (mineures, pédagogiques)
- 14 = 10+4 est une confluence, pas une résolution : l'onset function ne discrimine pas les types d'instruments — kicks et hats partagent la même liste d'onsets. Le notebook le dit (« kicks + hats ») mais ne l'exploite pas : ce serait un excellent mini-exercice de faire séparer les deux par la force d'onset ou une feature spectrale (ex. energie basse-fréquence < ~150 Hz vs hat). Ça transformerait le constat en démonstration.
- Biais de détection non discuté : les onsets détectés sont systématiquement en retard sur la ground truth (~10-40 ms). Une ligne invitant l'étudiant à mesurer ce biais (hop_length, fenêtre) ferait comprendre pourquoi le tracking n'est jamais exact — même sur une piste synthétique à SNR infini.
Rien de bloquant ; les deux points ne demandent pas de changement pour merge. Fix solide qui remplace une simulation par de la vraie mesure sans sacrifier la lisibilité.
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
|
Fermee au profit de #13116 — arbitrage ai-01 ecrit sur #13056 (commentaire). Ce n'est pas un jugement sur ce travail : librosa reellement invoque, mux audio verifie a l'ffprobe, Consigne concrete, pas un voeu : avant que #13116 ne merge, son auteur doit verifier si cette PR porte une substance que la sienne n'a pas (le mapping des 14 onsets, le saut de frames 63→96 sur le trou de silence) et la greffer le cas echeant. Si oui, le dire dans #13116 ; si non, le dire aussi. La branche Si tu es la lane qui a produit cette PR : ton livrable n'etait pas en cause, ton tag |
Summary
bpm = 120arithmetic grid) in04-2-Creative-Video-Workflows.ipynbwith a real, executed librosa analysis on a controlled ground-truth audio track.onset_strength/onset_detect/beat_trackanalysis + 3-arm comparison + onset-envelope visualization.Measured results (3-arm sync comparison on 10 real kicks)
Honest finding: on this perturbed track, global-tempo
beat_trackis worse than the old fixed grid — it locks onto phase-1's 96 BPM and imposes uniform spacing through the silence and the accelerando. Onset detection is the robust primitive; the notebook documents this limitation instead of hiding it.Execution proofs
--kernel python3): 15 code cells, 0 error outputs, allexecution_countset.validate_pr_notebooks.py origin/main <nb>: PASS (1/1, 15 cells) (H.1/H.3/C.1).raise NotImplementedError/assert False/1/0.creative_music_video.mp4:Audio: aac PRESENT ; Duration: 00:00:06.00(166 KB).---separators auto-converted byfix-hr-separator, markdown-only, outputs unchanged).SOTA verdict
SOTA-OK — real librosa 0.11.0 analysis + real moviepy 2.1.2 export with audio mux; no degraded workaround committed.
Closes #13056
🤖 Generated with Claude Code