Quantcast

[Csnd] scons and swig

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Csnd] scons and swig

jhearon


I was trying to do a build on windows, with Steven's help, and confused
about the Custom.py file's
customCPPATH.append('c:/projects/csound5/cygwin_import_libs')  and also
customSWIGFLAGS.append('-Derrmsg=err_msg').

I built swig but csound5 doesn't seem to use it, rather it's something you
use separately to generate the java wrappers.  Is that right?  I'd guess
however, I should still set customCPPPATH.append('c:/Program
Files/jdk1.5.0/include')    and  customCPPPATH.append('c:/Program
Files/jdk1.5.0/include/win32').

Also I'm trying to build using mingw and msys.  What is cygwin_import_libs?  
Is that needed?

Thanks.


--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [Csnd] scons and swig

Michael Gogins
I don't think cygwin_import_libs does anything any more.

SWIG is used not only for Java wrappers, but also for Python wrappers.

However, no wrappers are built unless you build CsoundVST. This is because it was easier to get SWIG to wrap C++ classes than to wrap the plain Csound API. There is a C++ version of the Csound API, namely CppSound, as part of CsoundVST.

It would be possible to move CppSound into the main Csound library, which would mean that the main Csound library could have the Python and Java wrappers, although without the GUI and algorithmic composition classes that also are part of CsoundVST.

It would also be possible to just go ahead and wrap the plain Csound C API, although the wrappers would be static functions in Python and a Java class with only static methods in Java. But the advantage would be that the wrappers would automatically track all changes in the Csound API.

I'd like to know what people want to do here.

-----Original Message-----
From: James Hearon <[hidden email]>
Sent: May 10, 2005 2:42 PM
To: [hidden email]
Subject: [Csnd] scons and swig



I was trying to do a build on windows, with Steven's help, and confused
about the Custom.py file's
customCPPATH.append('c:/projects/csound5/cygwin_import_libs')  and also
customSWIGFLAGS.append('-Derrmsg=err_msg').

I built swig but csound5 doesn't seem to use it, rather it's something you
use separately to generate the java wrappers.  Is that right?  I'd guess
however, I should still set customCPPPATH.append('c:/Program
Files/jdk1.5.0/include')    and  customCPPPATH.append('c:/Program
Files/jdk1.5.0/include/win32').

Also I'm trying to build using mingw and msys.  What is cygwin_import_libs?  
Is that needed?

Thanks.


--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]



--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Csnd] where do I start with CS5 code?

Michael Rempel

This is probably mostly directed to Michael Gogins, but anyone is welcome to
jump in.

I am interested in getting into the CS5 code. I have an extensive background
in C and other languages, but no exposure to CSound in any incarnation.
OTOH, I have some DSP, mostly filters.

I know you are using C in an object like manner, and I have lots of object
experinence.

Is there any more guidance you can give me as I explore the code? i.e.
design documents, an email archive etc. I mostly want an overview of how
things are structured so I know where to start looking in the code, and I
understand the intent of the code patterns you are using.

TIA

Michael Rempel

--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [Csnd] where do I start with CS5 code?

Michael Gogins
The Csound Book has some introductory chapters that give a very general overview of how the code works.

Apart from that, the Csound manual has some stuff.

And apart from that, there is just the code. The best way to learn it is to run a simple piece in the debugger, and step down into the bowels.

There are several general areas:

The runtime loop is very simple in concept, but the event gathering and dispatching code is still gruesome, though much improved.

The parser is a forest where no one has ventured, except maybe John ffitch, who is working on a new one. I think a lot of Barry Vercoe's original hand-written parser is still relied on here.

The opcodes do most of the work, and are the easiest to understand, and the design is fairly well documented in the manual.

The utilities and whatnot are another swamp...

The framework that ties all these areas together is also much improved, with loadable modules, 3rd party drivers, and plugin opcodes.

CsoundVST is a kind of C++/Python attic stuck on top of Csound, to make it easier to script, to embed, and to use for algorithmic composition.



-----Original Message-----
From: Michael Rempel <[hidden email]>
Sent: May 10, 2005 7:49 PM
To: [hidden email]
Subject: [Csnd] where do I start with CS5 code?


This is probably mostly directed to Michael Gogins, but anyone is welcome to
jump in.

I am interested in getting into the CS5 code. I have an extensive background
in C and other languages, but no exposure to CSound in any incarnation.
OTOH, I have some DSP, mostly filters.

I know you are using C in an object like manner, and I have lots of object
experinence.

Is there any more guidance you can give me as I explore the code? i.e.
design documents, an email archive etc. I mostly want an overview of how
things are structured so I know where to start looking in the code, and I
understand the intent of the code patterns you are using.

TIA

Michael Rempel

--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]



--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [Csnd] where do I start with CS5 code?

Michael Rempel
I tried cvs logon anonymously but I am having no luck. Using tortiseCVS.

