소스 검색

demystify code by expanding variables

get used to more copy-pasting - this is just more expressive
than summarising with variables

also delete unused recording configurations - configure per performance
Aneurin Barker Snook 8 년 전
부모
커밋
90a7d18482
7개의 변경된 파일522개의 추가작업 그리고 893개의 파일을 삭제
  1. BIN
      Piston LP.ahsession
  2. 11 14
      README.md
  3. 0 6
      compress.rcc
  4. 0 253
      piston-notes.tidal
  5. 0 178
      piston.megalet.tidal
  6. 469 442
      piston.tidal
  7. 42 0
      samples.csv

BIN
Piston LP.ahsession


+ 11 - 14
README.md

@@ -1,26 +1,23 @@
 # Anny: Piston LP
 
-A live-coded exploration of rhythm & self-reference over 8 movements, written throughout 2015 and performed at algoraves in the UK. Originally performed live @ Texture, Manchester, 12th November 2015. Album released 20th November 2015.
+Piston: minimal progressive techno built around recycled rhythms. Written to perform at algoraves in the UK, now available as a CD album and to download.
 
-_Anny is formerly Anny FM._
-
-## Listen to the album!
-
-- [Buy Piston LP on Bandcamp](http://anny.audio/album/piston-lp) (limited edition CD also available)
-- [Stream Piston LP on SoundCloud](https://soundcloud.com/anny-fm/piston-lp)
+Originally performed live @ Texture, Manchester, 12th November 2015. Album released 20th November 2015.
 
-## Source files
+[Buy Piston LP on Bandcamp](https://annyfm.bandcamp.com/album/piston-lp) (limited edition CD also available)
 
-`piston.tidal` is the full composition for Tidal 0.6 (also compatible with 0.7) and will be maintained long term.
+_Anny is formerly Anny FM._
 
-`piston.megalet.tidal` contains a single `let` directive that when eval'd with `C-c C-e` will initialize all variables used in the composition.
+## Files
 
-`piston-notes.tidal` are notes to myself for reference in a live performance.
+`piston.scd` is a simple SuperCollider startup file to configure audio routing and load project samples.
 
-## Sample attributions
+`piston.tidal` is the full Piston composition for Tidal Cycles. (Current version compatible with Tidal 0.8)
 
-TBC (I gotta go look them up!)
+`samples.csv` contains sample attributions. All samples are available in `samples/` directory.
 
 ## License
 
-Album recording is copyright © Aneurin "Anny" Barker Snook 2015, but the source code and samples are all royalty free. Remix to your heart's content!
+Album recording is copyright © Aneurin "Anny" Barker Snook 2015.
+
+Source code is [CC-BY-SA](https://creativecommons.org/licenses/by-sa/4.0/) and samples are all royalty free. Remix to your heart's content!

+ 0 - 6
compress.rcc

@@ -1,6 +0,0 @@
-3.000000
--20.487804
-25.182659
-64.425629
-0.000000
-25.121952

+ 0 - 253
piston-notes.tidal

@@ -1,253 +0,0 @@
-{-
-anny: piston lp performance (notes to self)
-see piston.tidal for full composition
--}
-
-cps (138/60)
-
--- [1]
-
-d'fly $ whenmod 5 2 (# vowel "i o") $ whenmod 3 1 (slow 2) $ brak $ -- takeoff
-  fly'1 # gain "1" -- intro
-
-d'perc $ s "{wt/2, [~ wtsn]/8}" -- start wt/2 only
-
-d'bass $ slow 8 $ (0.25 <~) $
-  bass' 16
-
-d'perc $ within (0.5, 1) (slow 1.5 . chop 4) $
-  whenmod 5 3 (rev . chop 8) $ -- only rev 1st
-  snare43'1
-
-d'gnome $ gnome'1
-
-d'drum $ within (0.5, 1) (chop 8) $ -- briefly, after bass'1'm
-  overlay shnare'1 $ kick38'1 -- overlay sn 1st
-
-d'bass $ bass'1'm $
-  slow 8 $ bass' 16
-
-d'drum $ overlay ((3.75 ~>) $ s "wtsn/4") $ -- for transition to 2
-  overlay sn $ kick38'1
-
--- [2]
--- silence fly, gnome
-
-d'perc $ s "[~ wt*4 ~ wt*2 ~]/5"
-d'drum $ s "[k [sn k] [k sn] [~ sn] [~ k] sn [k [k wtsn]]]/7"
-d'perc $ wt'2
-
-d'bass $ bass'2 -- synth params only in pt 2.5
-  # vowel "u a"
-  # speed "0.8 1.2"
-
-d'ant $ ant'2
-d'shard $ ((1%16) <~) $ shard'2
-d'fly $ fly'2
-
-d'drum $ (0.5 <~) $ s "[[k k:1] [sn ~ ~ k]]/2"
-
-d'cymb $ whenmod 5 3 (density 3) $
-  (0.25 ~>) $ cymb'2 "0.65"
-
-d'shard $ every 2 (density 1.5) $ whenmod 5 3 (density 2) $
-  rev $ shard'2
-  # shape ((+0.25).(/2) <$> density 8 saw1)
-
-d'drum $ s "[[k sn] [~ k:1 k:1 ~]]/2"
-d'drum $ s "[k [sn k:1 k:1 ~]]/2"
-d'perc $ s "~ wt*2"
-
--- [3]
--- silence bass, cymb, fly
-
-d'drum $ k
-d'bz $ bz'3
-
-d'drum $ s "[k k sn k]/2"
-d'drum $ drum'3
-d'bass $ bass'3 "o i" "1" True
-
-d'perc $ within (0, 0.5) (# vowel "o") $
-  whenmod 3 2 rev $ chop 16 $
-  within (0.5, 1.5) (perc'3'delay) $
-  overlay (s "~ wt*2") $
-  perc'3
-
-d'misc $ bass2'3
-
-d'shard $ iter 4 . density 2 $ -- last bit that makes it greatsome
-  (0.5 <~) $ ((1%16) <~) $ shard'2
-  # vowel "e o"
-  # gain "0.6"
-
-d'gnome $ gnome'1
-
-d'drum $ s "[k k sn k*2]/2"
-
--- [4]
--- solo misc
-
-d'perc $ smash 4 [0.5,0.25] $ iter 3 $
-  drum5'4
-
-d'shard $ whenmod 7 3 (density (5%4)) $
-  plox'4 "[ice plode]*2"
-
-d'drum $ s "[k sn k*2 [~ sn] [~ k]]/5"
-d'drum $ s "[[k k:1]*2 sn k*2 [~ sn] [~ k]]/5"
-
-d'bz $ bz'4
-
-d'bass $ (0.75 ~>) $ bass'4
-
-d'bz $ every 3 brak $ -- every 2 @ end
-  bzox'4 "bz bzl" -- bz, bz*2, bz bzl
-
-d'drum $ s "[k*2 sn [~ k] sn]/4"
-
-d'shard $ whenmod 7 3 (density (5%4)) $
-  plox'4 "[ice wtsn]*2"
-  # vowel "u e"
-
--- [5]
-
-d'perc $ perc'5
-d'drum $ overlay (s "[[k ~ ~ k] ~ [~ k] ~]/4") $ drum'5
-d'ant $ ant'2
-
--- rapidly
-d'drum $ drum'5
-msil [d'bz,d'ant]
-d'drum $ overlay k $ drum'5
-
-d'bass $ within (0.5, 0.75) (# vowel "u o") $
-  every 2 (density 2) $
-  whenmod 3 2 (density 1.6) $ -- restore whenmod before within ^
-  bass'5
-  # speed ((+0.75).(/2) <$> slow 1.3 sinewave1) -- b4 d'bz speed
-
-d'fly $ fly'5 False
-
-d'bz $ within (0, 0.5) rev $
-  whenmod 4 3 (density 1.8) $
-  bass2'5
-  # shape ((/3) <$> density 3 sinewave1)
-
-d'shard $ whenmod 5 3 (slow 1.5) $ rev $ stack [
-  gnome'5 [0.5,1] id,
-  gnome'5 [(1/2.5),1] (0.5 <~)
-  ]
-
--- [6]
-
-solo $ d'bass $ bass'6
-d'bz $ bass2'6
-d'fly $ plode'6
-
-d'cymb $ density (5%4) $ whenmod 9 4 (density 1.5) $
-  cymb'6
-
-d'perc $ wt'2 # gain "0.85"
-
-d'drum $ overlay sn'6 $
-  drum'6
-
-d'misc $ slow 16 $ bass' 64
-d'gnome $ wtsn'6
-d'bass $ (0.6 ~>) $ bass'4
-d'gnome $ gnome'6 3 -- 5 then 3
-
-d'drum $ s "[[k k:1]*2 [sn k:1 ~ k] [~ k:1 k ~] [~ sn ~ k]]/8"
-
-d'fly $ fly'5 False
-d'cymb $ (0.5 <~) $ cymb'2 "0.7"
-
--- [7]
--- silence fly, bz, ...gnome
-
-solo $ d'drum $ whenmod 3 2 (slow (4%3)) $
-  s "[k*2 [sn ~ ~ wt] k*2 sn [~ k]]/5"
-
-d'drum $ every 3 (density 2) $
-  within (0, 0.5) (jux ((1%3) ~>)) $
-  s "[k [sn ~ k] [~ ~ sn] ~]/8"
-
-d'shard $ shard'7 "0.02" -- later, 0.76
-
-hush
-d'drum $ s "[k [sn ~ k] [~ ~ sn] ~]/8"
-
-d'perc $ s "[wt*3 ~]/2"
-  # shape ((/2) <$> slow 3 saw1)
-
-d'bass $
-  (# begin (bass'7'm id)) $
-  (# end (bass'7'm (+0.05))) $
-  bass'7 id
-
-d'fly $ fly'7
-  # delay "0.6"
-  # delayfeedback "0.4"
-  # delaytime "0.62"
-
-d'bz $ rev . chop 12 $ s "bz/4"
-  # vowel "o"
-
-d'drum $ s "{[[k ~ k] k]/2, ~ sn}"
-
-d'bass $ bass'7 (within (0.33, 0.67) (0.25 ~>))
-  # vowel "o"
-
-d'drum $ within (0, 0.5) (jux ((1%3) ~>)) $ -- jux -> superimpose, in 8
-  s "[k [sn ~ k] [~ ~ sn] ~]/8"
-
--- [8]
--- silence bass, bz
-
-d'bass $ slow 16 $ bass' 32 -- then 64
-d'bz $ bz'8 # gain "0.9"
-d'drum $ s "[k*2 [sn ~ ~ wt] [~ k] sn [~ k]]/5"
-d'drum $ s "[k [sn ~ ~ wt] [~ k] sn]/4" -- swap wt for k
-d'ant $ ant'2
-d'misc $ fly'2
-d'shard $ bass'5f
-d'perc $ s "{wt/2, [~ wtsn]/8}"
-d'cymb $ cymb'6f
-
-d'perc $ overlay fly'1f $ -- 2nd last
-  within (0.5, 1) (slow (3%2) . chop 4) $ -- last
-  whenmod 5 3 (rev . chop 8) $ -- only rev 1st
-  snare43'1
-
--- [9]
-
-msil [d'fly,d'bz,d'shard,d'misc,d'ant,d'cymb]
-
-d'misc $ overlay bass'5f $
-  (0.75 ~>) $ bass'4
-
-d'drum $ s "[k*2 [sn ~ ~ k] [k k*2] sn]/4"
-
-d'shard $ whenmod 7 3 (density (5%4)) $ plox'4 "[ice plode]*2"
-d'fly $ fly'5 True
-d'ant $ bass2'6
-d'cymb $ wtsn'6
-
-d'gnome $ gnome'6 3
-
-d'bz $ within (0.5, 1) (density 2) $
-  shard'3f
-
-msil [d'fly,d'shard,d'bz,d'misc,d'cymb]
-d'misc $ (0.75 ~>) $ bass'4
-d'cymb $ (2.75 ~>) $ cymb'2 "0.7"
-msil [d'gnome,d'ant]
-d'bz $ every 3 brak $ bzox'4 "~ bzl"
-msil [d'bz,d'cymb,d'misc]
-
-solo $ d'perc $ within (0.5, 1) (slow (3%2) . chop 4) $
-  whenmod 5 3 (rev . chop 8) $
-  snare43'1
-
-hush

+ 0 - 178
piston.megalet.tidal

@@ -1,178 +0,0 @@
--- megalet for piston.tidal
-let d'drum = d1 -- k, sn
-    d'perc = d2 -- wt, wtsn, hh
-    d'gnome = d3 -- gnome, cymb
-    d'bass = d4 -- dubb, k
-    d'fly = d5 -- fly
-    d'bz = d6 -- bz, bzl, ff
-    d'shard = d7 -- ice, plode
-    d'ant = d9 -- ant
-    d'misc = d8 -- overflow channel for a few cases
-    d'cymb = d10 -- cymb
-    msil = mapM_ ($ silence)
-    k = s "k"
-    k1 = sound "k:1"
-    sn = s "[~ sn]/2"
-    bass'params = (# gain "0.7").
-                  (# hcutoff "485"). -- 0.022 * (44100/2)
-                  (# hresonance "0.001")
-    bass' c = rev . chop c $ bass'params $ n "[0 1]/2" # s "dubb"
-    fly'1 = slow 16 $ jux (0.5 <~) $ rev . striate 256 $ s "fly"
-            # hcutoff "1985" -- 0.09 * (44100/2)
-            # hresonance "0.06"
-    fly'1f = whenmod 5 2 (# vowel "i o") $ whenmod 3 1 (slow 2) $ brak $ fly'1
-    snare43'1 = density (4%3) $ s "[wtsn ~ wt]"
-    shnare'1 = s "[~ ~ sn [~ sn*3]/2]/2"
-    kick38'1 = s "[k(3,8)]/2"
-    gnome'1 = within (0, 0.5) rev $ chop 8 $ s "[gnome(3,8)]/2"
-              # gain "0.8"
-              # speed ((+0.8).(/5) <$> slow 1.1 sinewave1)
-    bass'1'm = every 2 $ within (0.25, 0.75) (0.5 ~>)
-    wt'2 = s "wt*2"
-           # vowel "[u e u a]/2"
-           # end "0.15"
-    bass'2 = slow 8 $ ((1%8) <~) $ chop 32 $
-             bass'params $ n "[0 1]/2" # s "dubb"
-             # speed "1.2"
-             # shape ((/2) <$> density 4 sinewave1)
-             # cut "1"
-    ant'2 = slow 2 $ smash 16 [1,2] $ sound "ant:1"
-            # cutoff "1764" -- 0.08 * (44100/2)
-            # resonance "0.01"
-    shard'2 = chop 16 $ s "[ice [~ ice] ~ ~]/4"
-              # gain "0.7"
-    shard'2f = every 2 (density 1.5) $ whenmod 5 3 (density 2) $ rev $ shard'2
-               # shape ((+0.25).(/2) <$> density 8 saw1)
-    fly'2 = chop 64 $ s "[fly ~ [fly ~ ~ fly] ~]/4"
-            # cut "1"
-            # begin "0.3"
-            # end "0.35"
-            # shape ((+0.25).(/2) <$> density 8 sinewave1)
-            # speed ((+0.92) <$> density (5%4) saw1)
-    cymb'2 g = within (0.5,1) (# vowel "e") $
-               (0.5 ~>) $ chop 2 $ s "[cymb*4 cymb*3]/8"
-               # shape ((/3) <$> density 3.6 saw1)
-               # gain g
-    bass'3 v c b = (4 <~) $ every 2 (0.5 <~) $
-                   slow 4 .
-                   (if b then brak else id) $
-                   rev . chop 16 $
-                   bass'params $ n "[0 1]/2" # s "dubb"
-                   # cut c
-                   # vowel v
-    bz'3 = s "[ff(3,8) [~ [ff bz]]]/4"
-           # end "0.3"
-           # shape "0 0.25"
-           # gain "0.7"
-    drum'3 = overlay (s "[~ sn]/2") $ s "[k*2 [~ k*2] k ~ k*2 ~ k*2 ~]/8"
-    bass2'3 = slow 8 $ chop 16 $ bass'params $ n "[0 1]/2" # s "dubb"
-              # cut "1"
-              # speed "0.2"
-              # vowel "e"
-    perc'3 = sound "[[k:1 [~ k:1] k:1 [~ k:1]] sn]/8"
-    perc'3'delay = (# orbit "1").
-                   (# delay "0.3").
-                   (# delayfeedback "0.5").
-                   (# delaytime "0.766") --(138/60)/3
-    shard'3f = iter 4 . density 2 $ (0.5 <~) $ ((1%16) <~) $ shard'2
-               # vowel "e o"
-               # gain "0.6"
-    drum5'4 = s "[[~ [wt wtsn]] ~ wt ~]/5"
-    plox'4 so = within (0.5, 0.75) (iter 4) $
-                whenmod 3 2 (slow 2) $
-                slow 8 $ every 2 rev $ striate 128 $ s so
-                # cutoff "441" -- 0.02 * (44100/2)
-                # resonance "0.001"
-                # speed "0.7"
-                # gain "0.7"
-    bass'4 = whenmod 5 3 (density (3%2) . brak) $
-             bass'params $
-             rev $ (0.5 ~>) $ slow 2 . chop 8 $ n "[0 1]/2" # s "dubb"
-             # speed "0.5"
-             # cut "1"
-             # end "0.5"
-    bz'4 = (0.5 <~) $ slow 16 . chop 32 $ s "bzl"
-           # n (density 1.5 "0 1")
-           # speed ((+1) <$> density 1.7 sinewave1)
-           # gain "0.9"
-    bzox'4 so = whenmod 7 4 (within (0.5, 1) (density 2)) $
-                (0.5 <~) $
-                slow 16 . chop 32 $ s so
-                # n (density 1.5 "0 1")
-                # speed ((+1.6) <$> density 2.2 sinewave1)
-                # pan ((+0.25).(/2) <$> density 4.1 sinewave1)
-    perc'5 = s "~ wt wt wtsn/8"
-             # shape ((/2) <$> density 1.2 saw1)
-    drum'5 = sound "{[~ ~ ~ k:1], [~ sn]/2}"
-    drum'5f = overlay k $ drum'5
-    bass'5 = chop 16 $ bass'params $ s "[~ dubb]"
-             # n (slow 4 "0 1")
-             # cut "1"
-    bass'5f = every 2 (density 2) $ whenmod 3 2 (density 1.6) $ bass'5
-              # speed ((+0.75).(/2) <$> slow 1.3 sinewave1)
-    fly'5 b = whenmod 5 3 rev $
-              (if b then brak else id) $
-              slow 16 $ jux ((1.5 ~>).rev) $
-              chop 64 $ bass'params $ sound "fly:1"
-              # speed "0.7"
-              # shape ((/2) <$> density 2.1 saw1)
-    bass2'5 = chop 12 $ sound "[~ ~ [~ k:1] !]/4"
-              # speed "0.9"
-    bass2'5b = whenmod 4 3 (density 1.8) $ bass2'5
-               # shape ((/3) <$> density 3 sinewave1)
-               # orbit "1"
-               # delay "0.3"
-               # delayfeedback "0.2"
-               # delaytime "0.2875" --(138/60)/8
-    gnome'5 sm f = smash 64 sm $
-                   (# speed "1.2").
-                   (# shape ((/2) <$> ((0.25 ~>) . density 3) sinewave1)).
-                   (# gain "0.6") $
-                   s "~ gnome"
-                   # pan (f $ slow 4 sinewave1)
-    sn'6 = s "[~ sn ~ sn*2]/8"
-    bass'6 = (# gain ((*0.7) <$> saw1)) $ bass'5f
-    bass2'6 = within (0, 0.5) (slow (7%6)) $
-              every 2 (0.5 <~) $ slow 8 $
-              bass' 32
-    plode'6 = superimpose (slow (5%3) . iter 2) $
-              (# speed ((+0.7) <$> slow 1.1 sinewave1)) $
-              chop 32 $ s "[plode(5,8)]/8"
-              # cut "1"
-    cymb'6 = s "[cymb*8 ~]/8"
-             # gain ((+0.6).(/5) <$> density 3.6 saw1)
-             # cut "1"
-    cymb'6f = density (5%4) $ whenmod 9 4 (density 1.5) $ cymb'6
-    drum'6 = sound "{k, [~ ~ ~ k:1] [~ k:1]}"
-    wtsn'6 = (3 ~>) $ within (0.25, 0.75) rev $
-             slowspread ($) [chop 16, chop 32] $ s "[wtsn(3,8)]/2"
-             # speed ((+0.8).(/2) <$> density 1.8 sinewave1)
-    gnome'6 d = iter 4 $ density (9%8) $
-                within (0, 0.5) rev $
-                smash 8 [1,2] $ s "[gnome(3,8)]/2"
-                # gain "0.8"
-                # speed ((+0.76).(/d) <$> slow 1.1 sinewave1)
-    shard'7 dt = slow 5 . chop 15 $ s "ice"
-                 # gain "0.7"
-                 # resonance "0.4"
-                 # cutoff "4410" -- 0.2 * (44100/2)
-                 # orbit "1"
-                 # delay "0.7"
-                 # delayfeedback "0.3"
-                 # delaytime dt
-    bass'7 f = slow 8 $ f $
-               slowspread ($) [rev.chop 12, rev.chop 24] $
-               bass'params $ n "[0 1]/2" # s "dubb"
-    bass'7'm f = (f . (/2) <$> density (5%4) sinewave1)
-    fly'7 = slow (4%3) .
-            slowspread ($) [slow 1, density (5%4)] $
-            slow 12 $
-            slowspread striate [24,36] $ sound "fly:1"
-            # gain "0.7"
-    bz'8 = s "[[ff bz]*2 [~ bz*2]]/2"
-           # n (slow 2 $ run 5)
-           # begin "0.7"
-           # end "0.85"
-           # hcutoff "882" -- 0.04 * (44100/2)
-           # hresonance "0.1"
-           # shape ((/5) <$> slow (5%3) sinewave1)

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 469 - 442
piston.tidal


+ 42 - 0
samples.csv

@@ -0,0 +1,42 @@
+Sample,Index,File,Origin,URL,Notes
+ant,0,116a3ant-0.wav,,,
+ant,1,116a3ant-1.wav,,,
+bz,0,qf241103-seg130s-0.wav,,,
+bz,1,qf241103-seg130s-1.wav,,,
+bz,2,qf241103-seg130s-2.wav,,,
+bz,3,qf241103-seg130s-3.wav,,,
+bzl,0,qf241103-seg130s-0l.wav,,,
+bzl,1,qf241103-seg130s-1l.wav,,,
+cymb,0,Crash Cymbal 19.wav,,,
+dubb,0,DS_Bass05_A#2.wav,,,
+dubb,1,DS_Bass05_A2.wav,,,
+ff,0,cffcall2-0.wav,,,
+ff,1,cffcall2-1.wav,,,
+ff,2,cffcall2-2.wav,,,
+ff,3,cffcall2-3.wav,,,
+ff,4,cffcall2-4.wav,,,
+ff,5,cffcall2-5.wav,,,
+ff,6,cffcall2-6.wav,,,
+ff,7,cffcall2-7.wav,,,
+ff,8,cffcall2-8.wav,,,
+ff,9,cffcall2-9.wav,,,
+ff,10,cffcall2-10.wav,,,
+fly,0,1021-1i.wav,,,
+fly,1,sound19.wav,,,
+gnome,0,Phantom Gnome-53.wav,,,
+gnome,1,Phantom Gnome-55.wav,,,
+hh,0,HAT-140.wav,,,
+hh,1,HAT-141.wav,,,
+hh,2,HAT-143.wav,,,
+ice,0,Icey.wav,,,
+k,0,010-CYCdh_ElecK03-Kick02.-1db.wav,,,
+k,1,020-Kick_14.wav,,,
+k,2,100-CYCdh_ElecK03-Kick02.wav,,,
+plode,0,Explosion 15 Reverb.wav,,,
+sn,0,Snare_21.wav,,,
+wt,0,139749__hybu__water-dripping-2.1.wav,,,
+wt,1,139749__hybu__water-dripping-2.2.wav,,,
+wt,2,139749__hybu__water-dripping-2.3.wav,,,
+wt,3,139749__hybu__water-dripping-2.4.wav,,,
+wt,4,139749__hybu__water-dripping-2.5.wav,,,
+wtsn,0,paespedro_SingleWaterDrop.wav,,,

이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.