Csound is a library of tools for generating and processing digital sound.  It is hosted by applications as simple as a command line processor or as complex as a full-featured gui front end.  These applications are built using bridges from many languages like python, java and c++.  Take a look at Csound Frontends for a list of some of these.

The csound6netlib.dll contains the object wrappers that expose the csound “c” API in a format idiomatic to C# and other DotNet CLR languages.  It maps “c”-style functions into C# idioms such as classes, properties, enums, IDisposable’s (for “using” blocks), async/await, exceptions, generics, delegates and events

Added to the csound’s dll function libraries, the csound6NetLib’s dll class library makes it possible to build host front ends to csound using DotNet languages like C# and VB.  One only need add csound6netlib.dll and msvcrt.dll to csound’s “bin” directory and reference it from your Visual Studio project to begin developing.

Checklist for Setting up a Dot Net Project using csound 6:

1. Download and install csound 6.01.  Use this newest version (released October 20, 2013) because it fixes many bugs some of which caused our testing to fail.  Now all of our tests pass.

2. Follow csound’s set up instructions:

Csound’s Windows installer should install things in their expected places.  Getting Started with Csound and Configuring csound may be useful to verify this.

Csound uses several Environment variables which you’ll probably want to set up.  See Useful environment variables for default behavior

Csound 6 makes use of additional open source audio libraries which it supplies in its bin directory upon installation: libsndfile, portaudio and portmidi as well as various support gnu libraries.  By default, it expects Python 2.7 to be installed.  If you don’t want to install Python, delete py.dll from Csound’sbin” directory as described here: Configuring Csound

3. Download and install this project’s csound6netlib.dll and place it in the bin directory within the directory where you installed Csound.  Typically, this is “c:\Program Files (x86)\csound6\bin”.  Alternatively, you could install csound6netlib.dll in the same directory as your host program.

4. It is no longer necessary to install your own copy of msvcrt.dll.  Csound 6.01 comes with msvcr110.dll which is sufficient for our purposes.  The affected pInvoke signatures have been changed to reflect this.

5. You can verify your installation if you also copy the command line shell, csound6net, in the bin directory as well.  You should get the same results, then, if you type either Csound or csound6net at the command prompt.

6. Browse the Doxygen API html pages included in the apiref directory to see what is available. Double-click on "index.html".

7. Create a new project in Visual Studio and add a reference to csound6netlib.dll and start developing. If you add a using statement (csound6netlib), you should see all classes available via IntelliSense as you work.  Most classes begin with Csound6.

Last edited Nov 4, 2013 at 6:28 PM by rhenninger, version 23


No comments yet.