Csound Csound-dev Csound-tekno Search About

[Cs-dev] Thinking of writing a drum sound plugin

Date2005-11-02 17:06
FromAndy Baxter
Subject[Cs-dev] Thinking of writing a drum sound plugin
AttachmentsNone  

Date2005-11-03 03:13
FromIain Duncan
SubjectRe: [Cs-dev] Thinking of writing a drum sound plugin
Andy, there is an *excellent* series of articles on synthesizing drum 
sounds in the Sound On Sound archives. You may want to check that.

Iain

Andy Baxter wrote:
> hello,
> 
> I'm thinking of having a go at writing a plugin for csound which produces 
> synthesised drum sounds. The way I'm planning to do it is to find the roots 
> of the bessel functions (solutions to the wave equation on a 2D circular 
> sheet) to find the amplitude and frequency of the first several orthogonal 
> frequency components, then synthesise these with a series of sine 
> oscillators. The opcode would look something like:
> 
> adrum besseldrum ifreq iamp istrikeradius istriketheta idamp [ kmicradius1 
> kmictheta1 kmicamp1 kmicradius2 kmictheta2 kmicamp2] ...
> 
> I.e. you could specify the base frequency of the drum, initial amplitude, the 
> point on the drum where it was hit, a damping value, and then the locations 
> of a series of 'microphones' which would pick up the resulting oscillations. 
> The location of the strike point and the microphones would affect the balance 
> of different frequency components in the output signal. It wouldn't be a full 
> physical model like the waveguide opcodes - I'm planning to use the known 
> solutions for this wave equation.
> 
> I've got a fairly good general idea of how to go about this, but if anyone has 
> any advice I would appreciate it. Roughly what I'm planning to do is to use 
> the initialisation function to work out the frequencies of the different 
> components, create tables of the solutions to the wave equation, and set up a 
> series of sine oscillators (based on the oscil opcode). The amplitude of each 
> component would be initialised according to where the drum was hit. Then the 
> main function would mix the outputs from each of the virtual microphones into 
> an output signal.
> 
> The sort of thing that would be good to know is firstly if this is a valid 
> approach to generating synth drum sounds? I'm not too worried about how much 
> it sounds like a real drum, but it would be good to know if people have done 
> this sort of thing before. Also if anyone has any general advice on writing 
> opcodes for csound, that would be good. One thing I'm not sure about is what 
> libraries to use to keep the code portable - the standard unix math library 
> includes bessel functions, but I don't know if this is true for windows.
> 
> thanks, 
> 
> andy baxter
> 


-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42" plasma tv or your very own
Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2005-11-03 12:40
FromAndy Baxter
SubjectRe: [Cs-dev] Thinking of writing a drum sound plugin
AttachmentsNone