From 40acad26f3a7313b159bc9fc5c26a1d29373f599 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastjan=20Arti=C4=8D?= Date: Wed, 29 Apr 2026 12:42:54 +0000 Subject: [PATCH] Crystal-clear chorus selection rules: pre-chorus build-up + FIRST chorus MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Previous rules were ambiguous and Claude was sometimes picking: - Just the chorus (no build-up) - Second chorus instance (lower energy than first) - Random verse + later chorus combinations New explicit priority order: 1. PRIMARY: pre-chorus verse (build-up) + first chorus (~20-35s total) 2. FALLBACK: just first chorus alone 3. LAST RESORT: dramatic peak section Strict rules: - ALWAYS first chorus (highest energy/recognition) - NEVER second/third chorus instances - NEVER skip between verses - NEVER extend over 35 seconds - Concrete example given: chorus@32s,16s long → pick 20-48s This fixes Veseli Dolenjci picking second chorus + post-chorus verse instead of natural pre-chorus build-up + first chorus. --- scripts/analyze.py | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/scripts/analyze.py b/scripts/analyze.py index b821801..4e19d5c 100644 --- a/scripts/analyze.py +++ b/scripts/analyze.py @@ -681,14 +681,30 @@ PROSIM: - Refren MORA imeti vse pojavitve ENAKE - Popravi pomešane jezike (vse vrstice v enem jeziku) - Ohrani timestamp-e nespremenjene -3. Prepoznaj REFREN: del besedila ki se PONAVLJA -4. Izberi najboljši odsek za reel: - - Vključi cel refren (brez prekinitve) - - Lahko dodaj pre-chorus build-up - - 20-45 sekund - - Začni in končaj na smiselni meji -5. Če pesem nima jasnega refrena, izberi najbolj dramatičen ali zaključen del -6. Če Whisper transkript je v večini halucinacija (manj kot 30% smiselnih besed), v "reason" napiši "WHISPER_HALLUCINATION_DETECTED" in vrni najmanj segmentov (samo tisti ki so smiselni) +3. Prepoznaj REFREN: del besedila ki se PONAVLJA (ponavadi je 2-4 vrstice ki se večkrat ponovijo skozi pesem) + +4. **IZBERI ODSEK PO TEM PRIORITETNEM REDU:** + + 🥇 **PRVA IZBIRA**: zadnji verz pred refrenom (build-up) + cel **PRVI** refren + - Build-up = zadnji verz pesmi tik PRED prvim refrenom (običajno 8-15s) + - Refren = ves prvi nastop refrena (običajno 10-20s) + - SKUPAJ: 20-35 sekund + - Začni na začetku build-up verza (ne sredi besede) + - Končaj na zadnji besedi refrena + - Primer: če refren začne na 32s in je dolg 16s → izberi 20-48s (12s build-up + 16s refren) + + 🥈 **DRUGA IZBIRA** (samo če pre-chorus ni dovolj močan): samo cel **PRVI** refren + - Brez build-upa, samo refren z malo dihanja okoli (1-2s padding) + + 🥉 **TRETJA IZBIRA** (samo če pesem nima jasnega refrena): najbolj dramatičen/zaključen del + + **NIKOLI**: + - Ne izbiraj DRUGEGA ali tretjega refrena (pojasnimo: prvi nastop ima največ energije) + - Ne vključuj instrumentalnih medbridge sekcij ali "la la la" delov + - Ne preskakuj med verzi (clip mora biti ena celota) + - Ne podaljšuj clipa čez 35 sekund + +5. Če Whisper transkript je v večini halucinacija (manj kot 30% smiselnih besed), v "reason" napiši "WHISPER_HALLUCINATION_DETECTED" in vrni najmanj segmentov (samo tisti ki so smiselni) Odgovori SAMO v JSON formatu (brez markdown, brez razlage): {{