Csound Csound-dev Csound-tekno Search About

"new subscriber"

Date1997-03-21 17:03
FromRichard Dobson
Subject"new subscriber"
Having read the discussion list off the Web for some while, I have now got
round to subscribing!

My main claim to fame(?) is that I have been working with John Fitch on an
occasional basis for a few years, since he invited me to become a visiting
research fellow at Bath university. The nonlinear filter now in Csound is
my one 'creative' contribution so far (coded by John).

I am also a core developer for the Composer's Desktop Project (CDP), working
on both Atari (Falcon) and PC platforms, the latter by means of Visual C++
V4. I have compiled the Bath sources for Windows95 under VC++. I noted a few
messages to the list concerning linking problems with VC++; if anyone is
still having difficulties I may be able to help. The main trick with WinSound
is that the Windows graphic modules (the .cpp files) need to be compiled as
multi-threaded; the rest can be single-threaded, and the main obstacle to 
overcome is telling VC++ what libraries to avoid.

Having recently embarked on an exploration of legato instruments in CSound,
I can pass on some observations regarding the tricks in designing 'held'
instruments. In the course of this work I found several bugs and lacunae in
Csound, fixes for which, such as the extra arguments to some new opcodes to
skip initialization, are now in the general release.

For portamento, for example, the phase of the oscillator must be preserved
betweeen one note and the next - this is done using the optional 'istor'
parameter. Similarly, all the delays and filters need to keep their data
across notes, so they also need to skip initialzation. 

Needless to say, for this to work as intended, the notes must neither
overlap, nor have gaps betweeen them.

For amplitude control, I use the 'ppX' and 'npX' mechanism of the score to
give instruments essential contextual knowledge, eg. what the previous amp was
and what the next one will be.

In fact, I have never bothered with 'ihold'; I just use the -p3 mechanism,
together with use of 'tival' in the instrument.

Other biog info:

	 I am yet another musician turned programmer - my instrument is the
flute, and I teach it at Bath College. I have also written a book on 
Electronic and Computer Instruments, which was published at high price by
OUP without pictures. Needless to say, it has not become a best-seller, though
I still think a lot of it is quite good.

CDP, of course, supports CSound, though at present with a desperately old
version. We have a version on the Atari, but it uses our own special sound
filing system, not the standard GEM/TOS system. My main interest in CSound
is in exploring ways of developing it graphically, so that it can be linked
to other graphical tools we are developing. Once I have acquired a suitable
multi-channel soundcard, I will explore the possibilities of adding general
multi-channel (ie, multi-device) support to the PC version of CSound. Any
material work that I do here will be passed directly to John; I do not
want to add yet another independent version of Csound to the existing pool! 

Anyone wanting CDP information should email me directly:
	rwd@pact.srf.ac.uk
or	masrwd@bath.ac.uk

Thanks to anyone who has read all of this rather long posting!

Richard W Dobson.