hey @iainmccurdy, finally getting around to integrating your GEN02 adaptation into my sequencer and of course i’m getting nowhere fast, despite the fact that i am learning what makes things tick. first off, some code that works properly:
instr inst4 ; play from score and midi keyboard mididefault 60, p3 midinoteonkey p4, p5 inum init p4 ivel init p5 ivel init ivel/127 ;make velocity dependent kamp linsegr 1, 1, 1, .1, 0 kamp = kamp/5000 ;scale amplitude kfreq init 1 ;do not change freq from sf a1,a2 sfinstr ivel, inum, kamp*ivel, kfreq, 15, gisf1 outs a1, a2 endin
this is the code that the soundfont player uses to play sounds and it works fine. as for the GEN02 example i left out the sequence player instrument and delay and used just the synth and no screen controls since i’m not sure how to make them show up in Unity. that means i initialized them to the values you set earlier on. here’s how that looks:
instr inst2 kfilt init 0 ; read filter envelope shift from widget kres init .70 ; read in widgets... klev init .5 kfshift init 0 ; freq. shift ratio with respect to the frequency of the note played idecay init .5 ; read envelope duration from table inote init p4 ; read note number from table (range: 0 - 1) p5=p5/127 ;scaling range of p5 to roughly 0-1 iamp ampmidi 1 ; read amplitude from table (range: 0 - 1) kcf expseg inote+(60*iamp),idecay,inote,1,inote ; create filter cutoff envelope kcf limit cpsmidinn(kcf+(12*kfilt)),20,20000 kporttime linseg 0,0.001,1 ; portamento time ramps up quickly from zero, holds at '1' a1 vco2 iamp*klev,cpsmidinn(inote),0,0.5 ; VCO audio signal generator a1 moogladder a1,kcf,kres ; moogladder lowpass filter a1 FreqShifter a1,cpsmidinn(inote)*kfshift*0.5,gisine ; frequency shift applied to audio signal (using a UDO: see above). Frequency is a function of note number of the sequence and the on-screen control 'harm.' aAntiClick linsegr 0,0.005,1,0.005,0 aR = a1 * klev*aAntiClick ; scale audio signal with 'Level' and 'Echo' controls aL delay aR, 0.002 ; slightly delay audio signal (used to create a stereo effect) outs aL, aR ; send audio to outputs (left channel slightly delayed) endin
p4 is the note number and p5 is the velocity. at the moment i just set amp to 1 so i could hear some sound but i don’t hear any sound currently. i have included the UDO and the gisine table for the freq shift. the code compiles properly, so no syntax errors, but it’s likely my math is off as i get no sound at all.
anything obvious i’m not doing here? would appreciate any tips -thanks!