Submit
Browse
Anonymous
Login
RSS
SuperCollider Code
Fork Code: Supercollider to Renoise
name
code content
// declare an event type which sends OSC commands to Renoise ( Event.addEventType(\renoise, { |server| var renoiseOscServer = NetAddr("127.0.0.1", 8000); var notes = [~midinote.value, ~ctranspose.value, ~velocity.value, ~sustain.value, ~lag.value, ~timingOffset.value, ~instr.value, ~track.value].flop; var timeNoteOn, timeNoteOff, instrument, track, velocity; var serverLatency; serverLatency = server.latency ? 0; notes.do {|note| instrument = note[6] ? -1; track = note[7] ? -1; velocity = note[2].asInt.clip(0,127); // sustain and timingOffset are in beats, lag is in seconds timeNoteOn = (thisThread.clock.tempo.reciprocal*note[5])+note[4]+server.latency; timeNoteOff = (thisThread.clock.tempo.reciprocal*(note[3]+note[5]))+note[4]+server.latency; SystemClock.sched(timeNoteOn, {renoiseOscServer.sendMsg("/renoise/trigger/note_on", instrument.asInt, track.asInt, (note[0]+note[1]).asInt, velocity )}); SystemClock.sched(timeNoteOff, {renoiseOscServer.sendMsg("/renoise/trigger/note_off", instrument.asInt, track.asInt, (note[0]+note[1]).asInt)}); } }); ) // Now start Renoise OSC server, load a sample, and try some patterns // straight timing ( Pbind(*[ type: \renoise, legato: Pgauss(0.2,0.05,inf), dur: 0.2, degree: [2,5,12], track: Prand([0,1], inf), ctranspose: Pseq([0,0,0,0,4,4,4,4,5,5,5,5],inf), velocity: Pgauss(64,10,inf), ]).play; ) // loose timing ( Pbind(*[ type: \renoise, legato: 0.1, dur: 0.2, midinote: [66, 69, 74], lag: Pwhite(-0.05!3, 0.05) ]).play; )
code description
Renoise tracker (see renoise.com) can be controlled with OSC commands. With this Renoise Event Type, you can easily generate some patterns which will be played by Renoise. Useful if you want to make patterns with VSTi :-) Usage : - start Renoise - in preferences, start OSC server - load a sample or VSTi in a sample slot in Renoise - start Supercollider - try this code - make more patterns !
use markdown for formating
category tags
comma separated, i.g. "wild, siren" (do not enter default SC class names, please)
ancestor(s)
comma separated identificators, i.g. "1-C,1-1,1-4M,1-x"
Private?
the code will be accessible by direct url and not visible in public activity
signup to submit public code without captcha
comment of change