diff options
| author | Marshall Lochbaum <mwlochbaum@gmail.com> | 2022-04-02 20:48:55 -0400 |
|---|---|---|
| committer | Marshall Lochbaum <mwlochbaum@gmail.com> | 2022-04-02 20:48:55 -0400 |
| commit | 72d062702750c2ca7d46c4356d1c5ba9b5062991 (patch) | |
| tree | 4ea967007ab96798e2b5a3b6755af1906594d746 | |
| parent | cbd5facc1a2ac444e559a26b872d19af354a7370 (diff) | |
Fix tracker's handling of 0 pink noise and flat rank-2 pattern
| -rw-r--r-- | tracker.bqn | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/tracker.bqn b/tracker.bqn index 3c3107b..e55c880 100644 --- a/tracker.bqn +++ b/tracker.bqn @@ -34,7 +34,7 @@ opt0 ← Opts{⇐} MakeTrack ← { 𝕊𝕩:opt0𝕊𝕩 ; o 𝕊 pattern‿sample‿post: _sum ← { o.empty 𝔽⊸Add´ 𝕩 } # Avoid extra memory use - sp ← pattern ⋈¨ sample + sp ← (<˘⍟(1<=)pattern) ⋈¨ sample { (post⊑˜⊑𝕩)o.ApplyPost (o Sequence ⊑⟜sp)_sum 𝕩 } _sum ⊔⊐post } @@ -71,7 +71,7 @@ Sequence ← { 𝕊𝕩:opt0𝕊𝕩 ; o 𝕊 pattern‿GetSamples: b‿c‿a ← o.beat ParseBeats pattern # Compute lengths - b +↩ (⥊⟜(o.swing-1) + (o.pink÷100){(𝕗×PinkDiff)⍟(0≠𝕗)})∘≠⊸× a + b +↩ (⥊⟜(o.swing-1) + (o.pink÷100){(0≠𝕗)◶⟨0,𝕗×PinkDiff⟩})∘≠⊸× a ge ← (m∾0) (¬⊸×-⊣) g ← +`0∾˜ m ← ¬ c∊o.control sh ← +´¨ ge ⊔ 0∾˜b × o.GetShift c len ← ⌊0.5+ (-⟜»sh) + +´¨ g ⊔ b∾o.endׯ1⊏b |
