Csound Csound-dev Csound-tekno Search About

Re: [Cs-dev] OSX CsoundVST issues

Date2005-10-28 08:12
Fromjpff@codemist.co.uk
SubjectRe: [Cs-dev] OSX CsoundVST issues
The main requirement I have is to have a command line program to which
I give an orchestra and score and generates a sound file.  It would be
nice if it could also generate sound in real time, and I could make
simple parameter adjustments to design the sound.

Secondary requirement is to be able to call csound from a C, C++ or
Java program to provide musical services, and those calls to control
parameters.  Actually I only want C, but the students seem to think
Java is useful.

Third requirement is that it should be easy to add new operations in C
to provide experimental operations.

==John ffitch


-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2005-10-28 09:11
FromVictor Lazzarini
SubjectRe: [Cs-dev] OSX CsoundVST issues
The Java wrappers that Michael added seem to be building OK. So I reckon
a Java program can be written as a frontend to Csound. It would be nice to
have a Java programmer to take that on board and provide an example frontend.

As far as I can see we can do the following things on a multiplatform basis:

1. libcsound C library
2. csound 'classic' command-line frontend
3. csoundapi~ PD class frontend
4. tclcsound frontend (cstclsh, cswish and  tclcsound extension module)
5. csnd python module
6. csnd.jar java module

and possibly (not tested on OSX): 7. flcsound, lua module

On Linux and Windows only:

8. CsoundVST

So both your primary and secondary requirements seem to be there.
Can you elaborate on your third?

I would add another one to the list: possibility of loading, initialising
and running opcodes from the API only.

Victor

At 08:12 28/10/2005, you wrote:
>Secondary requirement is to be able to call csound from a C, C++ or
>Java program to provide musical services, and those calls to control
>parameters.  Actually I only want C, but the students seem to think
>Java is useful.

Victor Lazzarini
Music Technology Laboratory
Music Department
National University of Ireland, Maynooth 



-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2005-10-28 09:28
FromIstvan Varga
SubjectRe: [Cs-dev] OSX CsoundVST issues
Victor Lazzarini wrote:

> I would add another one to the list: possibility of loading, initialising
> and running opcodes from the API only.

This may be tricky as the opcodes depend on a global environment, that is,
various members of the CSOUND structure, and expect the presence of a parent
instrument instance (for run-time parameters like the release flag, MIDI
channel, etc.) and instrument text (for compile time parameters like the
count, name, and type of arguments - a common example is the use of the
p->INOCOUNT and similar macros). So, to run an opcode directly through the
API, a fake environment with an instrument and instrument instance needs
to be set up, as well as several variables in CSOUND should be initialized;
this mode of operation probably cannot be mixed with normal performance on
the same Csound instance.
Nevertheless, some simple opcodes may work without problems (obviously,
there are many that do not make sense, like goto and anything related to
instument control).



-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2005-10-28 09:49
FromVictor Lazzarini
Subject[Cs-dev] opcode/instrument interface (was: CsoundVST OSX issues)
This is starting to sound as if, although tricky, might be
possible. Considering we avoid mixing the normal operation
mode and this one, in other words, have a dedicated instance
for this, would it be possible then to:

1. Create a fake instrument
2. load opcodes and organise the synthesis chain (so-called 'graph')
3. run performKsmps() [with a dummy score of say f0 1000)
4. send in realtime events.

?

Victor

At 09:28 28/10/2005, you wrote:
>This may be tricky as the opcodes depend on a global environment, that is,
>various members of the CSOUND structure, and expect the presence of a parent
>instrument instance (for run-time parameters like the release flag, MIDI
>channel, etc.) and instrument text (for compile time parameters like the
>count, name, and type of arguments - a common example is the use of the
>p->INOCOUNT and similar macros). So, to run an opcode directly through the
>API, a fake environment with an instrument and instrument instance needs
>to be set up, as well as several variables in CSOUND should be initialized;
>this mode of operation probably cannot be mixed with normal performance on
>the same Csound instance.
>Nevertheless, some simple opcodes may work without problems (obviously,
>there are many that do not make sense, like goto and anything related to
>instument control).

Victor Lazzarini
Music Technology Laboratory
Music Department
National University of Ireland, Maynooth 



-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2005-10-28 10:21
FromIstvan Varga
SubjectRe: [Cs-dev] opcode/instrument interface
Victor Lazzarini wrote:

> This is starting to sound as if, although tricky, might be
> possible. Considering we avoid mixing the normal operation
> mode and this one, in other words, have a dedicated instance
> for this, would it be possible then to:
> 
> 1. Create a fake instrument
> 2. load opcodes and organise the synthesis chain (so-called 'graph')
> 3. run performKsmps() [with a dummy score of say f0 1000)
> 4. send in realtime events.

This is not exactly what I thought of, I assumed that the new interface
would only allow for calling a single opcode at once to do some signal
processing. A chain of multiple opcodes and sensing real-time events is
a different issue as it basically means building a full instrument and
then performing it with csoundPerformKsmps(); in this case you could
probably just build an actual orchestra file (for example in a high level
language like Python) and perform that.


