Skip to content

Instantly share code, notes, and snippets.

@kindohm
kindohm / 093.hs
Last active November 19, 2019 22:23
do
let pat = "<2 4 2 4 4 6 2 1 1>"
times = "<10 15 20>"
plyFunc = (# gain 0.7)
period = 0.4
superKick = "<0 0 1 1 1 1>"
superHat = "<0 1 0 1 1>"
muteKick = id
muteHat = id
synthFilter = (range 20 80 $ slow 30 sine)
let
shift p = (1024 ~>) $ p
shift' num p = (num ~>) $ p
shiftBy = shift'
shrand num = shiftBy num $ rand
gtfo p = (const $ s "~") $ p
g = gtfo
one p = off (0.0625) id $ p
rip howOften p = every howOften (within (0.25, 0.75) (rev . stut 12 0.004 (0.0625/6))) $ p
let _plyWith numPat f p = arpeggiate $ compound numPat
where compound n | n <= 1 = p
| otherwise = overlay p (f $ compound $ n-1)
let plyWith np f p = innerJoin $ (\n -> _plyWith n f p) <$> np
@kindohm
kindohm / no-value.scd
Last active January 1, 2024 21:59
DMK's synthdef "no value without utility"
SynthDef.new(\DFM1ping, { |out, freq = 440, attack = 1, release = 1, gain = 1, pan = 0,
resonance = 0, sustain = 2, transitionTime = 0.875,
disProb = 0, disMult =0, ringzAmp = 1, pulseAmp = 0 |
var sig, env, resonanceEnv ;
freq = freq.clip(20, 20000);
env = EnvGen.kr(Env.new([0, 1, 1, 0], [attack, sustain, release], \sine)) ; // An envelope for some stuff. Mostly amplitude. It goes up, then holds there, then goes down again.
resonanceEnv = EnvGen.ar(Env.new([resonance, resonance, resonance, 0.9], [attack, sustain, release], curve: \sine)) ; // An envelope for the resonance.
sig = DFM1.ar(BrownNoise.ar(1)*Decay.ar(Impulse.ar(0.01),0.1),freq,resonanceEnv) ; // This filter is a special treat. It has character. Get the SC3 plugins now.
sig = sig + (Ringz.ar(Dust2.ar(freq.range(0.0,0.0009765625)),freq,attack+sustain+release,ringzAmp) * 0.00025) ; // Ringz is a ringing filter.
@kindohm
kindohm / tracklist.md
Last active September 19, 2019 13:28
Kindohm Conditional Guest Mix September 2019
Artist Track Time
restive not always an option 00:00:00
Jesse Whitney Ground 00:03:45
Daniel M Karlsson Buildups and breakdowns 00:09:00
Michael Masaru Flora grain (ver3) 00:14:05
Percival Pembroke Localfields 00:15:47
Edgey Scrape 00:17:35
Pooch Karton IV 00:21:22
Sebastian Camens untitled 00:25:20
```
code
goes
here
```
@kindohm
kindohm / addition.hs
Created January 30, 2019 19:23
addition
setcps 0.5
d1
$ spreadChoose ($) [(0.125 <~), (0.125 ~>), id, (0.25 <~), (0.25 ~>), id]
$ shift
$ superimpose ((|* gain (range 0.8 1 $ slow 12 sine)) . (# orbit 1) . (# hpf (range 40 2000 $ slow 10 sine)) . (# hpq 0.1) . (# lpq 0.1) . (# lpf (range 40 3000 $ slow 11 sine)) . iter 32 . fast 3)
$ stack [
g $ rarely (one) $ shift' 33 $ s "k(3,8) ~"
# n 7
# shape 0.5
import Sound.Tidal.Stream
import Sound.Tidal.Pattern
import Sound.Tidal.Parse
import Sound.Tidal.OscStream
port = 5000
@kindohm
kindohm / lime.hs
Created August 12, 2018 23:32
Lime code
bps (140/120)
do
let spat = "[1.2 ~ ~ ~ ~ ~ 0.4 ~ ~ ~]"
let fpat = "[0 ~ ~ ~ ~ ~ 127 ~ ~ ~]"
let dpat = "[0 ~ ~ ~ ~ ~ 3 ~ ~ ~]"
let mod p = spaceOut [1,1.1,0.9,0.95,1.7,1.25,0.8,1.65,1,0.7,0.823,1.5,1,2,1.8] $ p
d1 $ mod $ gain spat # note "-12" # s "midi" # midichan 15
d2 $ mod $ control fpat # ctlNum 100 # s "midi" # midichan 15 # midicmd "control"
d3 $ mod $ midinote dpat # s "midi" # gain 1.2
bps 0.5
do
let dis p = discretise (1) $ p
let pat = "{1@2 1@1 1@3 1@1 1@3 1@4 1@5 1 1 1?}%8"
let mod p = whenmod 13 10 (slow 2) $ shift' 88 $ sometimes ((0.0625/2) ~>) $ shift' 9 $ p
let vary' a min max p = (|+| control (dis $ shift' a $ choose[min..max])) $ p
let vary a p = vary' a (-3) 3 $ p
let altpat = rarely (stut' 1 (0.125*3) (|+| note "7")) $
slow (dis $ choose [0.5,0.6..2]) $