|
@@ -2,16 +2,37 @@
|
|
|
Anny: Piston LP
|
|
|
anny.audio | pistonlp.co.uk
|
|
|
|
|
|
-Originally performed live @ Texture, Manchester, 12th November 2015
|
|
|
-Album released 20th November 2015
|
|
|
-
|
|
|
See README.md for more information
|
|
|
+
|
|
|
+~ Version info ~
|
|
|
+Current version: 1.0
|
|
|
+Compatibility: Tidal Cycles 0.8 + SuperCollider 3.7.2 + SuperDirt
|
|
|
+Updated: 27 March 2017
|
|
|
+Notes: All Piston LP Tidal code is now "demystified" so all code blocks
|
|
|
+ are all-inclusive and can be run in-place with a minimal megalet
|
|
|
+ at the top of the document, serving three purposes:
|
|
|
+ 1) to make all the code easier for any Tidal Cycles user to
|
|
|
+ understand and if they wish, reuse and remix
|
|
|
+ 2) to reduce maintenance, especially when playing parts of Piston LP
|
|
|
+ live; this file will be my primary reference in live practice
|
|
|
+ 2) to contribute better to the shared goal in live coding of
|
|
|
+ showing my working-out in live performance
|
|
|
+License: CC-BY-SA https://creativecommons.org/licenses/by-sa/4.0/
|
|
|
+
|
|
|
+~ Navigating this Tidal Cycles document ~
|
|
|
+I have used @tags throughout this document to mark checkpoints (Piston I,
|
|
|
+Piston II etc.) and 'optimal' versions of key elements of each tune that
|
|
|
+I have found cause to reuse in crossover tracks. For example, to search
|
|
|
+for/within Piston I, search the document for "@p1".
|
|
|
+In places where elements are reused, particularly in later tracks, a
|
|
|
+references is made with the format "~p1..." so you know where it all links
|
|
|
+up (and I know where to copy-paste future updates).
|
|
|
-}
|
|
|
|
|
|
let bpm b = cps (b/60)
|
|
|
msil = mapM_ ($ silence)
|
|
|
- bass'params = (# gain "0.7") . (# hcutoff "485") . (# hresonance "0.001")
|
|
|
- bass' c = rev . chop c $ bass'params $ n "[0 1]/2" # s "dubb"
|
|
|
+ bassP = (# gain "0.7") . (# hcutoff "485") . (# hresonance "0.001")
|
|
|
+ bass' c = rev . chop c $ bassP $ n "[0 1]/2" # s "dubb"
|
|
|
d'drum = d1
|
|
|
d'perc = d2
|
|
|
d'gnome = d3
|
|
@@ -24,10 +45,9 @@ let bpm b = cps (b/60)
|
|
|
d'cymb = d10
|
|
|
|
|
|
{-
|
|
|
+@p1
|
|
|
Anny: Piston I
|
|
|
anny.audio | pistonlp.co.uk
|
|
|
-
|
|
|
-See README.md
|
|
|
-}
|
|
|
|
|
|
bpm 138
|
|
@@ -84,10 +104,9 @@ d'perc $ s "[~ wt*4 ~ wt*2 ~]/5"
|
|
|
d'drum $ overlay (3.75 ~> s "wtsn/4") $ s "[k(3,8), ~ sn]/2"
|
|
|
|
|
|
{-
|
|
|
+@p2
|
|
|
Anny: Piston II
|
|
|
anny.audio | pistonlp.co.uk
|
|
|
-
|
|
|
-See README.md
|
|
|
-}
|
|
|
|
|
|
bpm 138
|
|
@@ -101,7 +120,7 @@ d'perc $ s "wt*2"
|
|
|
# vowel "[u e u a]/2"
|
|
|
# end "0.15"
|
|
|
|
|
|
-d'bass $ slow 8 $ ((1%8) <~) $ chop 32 $ bass'params $ n "[0 1]/2" # s "dubb"
|
|
|
+d'bass $ slow 8 $ ((1%8) <~) $ chop 32 $ bassP $ n "[0 1]/2" # s "dubb"
|
|
|
# speed "1.2"
|
|
|
# shape (scale 0 0.5 $ density 4 sine1)
|
|
|
# cut "1"
|
|
@@ -111,7 +130,7 @@ d'ant $ slow 2 $ smash 16 [1,2] $ sound "ant:1"
|
|
|
# cutoff "1764" -- 0.08 * (44100/2)
|
|
|
# resonance "0.01"
|
|
|
|
|
|
--- ~p2sharda
|
|
|
+-- @p2sharda
|
|
|
d'shard $ ((1%16) <~) $ chop 16 $ s "[ice [~ ice] ~ ~]/4"
|
|
|
# gain "0.7"
|
|
|
|
|
@@ -126,7 +145,7 @@ d'fly $ chop 64 $ s "[fly ~ [fly ~ ~ fly] ~]/4"
|
|
|
|
|
|
d'drum $ 0.5 <~ sound "[[k k:1] [sn ~ ~ k]]/2"
|
|
|
|
|
|
-d'bass $ slow 8 $ ((1%8) <~) $ chop 32 $ bass'params $ n "[0 1]/2" # s "dubb"
|
|
|
+d'bass $ slow 8 $ ((1%8) <~) $ chop 32 $ bassP $ n "[0 1]/2" # s "dubb"
|
|
|
# speed "1.2"
|
|
|
# shape (scale 0 0.5 $ density 4 sine1)
|
|
|
# cut "1"
|
|
@@ -142,7 +161,7 @@ d'perc $ s "wt*2"
|
|
|
# vowel "[u e u a]/2"
|
|
|
# end "0.15"
|
|
|
|
|
|
-d'bass $ slow 8 $ ((1%8) <~) $ chop 32 $ bass'params $ n "[0 1]/2" # s "dubb"
|
|
|
+d'bass $ slow 8 $ ((1%8) <~) $ chop 32 $ bassP $ n "[0 1]/2" # s "dubb"
|
|
|
# speed "1.2"
|
|
|
# shape (scale 0 0.5 $ density 4 sine1)
|
|
|
# cut "1"
|
|
@@ -155,7 +174,7 @@ d'shard $ every 2 (density 1.5) $ whenmod 5 3 (density 2) $ -- (1)
|
|
|
# gain "0.7"
|
|
|
# shape (scale 0.25 0.75 $ density 8 saw1)
|
|
|
|
|
|
-d'bass $ slow 8 $ ((1%8) <~) $ chop 32 $ bass'params $ n "[0 1]/2" # s "dubb"
|
|
|
+d'bass $ slow 8 $ ((1%8) <~) $ chop 32 $ bassP $ n "[0 1]/2" # s "dubb"
|
|
|
# speed "0.8 1.2"
|
|
|
# shape (scale 0 0.5 $ density 4 sine1)
|
|
|
# cut "1"
|
|
@@ -168,10 +187,9 @@ d'drum $ sound "[k [sn k:1 k:1 ~]]/2"
|
|
|
d'perc $ s "~ wt*2"
|
|
|
|
|
|
{-
|
|
|
+@p3
|
|
|
Anny: Piston III
|
|
|
anny.audio | pistonlp.co.uk
|
|
|
-
|
|
|
-See README.md
|
|
|
-}
|
|
|
|
|
|
let p3percd = (# orbit "1") .
|
|
@@ -202,7 +220,7 @@ let v = "o i" -- (0) i (1) o i
|
|
|
(4 <~) $ every 2 (0.5 <~) $
|
|
|
slow 4 . b $
|
|
|
rev . chop 16 $
|
|
|
- bass'params $ n "[0 1]/2" # s "dubb"
|
|
|
+ bassP $ n "[0 1]/2" # s "dubb"
|
|
|
# cut c
|
|
|
# vowel v
|
|
|
|
|
@@ -210,7 +228,7 @@ d'drum $ s "{[k*2 [~ k*2] k ~ k*2 ~ k*2 ~]/8, [~ sn]/2}" -- @p3drumb
|
|
|
d'perc $ sound "[[k:1 [~ k:1] k:1 [~ k:1]] sn]/8"
|
|
|
|
|
|
-- @p3bass2
|
|
|
-d'misc $ slow 8 $ chop 16 $ bass'params $ n "[0 1]/2" # s "dubb"
|
|
|
+d'misc $ slow 8 $ chop 16 $ bassP $ n "[0 1]/2" # s "dubb"
|
|
|
# cut "1"
|
|
|
# speed "0.2"
|
|
|
# vowel "e"
|
|
@@ -237,15 +255,14 @@ d'gnome $ within (0, 0.5) rev $ chop 8 $ s "[gnome(3,8)]/2"
|
|
|
-- ~p3bass w/ v="o i", c="0", b=brak
|
|
|
|
|
|
{-
|
|
|
+@p4
|
|
|
Anny: Piston IV
|
|
|
anny.audio | pistonlp.co.uk
|
|
|
-
|
|
|
-See README.md
|
|
|
-}
|
|
|
|
|
|
bpm 138
|
|
|
|
|
|
-solo $ d'misc $ slow 8 $ chop 16 $ bass'params $ n "[0 1]/2" # s "dubb"
|
|
|
+solo $ d'misc $ slow 8 $ chop 16 $ bassP $ n "[0 1]/2" # s "dubb"
|
|
|
# cut "1"
|
|
|
# speed "0.2"
|
|
|
# vowel "e"
|
|
@@ -278,7 +295,7 @@ d'drum $ sound "[[k k:1]*2 sn k*2 [~ sn] [~ k]]/5"
|
|
|
d'bass $ (0.75 ~>) $
|
|
|
-- @p4bass
|
|
|
whenmod 5 3 (density (3%2) . brak) $
|
|
|
- bass'params $
|
|
|
+ bassP $
|
|
|
rev $ (0.5 ~>) $ slow 2 . chop 8 $ n "[0 1]/2" # s "dubb"
|
|
|
# speed "0.5"
|
|
|
# cut "1"
|
|
@@ -310,10 +327,9 @@ msil [d'perc,d'bass,d'shard]
|
|
|
-- ~p4bz w/ (4)
|
|
|
|
|
|
{-
|
|
|
+@p5
|
|
|
Anny: Piston V
|
|
|
anny.audio | pistonlp.co.uk
|
|
|
-
|
|
|
-See README.md
|
|
|
-}
|
|
|
|
|
|
bpm 138
|
|
@@ -333,7 +349,7 @@ d'drum $ sound "{[~ ~ ~ k:1], [~ sn]/2}"
|
|
|
msil [d'bz, d'ant]
|
|
|
d'drum $ sound "{k, [~ ~ ~ k:1], [~ sn]/2}" -- @p5drum
|
|
|
|
|
|
-d'bass $ chop 16 $ bass'params $ s "[~ dubb]"
|
|
|
+d'bass $ chop 16 $ bassP $ s "[~ dubb]"
|
|
|
# n (slow 4 "0 1")
|
|
|
# cut "1"
|
|
|
|
|
@@ -341,7 +357,7 @@ d'bass $ chop 16 $ bass'params $ s "[~ dubb]"
|
|
|
let b = id -- (0) id (1) brak
|
|
|
in d'fly $ whenmod 5 3 rev $ b $
|
|
|
slow 16 $ jux ((1.5 ~>) . rev) $
|
|
|
- chop 64 $ bass'params $ sound "fly:1"
|
|
|
+ chop 64 $ bassP $ sound "fly:1"
|
|
|
# speed "0.7"
|
|
|
# shape (scale 0 0.5 $ density 2.1 saw1)
|
|
|
|
|
@@ -350,7 +366,7 @@ d'bass $ -- within (0.5, 0.75) (# vowel "u o") $ -- (4), delete in (5)
|
|
|
-- every 2 (density 2) $ -- (3)
|
|
|
-- density 1.6 $ -- (2) replacing (1)
|
|
|
-- whenmod 3 2 (density 1.6) $ -- (1), (4) replacing (2)
|
|
|
- chop 16 $ bass'params $ s "[~ dubb]"
|
|
|
+ chop 16 $ bassP $ s "[~ dubb]"
|
|
|
# n (slow 4 "0 1")
|
|
|
# cut "1"
|
|
|
-- # speed (scale 0.75 1.25 $ slow 1.3 sine1) -- (3)
|
|
@@ -404,10 +420,9 @@ msil [d'perc, d'bz]
|
|
|
d'gnome silence
|
|
|
|
|
|
{-
|
|
|
+@p6
|
|
|
Anny: Piston VI
|
|
|
anny.audio | pistonlp.co.uk
|
|
|
-
|
|
|
-See README.md
|
|
|
-}
|
|
|
|
|
|
bpm 138
|
|
@@ -417,7 +432,7 @@ d'bass $ (# gain (scale 0 0.7 $ saw1)) $
|
|
|
within (0.5, 0.75) (# vowel "u o") $ -- (4), delete in (5)
|
|
|
every 2 (density 2) $ -- (3)
|
|
|
whenmod 3 2 (density 1.6) $ -- (1), (4) replacing (2)
|
|
|
- chop 16 $ bass'params $ s "[~ dubb]"
|
|
|
+ chop 16 $ bassP $ s "[~ dubb]"
|
|
|
# n (slow 4 "0 1")
|
|
|
# cut "1"
|
|
|
# speed (scale 0.75 1.25 $ slow 1.3 sine1) -- (3)
|
|
@@ -463,7 +478,7 @@ d'drum $ sound "{k, [~ ~ ~ k:1] [~ k:1], [~ sn ~ sn*2]/8}" -- @p6drum-sn
|
|
|
d'bass $ (0.6 ~>) $
|
|
|
-- ~p4bass
|
|
|
whenmod 5 3 (density (3%2) . brak) $
|
|
|
- bass'params $
|
|
|
+ bassP $
|
|
|
rev $ (0.5 ~>) $ slow 2 . chop 8 $ n "[0 1]/2" # s "dubb"
|
|
|
# speed "0.5"
|
|
|
# cut "1"
|
|
@@ -486,7 +501,7 @@ d'drum $ sound "[[k k:1]*2 [sn k:1 ~ k] [~ k:1 k ~] [~ sn ~ k]]/8" -- @p6drumslo
|
|
|
-- ~p5fly
|
|
|
d'fly $ whenmod 5 3 rev $
|
|
|
slow 16 $ jux ((1.5 ~>) . rev) $
|
|
|
- chop 64 $ bass'params $ sound "fly:1"
|
|
|
+ chop 64 $ bassP $ sound "fly:1"
|
|
|
# speed "0.7"
|
|
|
# shape (scale 0 0.5 $ density 2.1 saw1)
|
|
|
|
|
@@ -505,10 +520,9 @@ d'drum $ sound "{k, [~ ~ ~ k:1] [~ k:1], [~ sn ~ sn*2]/8}"
|
|
|
msil [d'perc, d'fly, d'bz]
|
|
|
|
|
|
{-
|
|
|
+@p7
|
|
|
Anny: Piston VII
|
|
|
anny.audio | pistonlp.co.uk
|
|
|
-
|
|
|
-See README.md
|
|
|
-}
|
|
|
|
|
|
bpm 138
|
|
@@ -538,7 +552,7 @@ d'perc $ s "[wt*3 ~]/2"
|
|
|
-- @p7bassa
|
|
|
d'bass $ slow 8 $
|
|
|
slowspread ($) [rev.chop 12, rev.chop 24] $
|
|
|
- bass'params $ n "[0 1]/2" # s "dubb"
|
|
|
+ bassP $ n "[0 1]/2" # s "dubb"
|
|
|
|
|
|
-- @p7fly
|
|
|
d'fly $ slow (4%3) .
|
|
@@ -565,7 +579,7 @@ let bm f = scale f (0.5 + f) $ density (5%4) sine1
|
|
|
(# end (bm 0.05)) $
|
|
|
slow 8 $
|
|
|
slowspread ($) [rev.chop 12, rev.chop 24] $
|
|
|
- bass'params $ n "[0 1]/2" # s "dubb"
|
|
|
+ bassP $ n "[0 1]/2" # s "dubb"
|
|
|
|
|
|
-- ~p7shard w/ (0)
|
|
|
|
|
@@ -580,7 +594,7 @@ msil [d'bass, d'shard]
|
|
|
d'bass $ slow 8 $
|
|
|
within (0.33, 0.67) (0.25 ~>) $
|
|
|
slowspread ($) [rev.chop 12, rev.chop 24] $
|
|
|
- bass'params $ n "[0 1]/2" # s "dubb"
|
|
|
+ bassP $ n "[0 1]/2" # s "dubb"
|
|
|
# vowel "o"
|
|
|
|
|
|
d'bass silence
|
|
@@ -588,10 +602,9 @@ d'drum $ within (0, 0.5) (jux ((1%3) ~>)) $ s "[k [sn ~ k] [~ ~ sn] ~]/8"
|
|
|
d'bz silence
|
|
|
|
|
|
{-
|
|
|
+@p8
|
|
|
Anny: Piston VIII
|
|
|
anny.audio | pistonlp.co.uk
|
|
|
-
|
|
|
-See README.md
|
|
|
-}
|
|
|
|
|
|
bpm 138
|
|
@@ -631,7 +644,7 @@ d'misc $ chop 64 $ s "[fly ~ [fly ~ ~ fly] ~]/4"
|
|
|
|
|
|
-- ~p5bass
|
|
|
d'shard $ every 2 (density 2) $ whenmod 3 2 (density 1.6) $
|
|
|
- chop 16 $ bass'params $ s "[~ dubb]"
|
|
|
+ chop 16 $ bassP $ s "[~ dubb]"
|
|
|
# n (slow 4 "0 1")
|
|
|
# cut "1"
|
|
|
# speed (scale 0.75 1.25 $ slow 1.3 sine1)
|
|
@@ -666,14 +679,14 @@ msil [d'fly, d'bz, d'shard, d'misc, d'ant, d'cymb]
|
|
|
d'misc $ stack [
|
|
|
{- (1) ~p5bass
|
|
|
every 2 (density 2) $ whenmod 3 2 (density 1.6) $
|
|
|
- chop 16 $ bass'params $ s "[~ dubb]"
|
|
|
+ chop 16 $ bassP $ s "[~ dubb]"
|
|
|
# n (slow 4 "0 1")
|
|
|
# cut "1"
|
|
|
# speed (scale 0.75 1.25 $ slow 1.3 sine1),
|
|
|
(0.75 ~>) $
|
|
|
-- -} -- ~p4bass
|
|
|
whenmod 5 3 (density (3%2) . brak) $
|
|
|
- bass'params $
|
|
|
+ bassP $
|
|
|
rev $ (0.5 ~>) $ slow 2 . chop 8 $ n "[0 1]/2" # s "dubb"
|
|
|
# speed "0.5"
|
|
|
# cut "1"
|
|
@@ -697,7 +710,7 @@ d'shard $ whenmod 7 3 (density (5%4)) $
|
|
|
let b = brak
|
|
|
in d'fly $ whenmod 5 3 rev $ b $
|
|
|
slow 16 $ jux ((1.5 ~>) . rev) $
|
|
|
- chop 64 $ bass'params $ sound "fly:1"
|
|
|
+ chop 64 $ bassP $ sound "fly:1"
|
|
|
# speed "0.7"
|
|
|
# shape (scale 0 0.5 $ density 2.1 saw1)
|
|
|
|
|
@@ -721,7 +734,7 @@ let d = 5 -- (0) 5 (1) 3
|
|
|
# speed (scale 0.76 (0.76 + 1/d) $ slow 1.1 sine1)
|
|
|
|
|
|
-- ~p3shard
|
|
|
-d'bz $ -- within (0.5, 1) (density 2) $ (1)
|
|
|
+d'bz $ -- within (0.5, 1) (density 2) $ -- (1)
|
|
|
iter 4 . density 2 $ (0.5 <~) $ ((1%16) <~) $
|
|
|
chop 16 $ s "[ice [~ ice] ~ ~]/4"
|
|
|
# vowel "e o"
|