-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2005-10-28 10:33
FromVictor Lazzarini
SubjectRe: [Cs-dev] opcode/instrument interface
OK. let me reformulate. Loading single opcodes and running
is OK. But also what I had in mind was the possibility of
adding instruments to an already loaded orchestra, even
as csound performs other instruments.

I suppose it doesn't really matter if the instrument code is
actually written in Csound, because you can construct
the text code for such instruments using other languages;
but what I was thinking was to have API functions that could do that, so 
that we
could build an instrument only using the API, bypassing
the csound orchestra language.

Victor


At 10:21 28/10/2005, you wrote:
>Victor Lazzarini wrote:
>
>>This is starting to sound as if, although tricky, might be
>>possible. Considering we avoid mixing the normal operation
>>mode and this one, in other words, have a dedicated instance
>>for this, would it be possible then to:
>>1. Create a fake instrument
>>2. load opcodes and organise the synthesis chain (so-called 'graph')
>>3. run performKsmps() [with a dummy score of say f0 1000)
>>4. send in realtime events.
>
>This is not exactly what I thought of, I assumed that the new interface
>would only allow for calling a single opcode at once to do some signal
>processing. A chain of multiple opcodes and sensing real-time events is
>a different issue as it basically means building a full instrument and
>then performing it with csoundPerformKsmps(); in this case you could
>probably just build an actual orchestra file (for example in a high level
>language like Python) and perform that.
>
>
>-------------------------------------------------------
>This SF.Net email is sponsored by the JBoss Inc.
>Get Certified Today * Register for a JBoss Training Course
>Free Certification Exam for All Training Attendees Through End of 2005
>Visit http://www.jboss.com/services/certification for more information
>_______________________________________________
>Csound-devel mailing list
>Csound-devel@lists.sourceforge.net
>https://lists.sourceforge.net/lists/listinfo/csound-devel

Victor Lazzarini
Music Technology Laboratory
Music Department
National University of Ireland, Maynooth 



-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2005-10-28 10:54
FromIstvan Varga
SubjectRe: [Cs-dev] opcode/instrument interface
Victor Lazzarini wrote:

> OK. let me reformulate. Loading single opcodes and running
> is OK. But also what I had in mind was the possibility of
> adding instruments to an already loaded orchestra, even
> as csound performs other instruments.

I do not think this is possible without major changes. Unfortunately
most of the relevant code was designed and written assuming that you
load and compile (in multiple passes) an orchestra before performance,
without allowing for incremental updates later.

> but what I was thinking was to have API functions that could do that, so 
> that we could build an instrument only using the API, bypassing
> the csound orchestra language.

But is this really much easier than just building an actual orchestra
file, particularly given that building an instrument at a low level,
bypassing the orchestra language, assumes knowledge of Csound internals
that may possibly even change in future versions ?


-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2005-10-28 11:47
FromVictor Lazzarini
SubjectRe: [Cs-dev] opcode/instrument interface
Probably not.

At 10:54 28/10/2005, you wrote:
>But is this really much easier than just building an actual orchestra
>file, particularly given that building an instrument at a low level,
>bypassing the orchestra language, assumes knowledge of Csound internals
>that may possibly even change in future versions ?

Victor Lazzarini
Music Technology Laboratory
Music Department
National University of Ireland, Maynooth 



-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2005-10-28 13:40
FromSteven Yi
SubjectRe: [Cs-dev] OSX CsoundVST issues
AttachmentsNone  

Date2005-10-28 14:07
FromVictor Lazzarini
SubjectRe: [Cs-dev] OSX CsoundVST issues
Yes please!

Victor
At 13:40 28/10/2005, you wrote:
>Hi Victor,
>
>On 10/28/05, Victor Lazzarini  wrote:
> > The Java wrappers that Michael added seem to be building OK. So I reckon
> > a Java program can be written as a frontend to Csound. It would be nice to
> > have a Java programmer to take that on board and provide an example 
> frontend.
>
>Well, I think I could put one together without too much trouble.
>It'll be good for me to try out anyways as I'll eventually be trying
>out integrating with blue sometime as a sort of "if csnd.jar exists,
>enable these other features" option.  Just need to be able to compile
>all this on Windows.  Shall I put something together and put it in the
>frontends directory?
>
>steven
>
>
>-------------------------------------------------------
>This SF.Net email is sponsored by the JBoss Inc.
>Get Certified Today * Register for a JBoss Training Course
>Free Certification Exam for All Training Attendees Through End of 2005
>Visit http://www.jboss.com/services/certification for more information
>_______________________________________________
>Csound-devel mailing list
>Csound-devel@lists.sourceforge.net
>https://lists.sourceforge.net/lists/listinfo/csound-devel

Victor Lazzarini
Music Technology Laboratory
Music Department
National University of Ireland, Maynooth 



-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net