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"