Commit ea52a32c by PLN (Algolia)

chore(corpus): mark the tempo knob for quantise — 14 sites, none of them touched live

PLN, after seeing the OLED refuse to claim a round number: "quantise would make
sense mark a todo on the tracks sept1 and this commented line replace it with
quantize commented too. where its possible".

The measurement behind it: the house idiom `# cps ((range 60 180 "^29")/60/4)`
spreads 120 BPM across 128 CC steps at 0.94 BPM per step, so exactly 120 is
unreachable — step 63 is 119.5 and step 64 is 120.4. Wrapping the range in
`quantise 1` makes round tempos land exactly AND gives the knob a real two-step
detent at each one, which is the notch the v3 encoder lost.

Two treatments, deliberately different. A LIVE cps line is not edited — the
tempo is playing and this is his set material; it gets a TODO on its own line
above. An already-COMMENTED one is rewritten in place to the quantise form,
still commented, so uncommenting it gives round BPMs from the first click.

The TODO goes on its own line and never as a trailing comment, because the
driver's parse_context uses a line's trailing comment as that control's OLED
label — a trailing TODO would have renamed the tempo knob "TODO(tempo): wrap
the range..." on the screen. The first draft of this change also hard-coded
"60-180" into files whose ranges are 75-165, 100-166, 99+-20 and 60-124; it was
reverted and rewritten range-agnostic before landing.

Verified all 14 matches are genuinely tempo knobs (including one `cpsbus 4`
variant in ragga_la_hierarchie), not incidental cps-and-range coincidences.
parent 9903e221
...@@ -9,6 +9,7 @@ d1 $ gF1 $ gM1 ...@@ -9,6 +9,7 @@ d1 $ gF1 $ gM1
$ midiOn "^41" ((<| "k k k <k k*2 k [~ k*2]>")) $ midiOn "^41" ((<| "k k k <k k*2 k [~ k*2]>"))
$ midiOff "^41" (<| "k . <~!8 k(3,8)!8>") $ midiOff "^41" (<| "k . <~!8 k(3,8)!8>")
$ "kick:5" $ "kick:5"
-- TODO(tempo): wrap the range in `quantise 1` — 128 CC steps rarely land on a round BPM
# cps ((range 60 120 "^29")/60/4) # cps ((range 60 120 "^29")/60/4)
d2 $ gF1 $ gM2 d2 $ gF1 $ gM2
$ "~ s ~ s ~ s ~ s*2" $ "~ s ~ s ~ s ~ s*2"
......
...@@ -58,6 +58,7 @@ d1 $ gF1 $ gM1 -- Kick, le pas du train qui démarre ...@@ -58,6 +58,7 @@ d1 $ gF1 $ gM1 -- Kick, le pas du train qui démarre
] ]
# "[kick:3,jazz]" # "[kick:3,jazz]"
# gain 1.35 # gain 1.35
-- TODO(tempo): wrap the range in `quantise 1` — 128 CC steps rarely land on a round BPM
# cps ((range 60 180 "^29")/60/4) # cps ((range 60 180 "^29")/60/4)
d2 $ gF1 $ gM2 -- Clap/snare, contretemps liquide d2 $ gF1 $ gM2 -- Clap/snare, contretemps liquide
......
...@@ -19,6 +19,7 @@ d1 $ gF1 $ gM1 ...@@ -19,6 +19,7 @@ d1 $ gF1 $ gM1
] ]
# "[techno:1,jazz]" # "[techno:1,jazz]"
# gain 1.4 # gain 1.4
-- TODO(tempo): wrap the range in `quantise 1` — 128 CC steps rarely land on a round BPM
# cps ((range 60 180 "^29")/60/4) # cps ((range 60 180 "^29")/60/4)
d2 $ gF1 $ gM2 d2 $ gF1 $ gM2
$ midiOn "^42" (<|"~ s ~ s*<1 2>") $ midiOn "^42" (<|"~ s ~ s*<1 2>")
......
...@@ -8,7 +8,7 @@ d1 $ gF1 $ gM1 ...@@ -8,7 +8,7 @@ d1 $ gF1 $ gM1
$ "[808bd:4,808bd:2]" $ "[808bd:4,808bd:2]"
# gain 1.51 # gain 1.51
# lpf 2000 # lpf 2000
-- # cps ((range (99 - 20) (99 + 20) "^29") / 60/ 4) -- TODO CPS MAGIC?? -- # cps ((quantise 1 (range (99 - 20) (99 + 20) "^29")) / 60/ 4) -- TODO CPS MAGIC??
d2 $ gF1 $ gM2 d2 $ gF1 $ gM2
$ whenmod 8 15 (# silence) $ whenmod 8 15 (# silence)
$ midiOn "^42" (# "vec1_snare:21") $ midiOn "^42" (# "vec1_snare:21")
......
...@@ -7,6 +7,7 @@ d1 $ gF1 $ gM1 -- Kick ...@@ -7,6 +7,7 @@ d1 $ gF1 $ gM1 -- Kick
$ "[kick:4]" $ "[kick:4]"
# gain 1.2 # gain 1.2
# lpf 400 # lpf 400
-- TODO(tempo): wrap the range in `quantise 1` — 128 CC steps rarely land on a round BPM
# cps ((range 60 180 "^29")/60/4) # cps ((range 60 180 "^29")/60/4)
d2 $ gF1 $ gM2 d2 $ gF1 $ gM2
$ midiOn "^43" (<| "~ s ~ s") $ midiOn "^43" (<| "~ s ~ s")
......
...@@ -7,6 +7,7 @@ once $ "voices_reggae" # cut 2 ...@@ -7,6 +7,7 @@ once $ "voices_reggae" # cut 2
do do
-- setcps (180/60/4) -- setcps (180/60/4)
let gF = (# djfbus 1 (range 0.05 0.95 "^49")) let gF = (# djfbus 1 (range 0.05 0.95 "^49"))
-- TODO(tempo): wrap the range in `quantise 1` — 128 CC steps rarely land on a round BPM
let gCPS = (# cpsbus 4 ((range 60 180 "^13")/60/4)) let gCPS = (# cpsbus 4 ((range 60 180 "^13")/60/4))
let gMute = (midiOn "^73" (mask "f*16")) let gMute = (midiOn "^73" (mask "f*16"))
let gM = gMask . gMute let gM = gMask . gMute
......
...@@ -14,6 +14,7 @@ d1 $ gF1 $ gM1 ...@@ -14,6 +14,7 @@ d1 $ gF1 $ gM1
] ]
# "[techno:1,jazz]" # "[techno:1,jazz]"
# gain 1.4 # gain 1.4
-- TODO(tempo): wrap the range in `quantise 1` — 128 CC steps rarely land on a round BPM
# cps ((range 75 165 "^29")/60/4) # cps ((range 75 165 "^29")/60/4)
d2 $ gF1 $ gM2 d2 $ gF1 $ gM2
$ midiOn "^43" (<|"~ s ~ s*<1 2>") $ midiOn "^43" (<|"~ s ~ s*<1 2>")
......
...@@ -9,6 +9,7 @@ d1 $ gF1 $ gM1 -- Kick ...@@ -9,6 +9,7 @@ d1 $ gF1 $ gM1 -- Kick
$ "kick:5" $ "kick:5"
# gain 1.6 # gain 1.6
# lpf 400 # lpf 400
-- TODO(tempo): wrap the range in `quantise 1` — 128 CC steps rarely land on a round BPM
# cps ((range 100 166 "^29")/60/4) # cps ((range 100 166 "^29")/60/4)
d2 $ gF1 $ gM2 d2 $ gF1 $ gM2
$ midiOn "^42" (<| "~ s ~ s ~ s ~ s") $ midiOn "^42" (<| "~ s ~ s ~ s ~ s")
......
...@@ -33,7 +33,7 @@ d1 $ gF1 $ gM1 ...@@ -33,7 +33,7 @@ d1 $ gF1 $ gM1
$ "[808bd:4,808bd:2]" $ "[808bd:4,808bd:2]"
# gain 1.51 # gain 1.51
# lpf 2000 # lpf 2000
-- # cps ((range (99 - 20) (99 + 20) "^29") / 60/ 4) -- TODO CPS MAGIC?? -- # cps ((quantise 1 (range (99 - 20) (99 + 20) "^29")) / 60/ 4) -- TODO CPS MAGIC??
d2 $ gF1 $ gM2 d2 $ gF1 $ gM2
$ whenmod 8 15 (# silence) $ whenmod 8 15 (# silence)
$ midiOn "^42" (# "vec1_snare:21") $ midiOn "^42" (# "vec1_snare:21")
......
...@@ -9,6 +9,7 @@ let novaOn ch pat = someCyclesBy ch pat ...@@ -9,6 +9,7 @@ let novaOn ch pat = someCyclesBy ch pat
let novaOff ch pat = someCyclesBy (1 - ch) pat let novaOff ch pat = someCyclesBy (1 - ch) pat
let novaNo c1 c2 pat = someCyclesBy ((1 - c1 - c2)) pat let novaNo c1 c2 pat = someCyclesBy ((1 - c1 - c2)) pat
-- let gRythm = (novaOn "^41" (euclid 3 8)) . (novaOn "^42" (fast 4)) . (novaNo "^41" "^42" (fast 2)) -- let gRythm = (novaOn "^41" (euclid 3 8)) . (novaOn "^42" (fast 4)) . (novaNo "^41" "^42" (fast 2))
-- TODO(tempo): wrap the range in `quantise 1` — 128 CC steps rarely land on a round BPM
let gCPS = (# cps ((range 60 124 "^13")/60/4)) let gCPS = (# cps ((range 60 124 "^13")/60/4))
let g = gCPS . gDJF let g = gCPS . gDJF
let gAcc = g . (novaOff "^41" (# silence)) . (|* gain (range 0 2 "^84")) let gAcc = g . (novaOff "^41" (# silence)) . (|* gain (range 0 2 "^84"))
......
...@@ -8,7 +8,7 @@ d1 $ gF1 $ gM1 ...@@ -8,7 +8,7 @@ d1 $ gF1 $ gM1
$ "[808bd:4,808bd:2,kick:4]" $ "[808bd:4,808bd:2,kick:4]"
# gain 1.51 # gain 1.51
# lpf 2000 # lpf 2000
-- # cps ((range (99 - 20) (99 + 20) "^29") / 60/ 4) -- TODO CPS MAGIC?? -- # cps ((quantise 1 (range (99 - 20) (99 + 20) "^29")) / 60/ 4) -- TODO CPS MAGIC??
d2 $ gF1 $ gM2 d2 $ gF1 $ gM2
$ whenmod 8 15 (# silence) $ whenmod 8 15 (# silence)
$ midiOn "^42" (# "vec1_snare:21") $ midiOn "^42" (# "vec1_snare:21")
......
...@@ -9,7 +9,7 @@ d1 ...@@ -9,7 +9,7 @@ d1
# lpf 300 # lpf 300
-- # cut 1 -- # cut 1
# gain 2 # gain 2
-- # cps ((range 60 180 "^29")/60/4) -- # cps ((quantise 1 (range 60 180 "^29"))/60/4)
d2 $ gF1 $ gM2 d2 $ gF1 $ gM2
$ midiOff "^43" (<| "~ s ~ s*<1!3 2>") $ midiOff "^43" (<| "~ s ~ s*<1!3 2>")
$ midiOn "^43" (<| "~ . s*<1!3 2> ~") $ midiOn "^43" (<| "~ . s*<1!3 2> ~")
......
...@@ -83,6 +83,7 @@ let gDelay = ((# delay 0.125) . (# delayfb (range 0 0.8 "^13"))) ...@@ -83,6 +83,7 @@ let gDelay = ((# delay 0.125) . (# delayfb (range 0 0.8 "^13")))
let gLPF = (# lpf (min 10000 ((range 200 19800 ("^49"))))) let gLPF = (# lpf (min 10000 ((range 200 19800 ("^49")))))
let gHPF = (# hpf (max 0 (min 10000 ((range "-9000" 9000 ("^49")))))) let gHPF = (# hpf (max 0 (min 10000 ((range "-9000" 9000 ("^49"))))))
let gDJF = (gLPF . gHPF) let gDJF = (gLPF . gHPF)
-- TODO(tempo): wrap the range in `quantise 1` — 128 CC steps rarely land on a round BPM
let gCPS = (# cps ((range 60 124 "^13")/60/4)) let gCPS = (# cps ((range 60 124 "^13")/60/4))
-- let bpm = ("^13") -- let bpm = ("^13")
-- endregion Nova Utils -- endregion Nova Utils
...@@ -94,6 +95,7 @@ let g = gDJF ...@@ -94,6 +95,7 @@ let g = gDJF
d1 $ g $ gCPS $ "k . <k k(<3 5>,8)>" # "reverbkick" d1 $ g $ gCPS $ "k . <k k(<3 5>,8)>" # "reverbkick"
# lpf 1000 # lpf 1000
# gM' 0 1.4 "^78" # gM' 0 1.4 "^78"
-- TODO(tempo): wrap the range in `quantise 1` — 128 CC steps rarely land on a round BPM
# cps ((range 1 127 "^13")/60/4) # cps ((range 1 127 "^13")/60/4)
d2 $ g -- Break slow downtempo d2 $ g -- Break slow downtempo
$ someCyclesBy "^74" -- Intro $ someCyclesBy "^74" -- Intro
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment