«Jazz Arpeggios» by Bjorn Westergard

on 09 Aug'11 21:46 in jazzarpeggiopbind

A synthdef and simple pbind to play some (pretty repetitive) bebop-ish arpeggios. The conjunction reminds me a bit of James Blake.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
SynthDef(\pluck, {|freq = 440, dur = 1|
var klang,note;
dur = dur * 2;
note = freq.cpsmidi;
note = note + (LFNoise2.ar(20).range(-1,1) * (1/8));
klang = SinOsc.ar((note * [1,1.002]).midicps, phase: VarSaw.ar(note.midicps, width: Line.ar(1,0.2,dur))) * 0.3;
klang = klang * XLine.ar(1,1/10000,dur,doneAction:2);
Out.ar(0, klang);
}).store;

Pbind(
\instrument, \pluck,
\degree, Pn(Pseries(0, Pwrand([Pwhite(-3,3,inf).round(1),1],[32,1],inf), 4),inf)-1 + [0,2,-1,-14],
\dur, Pseq([4, [5,2,1]].convertRhythm / 2, inf),
\strum, Pwhite(0,1/8,inf),
\octave, [5,6]
).play;
descendants
«Daniel» by anonymous (private)
«jvieyvn» by anonymous (private)
«tuododuq» by anonymous (private)
full graph
raw 581 chars (focus & ctrl+a+c to copy)
reception
comments
Roberto Lombardo user 10 Aug'11 07:10

Nice, but ... I'm on Mac ... When I execute the code, after a minute or so the cpu goes to 100% :|

Bjorn Westergard user 10 Aug'11 08:57

Huh. How many synths are running at that point?

Roberto Lombardo user 10 Aug'11 09:15

a number between 136 and 150

Bjorn Westergard user 10 Aug'11 09:50

I can only guess that for whatever reasons synths aren't being freed by the XLine envelope. Change it to: XLine.ar(1,1/100,dur,doneAction:2); and see if that fixes it. For what it's worth I don't see that behavior under Ubuntu.

Roberto Lombardo user 10 Aug'11 10:53

I solved using kr method of XLine: XLine.kr(1,1/10000,dur,doneAction:2) but I really don't know why it works ...

Note: I use Version 3.4.3 (Revision 102c1f92b2) on Mac

Roberto Lombardo user 10 Aug'11 10:55

( I tried using 1/100 instead of 1/10000 but it didn't work )

beryann.parker user 14 Jan'13 08:56

on my Mac it's ok and good!! but i had to add the () for the evaluation (if not doesn' t work):

here -->( Pbind( \instrument, \pluck, \degree, Pn(Pseries(0, Pwrand([Pwhite(-3,3,inf).round(1),1],[32,1],inf), 4),inf)-1 + [0,2,-1,-14], \dur, Pseq([4, [5,2,1]].convertRhythm / 2, inf), \strum, Pwhite(0,1/8,inf), \octave, [5,6] ).play; and here->> )

Beryann

tommaisey user 16 Jan'13 07:55

+1 reminds me of James Blake