diff --git a/tracks/acid_reign.py b/tracks/acid_reign.py index 206458d..30b3239 100644 --- a/tracks/acid_reign.py +++ b/tracks/acid_reign.py @@ -193,70 +193,66 @@ for bar in range(8): hats.hit(CH, Duration.SIXTEENTH, velocity=max(12, vel - 15)) hats.hit(CH, Duration.SIXTEENTH, velocity=max(12, vel - 30)) -# ── TABLA — enters halfway, fusion moment ─────────────────────── -TNA = DrumSound.TABLA_NA -TIT = DrumSound.TABLA_TIT -TGE = DrumSound.TABLA_GE -TDHA = DrumSound.TABLA_DHA -TKE = DrumSound.TABLA_KE -TGEB = DrumSound.TABLA_GE_BEND +# ── DHOL — enters halfway, heavy and driving ──────────────────── +DB = DrumSound.DHOL_BOTH +DD = DrumSound.DHOL_DAGGA +DT = DrumSound.DHOL_TILLI -tabla = score.part("tabla", volume=0.3, reverb=0.25, reverb_decay=1.0, - humanize=0.06) +dhol = score.part("dhol", volume=0.4, reverb=0.2, reverb_decay=0.8, + humanize=0.06) # Bars 1-32: silent for _ in range(32): - tabla.rest(Duration.WHOLE) + dhol.rest(Duration.WHOLE) -# Bars 33-56: double-time keherwa (16ths) with fills every 4 bars +# Bars 33-56: dhol chaal pattern in 16ths with fills for bar in range(24): if bar % 4 == 3: - # Fill — 16th note flurry with bayan bends - tabla.hit(TDHA, Duration.SIXTEENTH, velocity=100, articulation="accent") - tabla.hit(TIT, Duration.SIXTEENTH, velocity=55) - tabla.hit(TGEB, Duration.SIXTEENTH, velocity=110) - tabla.hit(TNA, Duration.SIXTEENTH, velocity=72) - tabla.hit(TDHA, Duration.SIXTEENTH, velocity=95, articulation="accent") - tabla.hit(TIT, Duration.SIXTEENTH, velocity=50) - tabla.hit(TNA, Duration.SIXTEENTH, velocity=68) - tabla.hit(TGEB, Duration.SIXTEENTH, velocity=108) - tabla.hit(TDHA, Duration.SIXTEENTH, velocity=98, articulation="accent") - tabla.hit(TNA, Duration.SIXTEENTH, velocity=70) - tabla.hit(TKE, Duration.SIXTEENTH, velocity=58) - tabla.hit(TGEB, Duration.SIXTEENTH, velocity=115) - tabla.hit(TNA, Duration.SIXTEENTH, velocity=65) - tabla.hit(TIT, Duration.SIXTEENTH, velocity=52) - tabla.hit(TGEB, Duration.QUARTER, velocity=120) + # Fill — rapid dagga/tilli alternation + dhol.hit(DB, Duration.SIXTEENTH, velocity=110, articulation="accent") + dhol.hit(DT, Duration.SIXTEENTH, velocity=70) + dhol.hit(DT, Duration.SIXTEENTH, velocity=65) + dhol.hit(DD, Duration.SIXTEENTH, velocity=100) + dhol.hit(DT, Duration.SIXTEENTH, velocity=72) + dhol.hit(DB, Duration.SIXTEENTH, velocity=108, articulation="accent") + dhol.hit(DT, Duration.SIXTEENTH, velocity=68) + dhol.hit(DT, Duration.SIXTEENTH, velocity=62) + dhol.hit(DD, Duration.SIXTEENTH, velocity=105) + dhol.hit(DT, Duration.SIXTEENTH, velocity=70) + dhol.hit(DB, Duration.SIXTEENTH, velocity=112, articulation="accent") + dhol.hit(DT, Duration.SIXTEENTH, velocity=65) + dhol.hit(DD, Duration.SIXTEENTH, velocity=108) + dhol.hit(DT, Duration.SIXTEENTH, velocity=68) + dhol.hit(DB, Duration.QUARTER, velocity=120, articulation="marcato") else: - # Double-time groove — 16ths - tabla.hit(TDHA, Duration.SIXTEENTH, velocity=90, articulation="accent") - tabla.hit(TGE, Duration.SIXTEENTH, velocity=52) - tabla.hit(TNA, Duration.SIXTEENTH, velocity=65) - tabla.hit(TIT, Duration.SIXTEENTH, velocity=38) - tabla.hit(TNA, Duration.SIXTEENTH, velocity=60) - tabla.hit(TIT, Duration.SIXTEENTH, velocity=35) - tabla.hit(TDHA, Duration.SIXTEENTH, velocity=85, articulation="accent") - tabla.hit(TNA, Duration.SIXTEENTH, velocity=55) - tabla.hit(TGE, Duration.SIXTEENTH, velocity=50) - tabla.hit(TNA, Duration.SIXTEENTH, velocity=62) - tabla.hit(TIT, Duration.SIXTEENTH, velocity=38) - tabla.hit(TNA, Duration.SIXTEENTH, velocity=58) - tabla.hit(TDHA, Duration.SIXTEENTH, velocity=88, articulation="accent") - tabla.hit(TIT, Duration.SIXTEENTH, velocity=40) - tabla.hit(TNA, Duration.SIXTEENTH, velocity=60) - tabla.hit(TIT, Duration.SIXTEENTH, velocity=35) + # Driving dhol chaal — 16ths + dhol.hit(DB, Duration.SIXTEENTH, velocity=105, articulation="accent") + dhol.hit(DT, Duration.SIXTEENTH, velocity=65) + dhol.hit(DD, Duration.SIXTEENTH, velocity=85) + dhol.hit(DT, Duration.SIXTEENTH, velocity=60) + dhol.hit(DT, Duration.SIXTEENTH, velocity=62) + dhol.hit(DT, Duration.SIXTEENTH, velocity=55) + dhol.hit(DD, Duration.SIXTEENTH, velocity=80) + dhol.hit(DB, Duration.SIXTEENTH, velocity=100, articulation="accent") + dhol.hit(DT, Duration.SIXTEENTH, velocity=62) + dhol.hit(DD, Duration.SIXTEENTH, velocity=82) + dhol.hit(DT, Duration.SIXTEENTH, velocity=58) + dhol.hit(DT, Duration.SIXTEENTH, velocity=55) + dhol.hit(DD, Duration.SIXTEENTH, velocity=78) + dhol.hit(DT, Duration.SIXTEENTH, velocity=60) + dhol.hit(DB, Duration.SIXTEENTH, velocity=98, articulation="accent") + dhol.hit(DT, Duration.SIXTEENTH, velocity=58) -# Bars 57-64: fading — back to 8ths +# Bars 57-64: fading for bar in range(8): - vel = max(25, 80 - bar * 7) - tabla.hit(TDHA, Duration.EIGHTH, velocity=vel) - tabla.hit(TGE, Duration.EIGHTH, velocity=max(20, vel - 25)) - tabla.hit(TNA, Duration.EIGHTH, velocity=max(20, vel - 15)) - tabla.hit(TIT, Duration.EIGHTH, velocity=max(15, vel - 35)) - tabla.hit(TNA, Duration.EIGHTH, velocity=max(20, vel - 20)) - tabla.hit(TIT, Duration.EIGHTH, velocity=max(15, vel - 38)) - tabla.hit(TDHA, Duration.EIGHTH, velocity=max(20, vel - 5)) - tabla.hit(TNA, Duration.EIGHTH, velocity=max(20, vel - 22)) + vel = max(25, 95 - bar * 9) + dhol.hit(DB, Duration.QUARTER, velocity=vel, articulation="accent") + dhol.hit(DT, Duration.EIGHTH, velocity=max(20, vel - 30)) + dhol.hit(DD, Duration.EIGHTH, velocity=max(20, vel - 15)) + dhol.hit(DT, Duration.EIGHTH, velocity=max(20, vel - 32)) + dhol.hit(DT, Duration.EIGHTH, velocity=max(20, vel - 35)) + dhol.hit(DD, Duration.EIGHTH, velocity=max(20, vel - 18)) + dhol.hit(DB, Duration.EIGHTH, velocity=max(20, vel - 5)) # ── 808 SUB — deep sine, follows the root ─────────────────────── sub = score.part("808", synth="sine", envelope="pad", volume=0.8,