CSound software architecture and implementation
Date | 2005-12-01 11:24 |
From | Nicolas =?iso-8859-1?Q?Castagn=E9?= |
Subject | CSound software architecture and implementation |
Hi all, I am preparing a two days lesson on sound synthesis, and will present and use CSound as a 'reference software' in Computer Music. Along with sound synthesis itself (patches, techniques, etc.) I would like to provide a presentation of the software architecture and code of the CSound synthesis layer. Exemples of the topics I would like to present are: - understanding the general architecture: how the sound signal is passed from modules to modules, how the bi-frequency scheme is implemented, etc. To that aim, having something like UML diagrams would be very useful. - visiting/understanding the code: where is the code for each module, etc. I did not find a lot of information in the CSound web site, nor in CSound books I have... I would be grateful if someone could give me a few docs, pointers, etc on that topics ! All the bestn Nicolas -- ------------------------------------------------------------------- Dr Nicolas CASTAGNE ACROE-ICA, 46 av. Félix Viallet 38 000 Grenoble http://acroe.imag.fr Tel : (33) 4 76 57 46 60 ------------------------------------------------------------------- |
Date | 2005-12-01 12:17 |
From | Victor Lazzarini |
Subject | Re: CSound software architecture and implementation |
As an introduction, John ffitch's chapter on the Csound Book and his paper 'on the design of Csound5' are useful (you will find the second somewhere online). Then there is Rasmus Ekman text, but that is somewhat out of date as a lot has changed in Csound 5 (used to be in Csounds.com) On opcodes specifically, there is a text in the Csounds.com site. I assume you are discussing csound5, as the older versions will be obsolete as soon as it is released. In terms of modules, you will find that the source code directory structure gives a clue where things are (Istvan can correct and add to this) /Engine -> basic sound engine modules/parser: musmon, instr insert, opcode entries /Top -> top-level functionality: argument decoding, API functions, threading, dynamic loading /Oops -> built-in opcodes /Opcodes -> plugin opcodes /strings -> string localisation All the above are related to the csound lib code. The csound program itself uses the library as other frontends (in /frontends) Victor At 11:24 01/12/2005, you wrote: >Hi all, > >I am preparing a two days lesson on sound synthesis, and will present and >use CSound as a 'reference software' in Computer Music. > >Along with sound synthesis itself (patches, techniques, etc.) I would like >to provide a presentation of the software architecture and code of the >CSound synthesis layer. > >Exemples of the topics I would like to present are: >- understanding the general architecture: how the sound signal is passed >from modules to modules, how the bi-frequency scheme is implemented, etc. >To that aim, having something like UML diagrams would be very useful. >- visiting/understanding the code: where is the code for each module, etc. > >I did not find a lot of information in the CSound web site, nor in CSound >books I have... > >I would be grateful if someone could give me a few docs, pointers, etc on >that topics ! > >All the bestn > >Nicolas > > >-- >------------------------------------------------------------------- >Dr Nicolas CASTAGNE > >ACROE-ICA, >46 av. Félix Viallet >38 000 Grenoble >http://acroe.imag.fr > >Tel : (33) 4 76 57 46 60 >------------------------------------------------------------------- >-- >Send bugs reports to this list. >To unsubscribe, send email to csound-unsubscribe@lists.bath.ac.uk Victor Lazzarini Music Technology Laboratory Music Department National University of Ireland, Maynooth |
Date | 2005-12-01 12:18 |
From | Victor Lazzarini |
Subject | Re: CSound software architecture and implementation |
By the way there is a csound developer's list for this sort of discussion (we don't want to scare people away) . Check it out in Csounds.com At 11:24 01/12/2005, you wrote: >Hi all, > >I am preparing a two days lesson on sound synthesis, and will present and >use CSound as a 'reference software' in Computer Music. > >Along with sound synthesis itself (patches, techniques, etc.) I would like >to provide a presentation of the software architecture and code of the >CSound synthesis layer. > >Exemples of the topics I would like to present are: >- understanding the general architecture: how the sound signal is passed >from modules to modules, how the bi-frequency scheme is implemented, etc. >To that aim, having something like UML diagrams would be very useful. >- visiting/understanding the code: where is the code for each module, etc. > >I did not find a lot of information in the CSound web site, nor in CSound >books I have... > >I would be grateful if someone could give me a few docs, pointers, etc on >that topics ! > >All the bestn > >Nicolas > > >-- >------------------------------------------------------------------- >Dr Nicolas CASTAGNE > >ACROE-ICA, >46 av. Félix Viallet >38 000 Grenoble >http://acroe.imag.fr > >Tel : (33) 4 76 57 46 60 >------------------------------------------------------------------- >-- >Send bugs reports to this list. >To unsubscribe, send email to csound-unsubscribe@lists.bath.ac.uk Victor Lazzarini Music Technology Laboratory Music Department National University of Ireland, Maynooth |
Date | 2005-12-01 16:34 |
From | Iain Duncan |
Subject | Re: CSound software architecture and implementation |
> On opcodes specifically, there is a text in the Csounds.com site. I > assume you > are discussing csound5, as the older versions will be obsolete as soon > as it is > released. Victor is being modest, there is a paper on csounds.com by him called DevelopingOpcodes, and it is an excellent introduction for the kind of thing you are showing the class. =) Iain |
Date | 2005-12-01 16:39 |
From | Istvan Varga |
Subject | Re: CSound software architecture and implementation |
Attachments | None |
Date | 2005-12-01 16:44 |
From | Iain Duncan |
Subject | Re: CSound software architecture and implementation |
>>>On opcodes specifically, there is a text in the Csounds.com site. I >>>assume you >>>are discussing csound5, as the older versions will be obsolete as soon >>>as it is >>>released. >> >>Victor is being modest, there is a paper on csounds.com by him called >>DevelopingOpcodes, and it is an excellent introduction for the kind of >>thing you are showing the class. =) > > > It may be a bit out of date compared to the actual interface, though. Right, there was the change of ENVIRON to CSOUND, and I think another that I found too but can't remember. I know Victor said he would change them, but I'm not sure if that has been updated on csounds.com. Thanks, I forgot about that. Iain |
Date | 2005-12-01 16:46 |
From | David Akbari |
Subject | Re: CSound software architecture and implementation |
Hi Nicolas, On Dec 1, 2005, at 6:24 AM, Nicolas Castagné wrote: > I am preparing a two days lesson on sound synthesis, and will present > and use CSound as a 'reference software' in Computer Music. > > Along with sound synthesis itself (patches, techniques, etc.) I would > like to provide a presentation of the software architecture and code > of the CSound synthesis layer. > > Exemples of the topics I would like to present are: > - understanding the general architecture: how the sound signal is > passed from modules to modules, how the bi-frequency scheme is > implemented, etc. To that aim, having something like UML diagrams > would be very useful. > - visiting/understanding the code: where is the code for each module, > etc. > > I did not find a lot of information in the CSound web site, nor in > CSound books I have... There are many articles featured on cSounds.com that will possibly be of use in the context of the lesson : John ffitch - On the Design of Csound5 http://csounds.com/articles/john_ffitch_slides.pdf Victor Lazzarini - Extensions to Csound http://csounds.com/articles/Extensions_to_Csound.pdf and of course some of the tutorials Beginner TOOTs http://www.csounds.com/toots/index.html Mastering Csound http://www.csounds.com/mastering/index.html A Brief History of Computer Music http://www.csounds.com/history/index.html Barry Vercoe Bio http://www.csounds.com/vercoe/index.html Max Mathews Bio http://www.csounds.com/mathews/index.html and of course there is still a plethora of information contained on cSounds.com although perhaps not immediately relevant to the lecture that is being prepared. Hope this helps ! -David |
Date | 2005-12-01 16:52 |
From | David Akbari |
Subject | Re: CSound software architecture and implementation |
On Dec 1, 2005, at 11:44 AM, Iain Duncan wrote: > but I'm not sure if that has been updated on csounds.com. The version currently available on cSounds.com is an accurate reflection of the API. -David |
Date | 2005-12-01 17:26 |
From | Istvan Varga |
Subject | Re: CSound software architecture and implementation |
Attachments | None |