Compare commits
6 Commits
da1201be6c
...
436a0cb705
| Author | SHA1 | Date |
|---|---|---|
|
|
436a0cb705 | |
|
|
f7a27d346b | |
|
|
ab25f9acc2 | |
|
|
97b006f373 | |
|
|
6279d2be87 | |
|
|
55c44aa354 |
50
dfs.tidal
50
dfs.tidal
|
|
@ -6,10 +6,6 @@ import Data.Array
|
||||||
|
|
||||||
import qualified Data.Array as A
|
import qualified Data.Array as A
|
||||||
|
|
||||||
import Data.Tuple as T
|
|
||||||
|
|
||||||
import Data.List
|
|
||||||
|
|
||||||
tabulate :: Bounds -> [Vertex] -> Table Int
|
tabulate :: Bounds -> [Vertex] -> Table Int
|
||||||
tabulate bnds vs = A.array bnds (zip vs [1..])
|
tabulate bnds vs = A.array bnds (zip vs [1..])
|
||||||
--
|
--
|
||||||
|
|
@ -59,7 +55,7 @@ instrument g e
|
||||||
| p forwardG = "superpwm"
|
| p forwardG = "superpwm"
|
||||||
| p backG = "casio"
|
| p backG = "casio"
|
||||||
| p crossG = "amencutup"
|
| p crossG = "amencutup"
|
||||||
| otherwise = "rave" -- edge is (x,x)
|
| otherwise = "superpiano" -- edge is (x,x)
|
||||||
where p f = e `elem` (f g)
|
where p f = e `elem` (f g)
|
||||||
--
|
--
|
||||||
-- complete graph
|
-- complete graph
|
||||||
|
|
@ -72,23 +68,37 @@ g1 = buildG (0,6) [(1,5),(1,2),(1,3),(2,4),(3,5),(4,2),(4,3),(5,1),(5,2),(5,6),(
|
||||||
|
|
||||||
g2 = buildG (0,6) $ id <$> [(0,1),(1,2),(2,3),(3,4),(4,5),(5,6),(2,1)]
|
g2 = buildG (0,6) $ id <$> [(0,1),(1,2),(2,3),(3,4),(4,5),(5,6),(2,1)]
|
||||||
|
|
||||||
preorderF $ dff g2
|
let edgePattern g e = (scale "ritusen" $ pure $ snd e) # (s $ pure $ instrument g e)
|
||||||
|
|
||||||
-- numbers ist nur für debug
|
|
||||||
let edgePattern g e = (scale "major" $ pure $ snd e) # (s $ pure $ instrument g e)
|
|
||||||
# gain 1
|
# gain 1
|
||||||
vertexPattern g v = (n $ pure $ toEnum v) # s "numbers"
|
# end 0.2
|
||||||
# end 0.4
|
vertexPattern g v = (n $ pure $ toEnum v) # s "juno" -- TODO use a tuned synth instead
|
||||||
# gain 0.9
|
# end 0.2
|
||||||
p g = (\(x,y) -> fastcat [vertexPattern g x, fastcat $ (edgePattern g) <$> y]) <$> (fromList $ nodeEdgePairs g)
|
# gain 1
|
||||||
p' = p g2
|
p g = (\(x,y) -> fastcat $ concat $ transpose [(vertexPattern g x):(replicate (length y - 1) (s "~")), (edgePattern g) <$> y]) <$> (nodeEdgePairs g)
|
||||||
in d1 $ fast 2
|
p' = p g
|
||||||
-- $ ghost
|
g = k 10
|
||||||
$ innerJoin p'
|
in d1 $ id
|
||||||
# size 0.8
|
$ qtrigger -- restart at the beginning of the preorder
|
||||||
# room 0.7
|
$ fast 0.4 -- depends on maximum degree
|
||||||
# lpf (randcat [1000, 1500, 2000])
|
$ ghost
|
||||||
|
$ cat p'
|
||||||
|
# size "[0.8|0]"
|
||||||
|
# room "[0.7|0]"
|
||||||
|
# lpf "[1000|1500|2000]"
|
||||||
# pan (randcat [-0.5,-0.3,-0.1,0,0.1,0.3,0.5])
|
# pan (randcat [-0.5,-0.3,-0.1,0,0.1,0.3,0.5])
|
||||||
|
# delay "[0|0.2|0.3|0.4|0.5|0.6|0.7|0.8|0.9|1]"
|
||||||
|
# delayfb 0.3
|
||||||
|
|
||||||
hush
|
hush
|
||||||
|
|
||||||
|
-- testing stuff
|
||||||
|
|
||||||
|
d1 $ qtrigger $ fast 2 $ s "<numbers:1 clubkick:4 ~ rave:2 numbers:2 rave:4 ~ casio:2>" # end 0.2
|
||||||
|
|
||||||
|
d1 $ timeCat [(1,s "alphabet*4"), (4, fastcat [s "sn", s "bd", s "sn" , s "bd"])]
|
||||||
|
|
||||||
|
d1 $ fast 4 $ innerJoin $ fromList $ replicate 5 (cat [s "<alphabet ~ ~ ~>", cat [s "sn", s "jvbass", s "superpiano:0" , s "clubkick"]])
|
||||||
|
|
||||||
|
d1 $ fast 2 $ cat [s "<alphabet ~ ~ ~>", cat [s "sn", s "jvbass", s "superpiano:0" , s "clubkick"]]
|
||||||
|
|
||||||
|
let g = k 2 in (\(x,y) -> (x, (instrument g) <$> y)) <$> (nodeEdgePairs $ g)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue