[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sc-users] SynthDef>VirtualRoom



Hi,

since you have pushed the ProxySpace, everything you assign with ~ (e.g. ~vFMae) is inserted into the ProxySpace. 3 solutions:

(1) use an event for storing your voicer:

q = ();
q[\vFMae] = Voicer(5, \FMae1);

etc.


This solution is not really convenient since I've got many assignations with ~


yes, this is often an issue. You could also use "use": q.use { ~vFMae = ... };
but there are other ways to solve this too.


(2) do not push the proxyspace:

p = ProxySpace(s);
p[\out].play;

etc.

(3) use a NodeProxy as input:
a = NodeProxy(s);
a.source = \FMae1;
v.addSource(a, \space, ...);


... and these ones don't work...

why?

Isn't it kind of a contradiction to trigger the synth with Voicer + VoicerMIDISocket and use it as a NodeProxy at the same time? With the following code I trigger the synth (and I can hear it) but the signal is not sent to the VirtualRoom....

I don't know what you are trying to do. You can play the output of any pattern or synth into a proxy by setting \out to proxy.index. Or you can set your midi action function to something like:

{ proxy.spawn([\freq, the freq.., \amp, the amp...]) }

note that then your synthdef should free itself.






x = NodeProxy(s);
x.source_(\FMae1);

(
~vFMae = Voicer(5, \FMae1);
~msFMae = VoicerMIDISocket(0, ~vFMae, 37, 59);
~msFMae.noteOnArgsPat = Pbind(\sustain, Pkey(\velocity) * 0.00315, \freq, Pkey(\midinote), \attack, Pfunc( { a.slots[3].at( 48 ).value } ));
)

v.addSource(x, \space, [1, 2, 2.5]);


Thank you for your help.
c


I'd like to plug a SynthDef to a VirtualRoom, and trigger the synth using MIDI. Since VirtualRoom needs a NodeProxy.audio as input, I tried this:


(

p = ProxySpace.push;

VirtualRoom.kemarPath = "KemarHRTF/";

v = VirtualRoom.new;

v.init;

)


// ... (then some settings and v.play to start the VirtualRoom)...


// and finally my input...


~out.play;

~out = \FMae1;


v.addSource( ~out, \space, [1, 2, 2.5]);



// but then using the following code seems absurd, and I can't figure out how to trig the synth using midi...


(

~vFMae = Voicer(5, \FMae1);

~msFMae = VoicerMIDISocket(0, ~vFMae, 37, 59);

~msFMae.noteOnArgsPat = Pbind(\sustain, Pkey(\velocity) * 0.00315, \freq, Pkey(\midinote), \attack, Pfunc( { a.slots[3].at( 48 ).value } ));

)



I got this error message:


ERROR: 'prepareForProxySynthDef' should have been implemented by Voicer.



Thank you,

c


__________________________


Cédric Dambrain


website: <<http://www.cedricdambrain.net>http://www.cedricdambrain.net><http://www.cedricdambrain.net>www.cedricdambrain.net


phone:	 +32 473 88 66 43


address:	 rue Van Campenhout, 40

		 1000 Brussels

		 Belgium



--





.

_______________________________________________
sc-users mailing list

info (subscription, etc.): <http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml>http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml archive: <https://listarc.bham.ac.uk/marchives/sc-users/>https://listarc.bham.ac.uk/marchives/sc-users/ search: <https://listarc.bham.ac.uk/lists/sc-users/search/>https://listarc.bham.ac.uk/lists/sc-users/search/


--





.

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: https://listarc.bham.ac.uk/marchives/sc-users/
search: https://listarc.bham.ac.uk/lists/sc-users/search/