brute force -d -odac #define NBUS #16# gigrobot ftgen 2, 0, $NBUS, 2, 0 gandx init -1 instr A gandx init (gandx+1)%$NBUS k1 oscili 1, 1/p3, 21 a1 oscili 8000*k1, p4, 1 tablew a1, gandx, 2 ;; clear bus event_i "i", "D", p3, 0.01, gandx endin instr B event_i "i", "A", 0, 0.5, 440 event_i "i", "A", 0.5, 0.5, 330 event_i "i", "A", 1, 1, 220 event_i "i", "A", 2, 0.5, 220 event_i "i", "A", 2.5, 0.5, 330 event_i "i", "A", 3, 1, 440 aout tablera 2, 0, 0 out aout endin instr C a1 subinstr "B", 0, p3 out p4*a1 endin instr D ; clear bus tableiw 0, p4, 2 endin f1 0 4096 10 1 f21 0 17 5 1 16 0.01 i"C" 0 4 0.5 i"C" 0.3 0.2 1 i"C" 0.7 0.2 1 i"C" 2 0.2 1 e tito On Tue, Nov 22, 2011 at 08:37:37PM +0300, Anton Kholomiov wrote: > to Victor > > Sorry but I don't understand how can it help. > I can make A-instrument into UDO. But I can not > express the sequence of notes (what event-opcode does) > and get the cumulative signal. > > to Tito: > > Your example is the same as mine, you have > switched from one globals to another ones. > It sounds the same. > > to Joachim > > With globals I can not play two instances of the same > instrument simultaneously. They all merged into one > named-channel. I have to reserve names for all > invokations. > > > 2011/11/21 joachim heintz > > > i don't understand why victor's example with the chn opcodes did not > > work for you. they are like busses, and you can do whatever you want: > > merging or not, sending globals or seperate channels. i am pretty sure > > that you can get what you want with them. i might help you, too, but i > > didn't understand your point yet. if you like, please give a reduced > > example. > > best - > > joachim > > > > > > > > Am 20.11.2011 17:47, schrieb Anton Kholomiov: > > > I don't know how can it help. UDOs build combination > > > of existing opcodes. But there is no such combination. > > > I'm trying to read output of several instruments. Often > > > globals are used for this task, but globals merge things > > > together. > > > > > > > > > Anton > > > > > > > > > > > > 2011/11/20 Victor Lazzarini > > > > > > > > > Maybe what you want to do is better served by UDOs? > > > > > > Victor > > > > > > On 20 Nov 2011, at 16:16, Anton Kholomiov wrote: > > > > > >> It happens because event_i adds score events at > > >> initialisation of an instrument. And SignalFlow opcodes > > >> work like global variables every new instance of instrument > > >> A adds data to instrument B, so the second note > > >> > > >> i"C" 0.25 0.2 1 > > >> > > >> writes all new notes of instrument A, and we can > > >> hear them in the note > > >> > > >> i"C" 0 7 0.5 > > >> > > >> because instrument B is still listening on the channel "in". > > >> Global variables (sigh) > > >> > > >> > > >> > > >> 2011/11/20 Victor Lazzarini > >> > > > >> > > >> SignalFlow opcodes is Michael Gogins' territory, so I will > > >> not be able to help you there... > > >> > > >> Victor > > >> > > >> On 20 Nov 2011, at 15:33, Anton Kholomiov wrote: > > >> > > >>> > > >>> > > >>> 2011/11/20 Victor Lazzarini > >>> > > > >>> > > >>> And what is the difference between instr 2 & 3? I don't > > >>> follow. > > >>> > > >>> Difference is hidden by sequence of dots) > > >>> Your solution requires one named channel per instance, > > >>> I've tried to do it another way and I've run into strange > > >>> behavior. > > >>> I'm trying to redirect the output of instrument with SignalFlow > > >>> opcodes. Instrument B collects all notes for instrument A. > > >>> Then some another instrument invokes B with subinstr > > >>> opcode. But it doesn't work as expected. I'm invoking > > >>> instrument C twice, one is long note (it plays all A's notes) > > >>> and one is short note (it plays only one A's note), > > >>> but I can hear both notes as if they are long notes. > > >>> What am I missing here? > > >>> > > >>> Here is the code: > > >>> > > >>> > > >>> > > >>> -d -odac > > >>> > > >>> > > >>> > > >>> > > >>> connect "A", "out", "B", "in" > > >>> > > >>> instr A > > >>> k1 oscili 1, 1/p3, 21 > > >>> a1 oscili 8000*k1, p4, 1 > > >>> outleta "out", a1 > > >>> endin > > >>> > > >>> instr B > > >>> event_i "i", "A", 0, 0.5, 440 > > >>> event_i "i", "A", 0.5, 0.5, 330 > > >>> event_i "i", "A", 1, 1, 220 > > >>> event_i "i", "A", 2, 0.5, 220 > > >>> event_i "i", "A", 2.5, 0.5, 330 > > >>> event_i "i", "A", 3, 1, 440 > > >>> > > >>> a1 inleta "in" > > >>> out a1 > > >>> endin > > >>> > > >>> > > >>> instr C > > >>> a1 subinstr "B", 0, p3 > > >>> out p4*a1 > > >>> endin > > >>> > > >>> > > >>> > > >>> > > >>> f1 0 4096 10 1 > > >>> > > >>> f21 0 17 5 1 16 0.01 > > >>> > > >>> i"C" 0 7 0.5 > > >>> i"C" 0.25 0.2 1 > > >>> e > > >>> > > >>> > > >>> > > >>> > > >>> > > >> > > >> Dr Victor Lazzarini > > >> Senior Lecturer > > >> Dept. of Music > > >> NUI Maynooth Ireland > > >> tel.: +353 1 708 3545 > > >> Victor dot Lazzarini AT nuim dot ie > > >> > > >> > > >> > > >> > > > > > > Dr Victor Lazzarini > > > Senior Lecturer > > > Dept. of Music > > > NUI Maynooth Ireland > > > tel.: +353 1 708 3545 > > > Victor dot Lazzarini AT nuim dot ie > > > > > > > > > > > > > > > > > > Send bugs reports to the Sourceforge bug tracker > > https://sourceforge.net/tracker/?group_id=81968&atid=564599 > > Discussions of bugs and features can be posted here > > To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe > > csound" > > > > > > Send bugs reports to the Sourceforge bug tracker > https://sourceforge.net/tracker/?group_id=81968&atid=564599 > Discussions of bugs and features can be posted here > To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound" > Send bugs reports to the Sourceforge bug tracker https://sourceforge.net/tracker/?group_id=81968&atid=564599 Discussions of bugs and features can be posted here To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"