| Hi,
I think the DX7 emulating orcs request "direct" definition of duration (p3)
in sco. Working with midi (-file) is in a "real-time style", so it is
impossible to send to
instrument duration of current note in the moment of its starting.
Your opinion?
Regards,
Sergey Batov batov@glasnet.ru
----------
> Îò: Robert Junior Mcnulty
> Êîìó: Sergey Batov
> Êîïèÿ: csound@maths.ex.ac.uk
> Òåìà: Re: [Re: [Re: Reading a MIDI (AKA Driving me bonkers)]]
> Äàòà: 21 àïðåëÿ 1999 ã. 23:52
>
>
>
>
>
> Sergey, I see what you you are talking about. P3 is duration. How would
you define it in this situation?
> Any comments are allowed here..
>
> "Sergey Batov" wrote:
> Robert, may be I'm wrong but seems p3 undefined in your orc.
>
> Regards,
> Sergey Batov batov@glasnet.ru
>
> ----------
> Îò: Robert Junior Mcnulty
> Êîìó: Kevin Gallagher
> Êîïèÿ: csound@maths.ex.ac.uk
> Òåìà: Re: [Re: Reading a MIDI (AKA Driving me bonkers)]
> Äàòà: 21 àïðåëÿ 1999 ã. 0:27
>
> Now the problem is reading the file itself.
> Here, in attachments, are the files I'm using.
> I had that problem solved about twenty minutes after posting that
message.
> Could you see what I did wrong?
> It basically does not read MIDI events.
> It's supposed to be in format 0. I'm not readlly sure which format it in.
> (The Midi File)
> Any way, its part of a song I will finish after I get the ideas for the
> basic
> WAV file down packed.
>
> I looked in the Orcs And Scores sample pack, and got parts of the file
from
> there. Instruments 2 and 99 should not be there, so you can erase them.
>
> I cant solve this one because the reference manual is unclear.
> The tutorial does not conver it, and quite frankly, I don't know how to
> read
> MIDI events from the MIDI file.
> See if you can get it to work, then send it back, OK? Thanks.
>
> ____________________________________________________________________
> Get free e-mail and a permanent address at http://www.netaddress.com/?N=1
> ;ORC
>
strings.orc=================================================================
> =========;
> ; Schottstaedt FM String Instrument from Dodge
> ;
> ;
> ;
> ;p4 = amp p5 = pch p6 = rise p7 = dec p8 = vibdel p9 = vibwth p10 =
vibrte
> ;
>
;==========================================================================;
>
> sr = 22000
> kr = 1100
> ksmps = 20
> nchnls = 1
>
> instr 1
> icps cpsmidi
>
> iamp ampmidi 512, 1
>
> ifm1 = icps
> ifm2 = icps*3
> ifm3 = icps*4
> indx1 = 7.5/log(icps) ;range from ca 2 to 1
> indx2 = 15/sqrt(icps) ;range from ca 2.6 to .5
> indx3 = 1.25/sqrt(icps) ;range from ca .2 to .038
> kvib init 0
>
> timout 0,.75,transient ;delays vibrato for p8 seconds
> kvbctl linen 1,.5,p3-.75,.1 ;vibrato control envelope
> krnd randi .0075,15 ;random deviation in vib width
>
> kvib oscili kvbctl*.03+krnd,5.5*kvbctl,1 ;vibrato generator
>
> transient:
> timout .2,p3,continue ;execute for .2 secs only
> ktrans linseg 1,.2,0,1,0 ;transient envelope
> anoise randi ktrans,.2*icps ;noise...
> attack oscil anoise,2000,1 ;...centered around 2kHz
>
> continue:
> amod1 oscili ifm1*(indx1+ktrans),ifm1,1
> amod2 oscili ifm2*(indx2+ktrans),ifm2,1
> amod3 oscili ifm3*(indx3+ktrans),ifm3,1
> asig oscili iamp,(icps+amod1+amod2+amod3)*(1+kvib),1
> asig linen asig+attack,.2,p3,.2
> out asig
>
> endin
> instr 2
> knote cpsmidib
> iveloc ampmidi 1
> kgate linenr iveloc/2, 0, .2, .01
>
> kva line 0, 3, .02
> kv oscil knote*kva, 4, 3
>
> kf linseg 2200, 1.5, 1200, .5, 880, 5, 440
>
> k1 linseg 8000, .5, 8000, 5, 2000
> k2 line 700, .5, 700
>
> a5 oscil k2, knote, 3
> a6 oscil k2, knote*1.499, 3
>
> a1 oscil k1, knote*2.001 + a5 + kv, 3
> a2 oscil k1, knote*1.502 + a6 + kv, 3
> a2 butterlp a2 + a1, kf
>
> out a2 * kgate
>
>
> endin
> instr 99 ;allows complex ADSR envelope with MIDI events
> inum notnum
> icps cpsmidi
> iamp ampmidi 4000
> ;
> ;------- complex envelope block ------
> xtratim 1 ;extra-time, i.e. release dur
> krel init 0
> krel release ;outputs release-stage flag (0 or 1 values)
> if (krel = .5) kgoto rel ;if in release-stage goto release section
> ;
> ;************ attack and sustain section ***********
> kmp1 linseg 0, .03, 1, .05, 1, .07, 0, .08, .5, 4, 1, 50, 1
> kmp = kmp1*iamp
> kgoto done
> ;
> ;--------- release section --------
> rel:
> kmp2 linseg 1, .3, .2, .7, 0
> kmp = kmp1*kmp2*iamp
> done:
> ;------
> a1 oscili kmp, icps, 1
> out a1
> endin; Test Score for Schottstaedt String
> f1 0 512 10 1
> e
> ----------
>
>
> ____________________________________________________________________
> Get free e-mail and a permanent address at http://www.netaddress.com/?N=1 |