I get real password required for user anonymous

Michael

-----Original Message-----
From: Michael Gogins [mailto:[hidden email]]
Sent: Tuesday, May 10, 2005 3:25 PM
To: [hidden email]
Subject: Re: [Csnd] where do I start with CS5 code?


The Csound Book has some introductory chapters that give a very general
overview of how the code works.

Apart from that, the Csound manual has some stuff.

And apart from that, there is just the code. The best way to learn it is to
run a simple piece in the debugger, and step down into the bowels.

There are several general areas:

The runtime loop is very simple in concept, but the event gathering and
dispatching code is still gruesome, though much improved.

The parser is a forest where no one has ventured, except maybe John ffitch,
who is working on a new one. I think a lot of Barry Vercoe's original
hand-written parser is still relied on here.

The opcodes do most of the work, and are the easiest to understand, and the
design is fairly well documented in the manual.

The utilities and whatnot are another swamp...

The framework that ties all these areas together is also much improved, with
loadable modules, 3rd party drivers, and plugin opcodes.

CsoundVST is a kind of C++/Python attic stuck on top of Csound, to make it
easier to script, to embed, and to use for algorithmic composition.



-----Original Message-----
From: Michael Rempel <[hidden email]>
Sent: May 10, 2005 7:49 PM
To: [hidden email]
Subject: [Csnd] where do I start with CS5 code?


This is probably mostly directed to Michael Gogins, but anyone is welcome to
jump in.

I am interested in getting into the CS5 code. I have an extensive background
in C and other languages, but no exposure to CSound in any incarnation.
OTOH, I have some DSP, mostly filters.

I know you are using C in an object like manner, and I have lots of object
experinence.

Is there any more guidance you can give me as I explore the code? i.e.
design documents, an email archive etc. I mostly want an overview of how
things are structured so I know where to start looking in the code, and I
understand the intent of the code patterns you are using.

TIA

Michael Rempel

--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]



--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]

--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [Csnd] where do I start with CS5 code?

Michael Gogins
The csoundvst package has all sources in a zip file. You can download it
directly from SourceForge.

----- Original Message -----
From: "Michael Rempel" <[hidden email]>
To: <[hidden email]>
Sent: Tuesday, May 10, 2005 9:42 PM
Subject: Re: [Csnd] where do I start with CS5 code?


>I tried cvs logon anonymously but I am having no luck. Using tortiseCVS.
>
> I get real password required for user anonymous
>
> Michael
>
> -----Original Message-----
> From: Michael Gogins [mailto:[hidden email]]
> Sent: Tuesday, May 10, 2005 3:25 PM
> To: [hidden email]
> Subject: Re: [Csnd] where do I start with CS5 code?
>
>
> The Csound Book has some introductory chapters that give a very general
> overview of how the code works.
>
> Apart from that, the Csound manual has some stuff.
>
> And apart from that, there is just the code. The best way to learn it is
> to
> run a simple piece in the debugger, and step down into the bowels.
>
> There are several general areas:
>
> The runtime loop is very simple in concept, but the event gathering and
> dispatching code is still gruesome, though much improved.
>
> The parser is a forest where no one has ventured, except maybe John
> ffitch,
> who is working on a new one. I think a lot of Barry Vercoe's original
> hand-written parser is still relied on here.
>
> The opcodes do most of the work, and are the easiest to understand, and
> the
> design is fairly well documented in the manual.
>
> The utilities and whatnot are another swamp...
>
> The framework that ties all these areas together is also much improved,
> with
> loadable modules, 3rd party drivers, and plugin opcodes.
>
> CsoundVST is a kind of C++/Python attic stuck on top of Csound, to make it
> easier to script, to embed, and to use for algorithmic composition.
>
>
>
> -----Original Message-----
> From: Michael Rempel <[hidden email]>
> Sent: May 10, 2005 7:49 PM
> To: [hidden email]
> Subject: [Csnd] where do I start with CS5 code?
>
>
> This is probably mostly directed to Michael Gogins, but anyone is welcome
> to
> jump in.
>
> I am interested in getting into the CS5 code. I have an extensive
> background
> in C and other languages, but no exposure to CSound in any incarnation.
> OTOH, I have some DSP, mostly filters.
>
> I know you are using C in an object like manner, and I have lots of object
> experinence.
>
> Is there any more guidance you can give me as I explore the code? i.e.
> design documents, an email archive etc. I mostly want an overview of how
> things are structured so I know where to start looking in the code, and I
> understand the intent of the code patterns you are using.
>
> TIA
>
> Michael Rempel
>
> --
> Send bugs reports to [hidden email]
>              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
> To unsubscribe, send email to [hidden email]
>
>
>
> --
> Send bugs reports to [hidden email]
>              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
> To unsubscribe, send email to [hidden email]
>
> --
> Send bugs reports to [hidden email]
>              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
> To unsubscribe, send email to [hidden email]
>


--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Csnd] MacCsound & Tiger?

Matt Ingalls-4

anyone try MAcCsound on Tiger yet?
[ i'm feeling too broke to buy it at the moment ]
especially wondering how
the 'aggregate audio devices' are working
-m
--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [Csnd] where do I start with CS5 code?

Anthony Kozar
In reply to this post by Michael Rempel
Not to replace, but to augment Michael's explanation:

Since most files do not have comments about their purpose ...
(please note that I am looking at a fairly old CVS version and I am not
typing the directory names)

Important defines, structs, etc. - cs.h

API - csound.h, csound.c (probably more now)

main() and argument decoding - csound_main.c, main.c, argdecode.c,
one_file.c (for CSDs)

Orchestra parsing and translation - otran.c, rdorch.c, express.c,
namedins.c, and probably others.

Performance - musmon.c, insert.c, linevent.c, oload.c ?, others ?

Score parsing, extraction and Carry, Tempo, and Sort operations - scsort.c,
scxtract.c, sort.c, sread.c, swrite.c, twarp.c

Parsing/processing of the sorted score during performance - rdscor.c and all
of the cscore files when -C is used.

Soundfiles - sfheader.c, libsnd.c (used to be many others but now handled by
libsndfile)

Many of the other files are at least somewhat self-explanatory.  The bulk of
the remaining files are of course all of the orchestra opcodes.  The easiest
way to locate a particular opcode is (or was) to look in entry1.c and
entry2.c and search for the name of the that opcode's performance
function(s).  Finding opcodes may be a little bit more difficult now that so
many of them are in plugins instead of being listed in the entry files.
(See Loadable_Opcodes.txt though).

In addition to the information in the Csound book, there is also an old
guide to the Csound internals at http://www.csounds.com/internals/index.html

There are several other minor subsystems that I did not detail above such as
the memory management stuff, library loading, internationalization, function
graph display, the utilities, etc.

As Michael mentioned, the internals can be very messy.  Understanding how an
opcode works in isolation and how to add new ones is the easiest aspect to
look at first.  I found main() and csoundMain() easy to follow, and score
parsing much more comprehensible than orchestra parsing ...

:)

Anthony Kozar
[hidden email]
http://akozar.spymac.net/

--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [Csnd] where do I start with CS5 code?

Michael Rempel
Thanks to both of you.

I have lots of stuff to chew on now, and at least half a clue about where I
am going.

Thanks,

Michael

-----Original Message-----
From: Anthony Kozar [mailto:[hidden email]]
Sent: Wednesday, May 11, 2005 10:51 PM
To: [hidden email]
Subject: Re: [Csnd] where do I start with CS5 code?


Not to replace, but to augment Michael's explanation:

Since most files do not have comments about their purpose ...
(please note that I am looking at a fairly old CVS version and I am not
typing the directory names)

Important defines, structs, etc. - cs.h

API - csound.h, csound.c (probably more now)

main() and argument decoding - csound_main.c, main.c, argdecode.c,
one_file.c (for CSDs)

Orchestra parsing and translation - otran.c, rdorch.c, express.c,
namedins.c, and probably others.

Performance - musmon.c, insert.c, linevent.c, oload.c ?, others ?

Score parsing, extraction and Carry, Tempo, and Sort operations - scsort.c,
scxtract.c, sort.c, sread.c, swrite.c, twarp.c

Parsing/processing of the sorted score during performance - rdscor.c and all
of the cscore files when -C is used.

Soundfiles - sfheader.c, libsnd.c (used to be many others but now handled by
libsndfile)

Many of the other files are at least somewhat self-explanatory.  The bulk of
the remaining files are of course all of the orchestra opcodes.  The easiest
way to locate a particular opcode is (or was) to look in entry1.c and
entry2.c and search for the name of the that opcode's performance
function(s).  Finding opcodes may be a little bit more difficult now that so
many of them are in plugins instead of being listed in the entry files.
(See Loadable_Opcodes.txt though).

In addition to the information in the Csound book, there is also an old
guide to the Csound internals at http://www.csounds.com/internals/index.html

There are several other minor subsystems that I did not detail above such as
the memory management stuff, library loading, internationalization, function
graph display, the utilities, etc.

As Michael mentioned, the internals can be very messy.  Understanding how an
opcode works in isolation and how to add new ones is the easiest aspect to
look at first.  I found main() and csoundMain() easy to follow, and score
parsing much more comprehensible than orchestra parsing ...

:)

Anthony Kozar
[hidden email]
http://akozar.spymac.net/

--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]

--
Send bugs reports to [hidden email]
              (or to http://www.cs.bath.ac.uk/cgi-bin/csound )
To unsubscribe, send email to [hidden email]
Loading...