Csound Csound-dev Csound-tekno Search About

[Csnd] Aeolus with Csound

Date2010-02-26 19:05
FromMichael Gogins
Subject[Csnd] Aeolus with Csound
For a long time I have known about Aeolus
(http://www.kokkinizita.net/linuxaudio/aeolus/index.html), loved its
sound, and wanted to use it. Now that I have a Linux computer, I
actually have started using it.

Aeolus is a standalone program that can use ALSA or Jack. Currently I
am generating scores using CsoundAC, which saves them as MIDI files.
Then I import them into Rosegarden, start up Aeolus, and connect
everything with qjackctl. This works fine, but is tedious.

Also, I want to be able to combine Aeolus' sound with Csound instruments.

My big questions:

(1) Is anyone out there using Aeolus with Csound?

(2) If so, how?

(3) Are the DSSI opcodes in Csound usable?

(4) Is there any way to make Jack clients appear inside Csound as
opcodes, this both to get control information out from Csound into the
Jack client, and to get audio out from the Jack client back into
Csound?

If there is no such way, I may create a set of jack opcodes for
Csound, that would allow Csound orchestras to hook into the Jack
network and even hook other applications into the network and route
them.

Thanks to Fons Adriaensen for making such a great sounding instrument.
If you read this, here's a feature request: please make the core of
Aeolus, the part that reads the stops and generates the sound, a
library so that I can make it into a Csound opcode and a VST plugin.
Or give me some hints on hacking the code to do this.

-- 
Michael Gogins
Irreducible Productions
http://www.michael-gogins.com
Michael dot Gogins at gmail dot com

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel

Date2010-02-26 19:47
Fromfons@kokkinizita.net
SubjectRe: [Cs-dev] Aeolus with Csound
AttachmentsNone  

Date2010-02-26 20:08
FromMichael Gogins
SubjectRe: [Cs-dev] Aeolus with Csound
I understand your animus towards Windows and share it to some extent,
though I wouldn't actively resist it.

I haven't tried it yet, but I will try setting up Jack input and
output between Csound and Aeolus. I have just looked at the Csound
manual and it looks like it may be possible to do what I want. Things
have changed since the last time I looked at Jack and Csound, it used
to require a separate program, now Csound proper supports Jack.

One potential problem I see is that most of my pieces do not run in
real time, they are slower, so I have to render to a soundfile.

Is it possible to render Jack output to a soundfile? Or is possible to
just hook up Aeolus to Csound and run Jack out of real time and have
Csound write the soundfile?

Regards,
Mike


On Fri, Feb 26, 2010 at 2:47 PM,   wrote:
> On Fri, Feb 26, 2010 at 02:05:00PM -0500, Michael Gogins wrote:
>
>> (4) Is there any way to make Jack clients appear inside Csound as
>> opcodes, this both to get control information out from Csound into the
>> Jack client, and to get audio out from the Jack client back into
>> Csound?
>
> Csound can have any number (AFAIK) of jack inputs and
> outputs, and it can send MIDI. What more do you need ?
> I'm not a Csound specialist, but looking at the manual
> I get the impression that it should be quite easy to
> create an instrument that sends MIDI to Aeolus and
> receives audio via Jack.
>
>> Thanks to Fons Adriaensen for making such a great sounding instrument.
>> If you read this, here's a feature request: please make the core of
>> Aeolus, the part that reads the stops and generates the sound, a
>> library so that I can make it into a Csound opcode and a VST plugin.
>> Or give me some hints on hacking the code to do this.
>
> There's no need to integrate Aeolus into Csound, see above.
> As to VST, I will resist that as long as I live, as I will
> everything that would make Aeolus usable on Windows.
>
> Ciao,
>
> --
> FA
>
> O tu, che porte, correndo si ?
> E guerra e morte !
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel
>



-- 
Michael Gogins
Irreducible Productions
http://www.michael-gogins.com
Michael dot Gogins at gmail dot com

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2010-02-26 20:18
FromMichael Bechard
Subject[Csnd] Re: Aeolus with Csound
Hi Michael, I've tinkered with Aeolus and I too love it's sound. One question for you: by "using Aeolus with Csound" do you mean being able to control Aeolus with Csound? Or access to the sound it's producing in realtime? Or both?

>From what I can tell, I believe control of Aeolus within Csound should be doable via realtime MIDI event generation and hooking Csound's MIDI events up to Aeolus. You mentioned stops, though, and it sounds like you're looking for more realtime control of the inner workings of Aeolus. However, rather than having Fons write a library that only a programmer would be able to use (in a rather cumbersome manner), if he were to work that kind of control into his software I'd rather see it implemented via MIDI control events, and therefore make it controllable by any number of MIDI apps out  there.

Access to the realtime audio output of Aeolus is another issue, of course, and I like the idea of having Csound being able to have have both inputs and outputs in JACK (currently it only has outputs, I believe).

Michael Bechard



----- Original Message ----
From: Michael Gogins 
To: Csound ; Developer discussions 
Sent: Fri, February 26, 2010 1:05:00 PM
Subject: [Csnd] Aeolus with Csound

For a long time I have known about Aeolus
(http://www.kokkinizita.net/linuxaudio/aeolus/index.html), loved its
sound, and wanted to use it. Now that I have a Linux computer, I
actually have started using it.

Aeolus is a standalone program that can use ALSA or Jack. Currently I
am generating scores using CsoundAC, which saves them as MIDI files.
Then I import them into Rosegarden, start up Aeolus, and connect
everything with qjackctl. This works fine, but is tedious.

Also, I want to be able to combine Aeolus' sound with Csound instruments.

My big questions:

(1) Is anyone out there using Aeolus with Csound?

(2) If so, how?

(3) Are the DSSI opcodes in Csound usable?

(4) Is there any way to make Jack clients appear inside Csound as
opcodes, this both to get control information out from Csound into the
Jack client, and to get audio out from the Jack client back into
Csound?

If there is no such way, I may create a set of jack opcodes for
Csound, that would allow Csound orchestras to hook into the Jack
network and even hook other applications into the network and route
them.

Thanks to Fons Adriaensen for making such a great sounding instrument.
If you read this, here's a feature request: please make the core of
Aeolus, the part that reads the stops and generates the sound, a
library so that I can make it into a Csound opcode and a VST plugin.
Or give me some hints on hacking the code to do this.

Date2010-02-26 20:24
FromMichael Gogins
Subject[Csnd] Re: Re: Aeolus with Csound
I do not often work in real time.

I need to run Csound, send notes from Csound to Aeolus, receive the
audio from Aeolus back in Csound, and let Csound mix it with its own
sounds and write it to a soundfile. This will be happening more slowly
than real time.

About Jack inputs in Csound, if that is not currently possible, I will
try to implement it.

Regards,
Mike

On Fri, Feb 26, 2010 at 3:18 PM, Michael Bechard  wrote:
> Hi Michael, I've tinkered with Aeolus and I too love it's sound. One question for you: by "using Aeolus with Csound" do you mean being able to control Aeolus with Csound? Or access to the sound it's producing in realtime? Or both?
>
> From what I can tell, I believe control of Aeolus within Csound should be doable via realtime MIDI event generation and hooking Csound's MIDI events up to Aeolus. You mentioned stops, though, and it sounds like you're looking for more realtime control of the inner workings of Aeolus. However, rather than having Fons write a library that only a programmer would be able to use (in a rather cumbersome manner), if he were to work that kind of control into his software I'd rather see it implemented via MIDI control events, and therefore make it controllable by any number of MIDI apps out  there.
>
> Access to the realtime audio output of Aeolus is another issue, of course, and I like the idea of having Csound being able to have have both inputs and outputs in JACK (currently it only has outputs, I believe).
>
> Michael Bechard
>
>
>
> ----- Original Message ----
> From: Michael Gogins 
> To: Csound ; Developer discussions 
> Sent: Fri, February 26, 2010 1:05:00 PM
> Subject: [Csnd] Aeolus with Csound
>
> For a long time I have known about Aeolus
> (http://www.kokkinizita.net/linuxaudio/aeolus/index.html), loved its
> sound, and wanted to use it. Now that I have a Linux computer, I
> actually have started using it.
>
> Aeolus is a standalone program that can use ALSA or Jack. Currently I
> am generating scores using CsoundAC, which saves them as MIDI files.
> Then I import them into Rosegarden, start up Aeolus, and connect
> everything with qjackctl. This works fine, but is tedious.
>
> Also, I want to be able to combine Aeolus' sound with Csound instruments.
>
> My big questions:
>
> (1) Is anyone out there using Aeolus with Csound?
>
> (2) If so, how?
>
> (3) Are the DSSI opcodes in Csound usable?
>
> (4) Is there any way to make Jack clients appear inside Csound as
> opcodes, this both to get control information out from Csound into the
> Jack client, and to get audio out from the Jack client back into
> Csound?
>
> If there is no such way, I may create a set of jack opcodes for
> Csound, that would allow Csound orchestras to hook into the Jack
> network and even hook other applications into the network and route
> them.
>
> Thanks to Fons Adriaensen for making such a great sounding instrument.
> If you read this, here's a feature request: please make the core of
> Aeolus, the part that reads the stops and generates the sound, a
> library so that I can make it into a Csound opcode and a VST plugin.
> Or give me some hints on hacking the code to do this.
>
> --
> Michael Gogins
> Irreducible Productions
> http://www.michael-gogins.com
> Michael dot Gogins at gmail dot com
>
>
> Send bugs reports to the Sourceforge bug tracker
>            https://sourceforge.net/tracker/?group_id=81968&atid=564599
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"
>
>
>
>
>
> Send bugs reports to the Sourceforge bug tracker
>            https://sourceforge.net/tracker/?group_id=81968&atid=564599
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"
>
>



-- 
Michael Gogins
Irreducible Productions
http://www.michael-gogins.com
Michael dot Gogins at gmail dot com


Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"


Date2010-02-26 20:30
FromDave Phillips
Subject[Csnd] Re: Re: Aeolus with Csound
Michael Bechard wrote:
> Access to the realtime audio output of Aeolus is another issue, of course, and I like the idea of having Csound being able to have have both inputs and outputs in JACK (currently it only has outputs, I believe).
>
>   

This works for me:

    csound -+rtaudio=jack -odac:system:playback_ -iadc:system:capture_

I/O to & from Csound via JACK. It's sweet.

And yes, Aeolus is incredible. :)

Best,

dp



Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"

Date2010-02-26 20:45
FromMichael Gogins
Subject[Csnd] Re: Re: Re: Aeolus with Csound
That makes sense for real time, but my question is not about real time.

Is there any way of making these connections without system:playback_
so that it will work out of real time?

Regards,
Mike

On Fri, Feb 26, 2010 at 3:30 PM, Dave Phillips  wrote:
> Michael Bechard wrote:
>>
>> Access to the realtime audio output of Aeolus is another issue, of course,
>> and I like the idea of having Csound being able to have have both inputs and
>> outputs in JACK (currently it only has outputs, I believe).
>>
>>
>
> This works for me:
>
>   csound -+rtaudio=jack -odac:system:playback_ -iadc:system:capture_
>
> I/O to & from Csound via JACK. It's sweet.
>
> And yes, Aeolus is incredible. :)
>
> Best,
>
> dp
>
>
>
> Send bugs reports to the Sourceforge bug tracker
>           https://sourceforge.net/tracker/?group_id=81968&atid=564599
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe
> csound"
>
>



-- 
Michael Gogins
Irreducible Productions
http://www.michael-gogins.com
Michael dot Gogins at gmail dot com


Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"


Date2010-02-26 21:22
Fromfons@kokkinizita.net
SubjectRe: [Cs-dev] Aeolus with Csound
AttachmentsNone  

Date2010-02-26 21:36
Fromfons@kokkinizita.net
SubjectRe: [Cs-dev] [Csnd] Aeolus with Csound
AttachmentsNone  

Date2010-02-26 21:42
FromMichael Gogins
SubjectRe: [Cs-dev] Aeolus with Csound
Thanks for the information. This tells me what I needed to know.

The freewheeling mode is exactly what I want.

I will see if Csound can work this way; and if not, I will see if I
can change Csound so that it does work.

Regards,
Mike

On Fri, Feb 26, 2010 at 4:22 PM,   wrote:
> On Fri, Feb 26, 2010 at 03:08:31PM -0500, Michael Gogins wrote:
>
>> Is it possible to render Jack output to a soundfile?
>
> The question suggests that you may have the wrong idea of
> what Jack is. Jack connects audio apps to each other and
> to the soundcard. That's all it does. It does not by itself
> read or write files. There are applications that can record
> any input they get from Jack, and play it back to Jack later.
>
>> Or is possible to just hook up Aeolus to Csound and run
>> Jack out of real time and have Csound write the soundfile?
>
> Jack can run out of real time, that is the so-called
> 'freewheeling' mode. In this mode Jack will disconnect
> from the sound card and run the clients 'as fast as they
> can'. It requires that processing in a client is done
> strictly in sync with Jack's callback, and that is not
> the case in Csound AFAIK. So I don't think it will work.
>
> Ciao,
>
> --
> FA
>
> O tu, che porte, correndo si ?
> E guerra e morte !
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel
>



-- 
Michael Gogins
Irreducible Productions
http://www.michael-gogins.com
Michael dot Gogins at gmail dot com

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2010-02-26 22:03
FromMichael Gogins
SubjectRe: [Cs-dev] Aeolus with Csound
Well, I will look at the code and see if it can be improved.

If the Csound code can be improved to eliminate or minimize buffering,
then I think it might be useful to have a set of opcodes for Jack
input and output in Csound, including the ability to dynamically
create and control Jack connections, rather than depending on the
command line for this.

Regards,
Mike

On Fri, Feb 26, 2010 at 4:42 PM, Michael Gogins
 wrote:
> Thanks for the information. This tells me what I needed to know.
>
> The freewheeling mode is exactly what I want.
>
> I will see if Csound can work this way; and if not, I will see if I
> can change Csound so that it does work.
>
> Regards,
> Mike
>
> On Fri, Feb 26, 2010 at 4:22 PM,   wrote:
>> On Fri, Feb 26, 2010 at 03:08:31PM -0500, Michael Gogins wrote:
>>
>>> Is it possible to render Jack output to a soundfile?
>>
>> The question suggests that you may have the wrong idea of
>> what Jack is. Jack connects audio apps to each other and
>> to the soundcard. That's all it does. It does not by itself
>> read or write files. There are applications that can record
>> any input they get from Jack, and play it back to Jack later.
>>
>>> Or is possible to just hook up Aeolus to Csound and run
>>> Jack out of real time and have Csound write the soundfile?
>>
>> Jack can run out of real time, that is the so-called
>> 'freewheeling' mode. In this mode Jack will disconnect
>> from the sound card and run the clients 'as fast as they
>> can'. It requires that processing in a client is done
>> strictly in sync with Jack's callback, and that is not
>> the case in Csound AFAIK. So I don't think it will work.
>>
>> Ciao,
>>
>> --
>> FA
>>
>> O tu, che porte, correndo si ?
>> E guerra e morte !
>>
>> ------------------------------------------------------------------------------
>> Download Intel® Parallel Studio Eval
>> Try the new software tools for yourself. Speed compiling, find bugs
>> proactively, and fine-tune applications for parallel performance.
>> See why Intel Parallel Studio got high marks during beta.
>> http://p.sf.net/sfu/intel-sw-dev
>> _______________________________________________
>> Csound-devel mailing list
>> Csound-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>
>
>
>
> --
> Michael Gogins
> Irreducible Productions
> http://www.michael-gogins.com
> Michael dot Gogins at gmail dot com
>



-- 
Michael Gogins
Irreducible Productions
http://www.michael-gogins.com
Michael dot Gogins at gmail dot com

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2010-02-26 22:03
FromVictor Lazzarini
SubjectRe: [Cs-dev] Aeolus with Csound
As far as I know, Csound's Jack Module cannot use freewheel.

Victor

On 26 Feb 2010, at 21:42, Michael Gogins wrote:

> Thanks for the information. This tells me what I needed to know.
>
> The freewheeling mode is exactly what I want.
>
> I will see if Csound can work this way; and if not, I will see if I
> can change Csound so that it does work.
>
> Regards,
> Mike
>
> On Fri, Feb 26, 2010 at 4:22 PM,   wrote:
>> On Fri, Feb 26, 2010 at 03:08:31PM -0500, Michael Gogins wrote:
>>
>>> Is it possible to render Jack output to a soundfile?
>>
>> The question suggests that you may have the wrong idea of
>> what Jack is. Jack connects audio apps to each other and
>> to the soundcard. That's all it does. It does not by itself
>> read or write files. There are applications that can record
>> any input they get from Jack, and play it back to Jack later.
>>
>>> Or is possible to just hook up Aeolus to Csound and run
>>> Jack out of real time and have Csound write the soundfile?
>>
>> Jack can run out of real time, that is the so-called
>> 'freewheeling' mode. In this mode Jack will disconnect
>> from the sound card and run the clients 'as fast as they
>> can'. It requires that processing in a client is done
>> strictly in sync with Jack's callback, and that is not
>> the case in Csound AFAIK. So I don't think it will work.
>>
>> Ciao,
>>
>> --
>> FA
>>
>> O tu, che porte, correndo si ?
>> E guerra e morte !
>>
>> ------------------------------------------------------------------------------
>> Download Intel® Parallel Studio Eval
>> Try the new software tools for yourself. Speed compiling, find bugs
>> proactively, and fine-tune applications for parallel performance.
>> See why Intel Parallel Studio got high marks during beta.
>> http://p.sf.net/sfu/intel-sw-dev
>> _______________________________________________
>> Csound-devel mailing list
>> Csound-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>
>
>
>
> -- 
> Michael Gogins
> Irreducible Productions
> http://www.michael-gogins.com
> Michael dot Gogins at gmail dot com
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel


------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2010-02-26 22:05
FromMichael Gogins
SubjectRe: [Cs-dev] Aeolus with Csound
Why not?

Regards,
Mike

On Fri, Feb 26, 2010 at 5:03 PM, Victor Lazzarini
 wrote:
> As far as I know, Csound's Jack Module cannot use freewheel.
>
> Victor
>
> On 26 Feb 2010, at 21:42, Michael Gogins wrote:
>
>> Thanks for the information. This tells me what I needed to know.
>>
>> The freewheeling mode is exactly what I want.
>>
>> I will see if Csound can work this way; and if not, I will see if I
>> can change Csound so that it does work.
>>
>> Regards,
>> Mike
>>
>> On Fri, Feb 26, 2010 at 4:22 PM,   wrote:
>>> On Fri, Feb 26, 2010 at 03:08:31PM -0500, Michael Gogins wrote:
>>>
>>>> Is it possible to render Jack output to a soundfile?
>>>
>>> The question suggests that you may have the wrong idea of
>>> what Jack is. Jack connects audio apps to each other and
>>> to the soundcard. That's all it does. It does not by itself
>>> read or write files. There are applications that can record
>>> any input they get from Jack, and play it back to Jack later.
>>>
>>>> Or is possible to just hook up Aeolus to Csound and run
>>>> Jack out of real time and have Csound write the soundfile?
>>>
>>> Jack can run out of real time, that is the so-called
>>> 'freewheeling' mode. In this mode Jack will disconnect
>>> from the sound card and run the clients 'as fast as they
>>> can'. It requires that processing in a client is done
>>> strictly in sync with Jack's callback, and that is not
>>> the case in Csound AFAIK. So I don't think it will work.
>>>
>>> Ciao,
>>>
>>> --
>>> FA
>>>
>>> O tu, che porte, correndo si ?
>>> E guerra e morte !
>>>
>>> ------------------------------------------------------------------------------
>>> Download Intel® Parallel Studio Eval
>>> Try the new software tools for yourself. Speed compiling, find bugs
>>> proactively, and fine-tune applications for parallel performance.
>>> See why Intel Parallel Studio got high marks during beta.
>>> http://p.sf.net/sfu/intel-sw-dev
>>> _______________________________________________
>>> Csound-devel mailing list
>>> Csound-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>>
>>
>>
>>
>> --
>> Michael Gogins
>> Irreducible Productions
>> http://www.michael-gogins.com
>> Michael dot Gogins at gmail dot com
>>
>> ------------------------------------------------------------------------------
>> Download Intel® Parallel Studio Eval
>> Try the new software tools for yourself. Speed compiling, find bugs
>> proactively, and fine-tune applications for parallel performance.
>> See why Intel Parallel Studio got high marks during beta.
>> http://p.sf.net/sfu/intel-sw-dev
>> _______________________________________________
>> Csound-devel mailing list
>> Csound-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel
>



-- 
Michael Gogins
Irreducible Productions
http://www.michael-gogins.com
Michael dot Gogins at gmail dot com

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2010-02-26 22:14
FromVictor Lazzarini
SubjectRe: [Cs-dev] Aeolus with Csound
Because as it is it cannot be guaranteed to run in sync with the Jack  
callback. This is my impression when looking at the code, but I may be  
wrong. I think a freewheel-capable client should not have the kind of  
intermediary buffering with thread locks we have in Csound. The way to  
do this would be to have a client that calls PerformKsmps() or  
PerformBuffer() from inside the jack callback. Again, this is my  
impression, I might be wrong; Fons can correct me if I am.

Victor
On 26 Feb 2010, at 22:05, Michael Gogins wrote:

> Why not?
>
> Regards,
> Mike
>
> On Fri, Feb 26, 2010 at 5:03 PM, Victor Lazzarini
>  wrote:
>> As far as I know, Csound's Jack Module cannot use freewheel.
>>
>> Victor
>>
>> On 26 Feb 2010, at 21:42, Michael Gogins wrote:
>>
>>> Thanks for the information. This tells me what I needed to know.
>>>
>>> The freewheeling mode is exactly what I want.
>>>
>>> I will see if Csound can work this way; and if not, I will see if I
>>> can change Csound so that it does work.
>>>
>>> Regards,
>>> Mike
>>>
>>> On Fri, Feb 26, 2010 at 4:22 PM,   wrote:
>>>> On Fri, Feb 26, 2010 at 03:08:31PM -0500, Michael Gogins wrote:
>>>>
>>>>> Is it possible to render Jack output to a soundfile?
>>>>
>>>> The question suggests that you may have the wrong idea of
>>>> what Jack is. Jack connects audio apps to each other and
>>>> to the soundcard. That's all it does. It does not by itself
>>>> read or write files. There are applications that can record
>>>> any input they get from Jack, and play it back to Jack later.
>>>>
>>>>> Or is possible to just hook up Aeolus to Csound and run
>>>>> Jack out of real time and have Csound write the soundfile?
>>>>
>>>> Jack can run out of real time, that is the so-called
>>>> 'freewheeling' mode. In this mode Jack will disconnect
>>>> from the sound card and run the clients 'as fast as they
>>>> can'. It requires that processing in a client is done
>>>> strictly in sync with Jack's callback, and that is not
>>>> the case in Csound AFAIK. So I don't think it will work.
>>>>
>>>> Ciao,
>>>>
>>>> --
>>>> FA
>>>>
>>>> O tu, che porte, correndo si ?
>>>> E guerra e morte !
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Download Intel® Parallel Studio Eval
>>>> Try the new software tools for yourself. Speed compiling, find bugs
>>>> proactively, and fine-tune applications for parallel performance.
>>>> See why Intel Parallel Studio got high marks during beta.
>>>> http://p.sf.net/sfu/intel-sw-dev
>>>> _______________________________________________
>>>> Csound-devel mailing list
>>>> Csound-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>>>
>>>
>>>
>>>
>>> --
>>> Michael Gogins
>>> Irreducible Productions
>>> http://www.michael-gogins.com
>>> Michael dot Gogins at gmail dot com
>>>
>>> ------------------------------------------------------------------------------
>>> Download Intel® Parallel Studio Eval
>>> Try the new software tools for yourself. Speed compiling, find bugs
>>> proactively, and fine-tune applications for parallel performance.
>>> See why Intel Parallel Studio got high marks during beta.
>>> http://p.sf.net/sfu/intel-sw-dev
>>> _______________________________________________
>>> Csound-devel mailing list
>>> Csound-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>
>>
>> ------------------------------------------------------------------------------
>> Download Intel® Parallel Studio Eval
>> Try the new software tools for yourself. Speed compiling, find bugs
>> proactively, and fine-tune applications for parallel performance.
>> See why Intel Parallel Studio got high marks during beta.
>> http://p.sf.net/sfu/intel-sw-dev
>> _______________________________________________
>> Csound-devel mailing list
>> Csound-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>
>
>
>
> -- 
> Michael Gogins
> Irreducible Productions
> http://www.michael-gogins.com
> Michael dot Gogins at gmail dot com
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel


------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2010-02-26 22:47
Fromfons@kokkinizita.net
SubjectRe: [Cs-dev] Aeolus with Csound
AttachmentsNone  

Date2010-02-26 22:58
Fromfons@kokkinizita.net
SubjectRe: [Cs-dev] Aeolus with Csound
AttachmentsNone  

Date2010-02-26 23:06
FromVictor Lazzarini
SubjectRe: [Cs-dev] Aeolus with Csound
I guess that question has no simple answer. It probably depends on the  
CSD and the opcodes it uses. Some opcodes are not RT-safe (I am  
thinking here of diskin et al), but maybe there are not too many of  
them.

Victor

On 26 Feb 2010, at 22:58, fons@kokkinizita.net wrote:

> On Fri, Feb 26, 2010 at 10:14:58PM +0000, Victor Lazzarini wrote:
>
>> Because as it is it cannot be guaranteed to run in sync with the Jack
>> callback. This is my impression when looking at the code, but I may  
>> be
>> wrong. I think a freewheel-capable client should not have the kind of
>> intermediary buffering with thread locks we have in Csound. The way  
>> to
>> do this would be to have a client that calls PerformKsmps() or
>> PerformBuffer() from inside the jack callback. Again, this is my
>> impression, I might be wrong; Fons can correct me if I am.
>
> Almost correct :-). A freewheeling client *can* have
> buffering, but this must be 'rigid' - no escape routes
> when data is not ready or when there is not enough space
> to write it - just wait instead. But in the end that means
> that things could work as well without buffering (or with
> just the amount to cover for unfortunate ksmps / period
> combinations).
>
> How RT-safe is Csound's DSP code in fact ?
>
> Ciao,
>
> -- 
> FA
>
> O tu, che porte, correndo si ?
> E guerra e morte !
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel


------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2010-02-26 23:07
FromMichael Gogins
SubjectRe: [Cs-dev] Aeolus with Csound
It may be quite feasible to use thread locks without any intermediate
buffering. I did this in an earlier version of CsoundVST and it worked
fine. Basically, the CsoundVST process callback simply copied data out
of Csound into the host buffer, then released a lock to permit another
thread to use Csound to compute the next buffer. After computing that
one buffer, the Csound thread just waited to be unlocked by the
callback again. The locking was so efficient that the overhead was not
perceptible, and the thread switching did not seem to cause any more
dropouts than running Csound inside the callback. I changed the code
just because it was simpler to call performKsmps as required to refill
the buffer in the callback. Now that I think about it, the thread
switching version might be better because it would be more flexible
with respect to buffer sizes, balancing the load on the CPU or CPUs,
and so on.

It also should be possible to modify Csound to run in a callback mode
if necessary.

Regards,
Mike

On Fri, Feb 26, 2010 at 5:14 PM, Victor Lazzarini
 wrote:
> Because as it is it cannot be guaranteed to run in sync with the Jack
> callback. This is my impression when looking at the code, but I may be
> wrong. I think a freewheel-capable client should not have the kind of
> intermediary buffering with thread locks we have in Csound. The way to
> do this would be to have a client that calls PerformKsmps() or
> PerformBuffer() from inside the jack callback. Again, this is my
> impression, I might be wrong; Fons can correct me if I am.
>
> Victor
> On 26 Feb 2010, at 22:05, Michael Gogins wrote:
>
>> Why not?
>>
>> Regards,
>> Mike
>>
>> On Fri, Feb 26, 2010 at 5:03 PM, Victor Lazzarini
>>  wrote:
>>> As far as I know, Csound's Jack Module cannot use freewheel.
>>>
>>> Victor
>>>
>>> On 26 Feb 2010, at 21:42, Michael Gogins wrote:
>>>
>>>> Thanks for the information. This tells me what I needed to know.
>>>>
>>>> The freewheeling mode is exactly what I want.
>>>>
>>>> I will see if Csound can work this way; and if not, I will see if I
>>>> can change Csound so that it does work.
>>>>
>>>> Regards,
>>>> Mike
>>>>
>>>> On Fri, Feb 26, 2010 at 4:22 PM,   wrote:
>>>>> On Fri, Feb 26, 2010 at 03:08:31PM -0500, Michael Gogins wrote:
>>>>>
>>>>>> Is it possible to render Jack output to a soundfile?
>>>>>
>>>>> The question suggests that you may have the wrong idea of
>>>>> what Jack is. Jack connects audio apps to each other and
>>>>> to the soundcard. That's all it does. It does not by itself
>>>>> read or write files. There are applications that can record
>>>>> any input they get from Jack, and play it back to Jack later.
>>>>>
>>>>>> Or is possible to just hook up Aeolus to Csound and run
>>>>>> Jack out of real time and have Csound write the soundfile?
>>>>>
>>>>> Jack can run out of real time, that is the so-called
>>>>> 'freewheeling' mode. In this mode Jack will disconnect
>>>>> from the sound card and run the clients 'as fast as they
>>>>> can'. It requires that processing in a client is done
>>>>> strictly in sync with Jack's callback, and that is not
>>>>> the case in Csound AFAIK. So I don't think it will work.
>>>>>
>>>>> Ciao,
>>>>>
>>>>> --
>>>>> FA
>>>>>
>>>>> O tu, che porte, correndo si ?
>>>>> E guerra e morte !
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> Download Intel® Parallel Studio Eval
>>>>> Try the new software tools for yourself. Speed compiling, find bugs
>>>>> proactively, and fine-tune applications for parallel performance.
>>>>> See why Intel Parallel Studio got high marks during beta.
>>>>> http://p.sf.net/sfu/intel-sw-dev
>>>>> _______________________________________________
>>>>> Csound-devel mailing list
>>>>> Csound-devel@lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Michael Gogins
>>>> Irreducible Productions
>>>> http://www.michael-gogins.com
>>>> Michael dot Gogins at gmail dot com
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Download Intel® Parallel Studio Eval
>>>> Try the new software tools for yourself. Speed compiling, find bugs
>>>> proactively, and fine-tune applications for parallel performance.
>>>> See why Intel Parallel Studio got high marks during beta.
>>>> http://p.sf.net/sfu/intel-sw-dev
>>>> _______________________________________________
>>>> Csound-devel mailing list
>>>> Csound-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Download Intel® Parallel Studio Eval
>>> Try the new software tools for yourself. Speed compiling, find bugs
>>> proactively, and fine-tune applications for parallel performance.
>>> See why Intel Parallel Studio got high marks during beta.
>>> http://p.sf.net/sfu/intel-sw-dev
>>> _______________________________________________
>>> Csound-devel mailing list
>>> Csound-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>>
>>
>>
>>
>> --
>> Michael Gogins
>> Irreducible Productions
>> http://www.michael-gogins.com
>> Michael dot Gogins at gmail dot com
>>
>> ------------------------------------------------------------------------------
>> Download Intel® Parallel Studio Eval
>> Try the new software tools for yourself. Speed compiling, find bugs
>> proactively, and fine-tune applications for parallel performance.
>> See why Intel Parallel Studio got high marks during beta.
>> http://p.sf.net/sfu/intel-sw-dev
>> _______________________________________________
>> Csound-devel mailing list
>> Csound-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel
>



-- 
Michael Gogins
Irreducible Productions
http://www.michael-gogins.com
Michael dot Gogins at gmail dot com

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2010-02-26 23:11
FromMichael Gogins
SubjectRe: [Cs-dev] Aeolus with Csound
I should add, typically in CsoundVST ksmps is 15 or 20 frames, but the
VST buffer seems to be about 5 or 10 times that big, though of
variable size (I think some hosts start a new buffer whenever a new
control event occurs).

Regards,
Mike

On Fri, Feb 26, 2010 at 6:07 PM, Michael Gogins
 wrote:
> It may be quite feasible to use thread locks without any intermediate
> buffering. I did this in an earlier version of CsoundVST and it worked
> fine. Basically, the CsoundVST process callback simply copied data out
> of Csound into the host buffer, then released a lock to permit another
> thread to use Csound to compute the next buffer. After computing that
> one buffer, the Csound thread just waited to be unlocked by the
> callback again. The locking was so efficient that the overhead was not
> perceptible, and the thread switching did not seem to cause any more
> dropouts than running Csound inside the callback. I changed the code
> just because it was simpler to call performKsmps as required to refill
> the buffer in the callback. Now that I think about it, the thread
> switching version might be better because it would be more flexible
> with respect to buffer sizes, balancing the load on the CPU or CPUs,
> and so on.
>
> It also should be possible to modify Csound to run in a callback mode
> if necessary.
>
> Regards,
> Mike
>
> On Fri, Feb 26, 2010 at 5:14 PM, Victor Lazzarini
>  wrote:
>> Because as it is it cannot be guaranteed to run in sync with the Jack
>> callback. This is my impression when looking at the code, but I may be
>> wrong. I think a freewheel-capable client should not have the kind of
>> intermediary buffering with thread locks we have in Csound. The way to
>> do this would be to have a client that calls PerformKsmps() or
>> PerformBuffer() from inside the jack callback. Again, this is my
>> impression, I might be wrong; Fons can correct me if I am.
>>
>> Victor
>> On 26 Feb 2010, at 22:05, Michael Gogins wrote:
>>
>>> Why not?
>>>
>>> Regards,
>>> Mike
>>>
>>> On Fri, Feb 26, 2010 at 5:03 PM, Victor Lazzarini
>>>  wrote:
>>>> As far as I know, Csound's Jack Module cannot use freewheel.
>>>>
>>>> Victor
>>>>
>>>> On 26 Feb 2010, at 21:42, Michael Gogins wrote:
>>>>
>>>>> Thanks for the information. This tells me what I needed to know.
>>>>>
>>>>> The freewheeling mode is exactly what I want.
>>>>>
>>>>> I will see if Csound can work this way; and if not, I will see if I
>>>>> can change Csound so that it does work.
>>>>>
>>>>> Regards,
>>>>> Mike
>>>>>
>>>>> On Fri, Feb 26, 2010 at 4:22 PM,   wrote:
>>>>>> On Fri, Feb 26, 2010 at 03:08:31PM -0500, Michael Gogins wrote:
>>>>>>
>>>>>>> Is it possible to render Jack output to a soundfile?
>>>>>>
>>>>>> The question suggests that you may have the wrong idea of
>>>>>> what Jack is. Jack connects audio apps to each other and
>>>>>> to the soundcard. That's all it does. It does not by itself
>>>>>> read or write files. There are applications that can record
>>>>>> any input they get from Jack, and play it back to Jack later.
>>>>>>
>>>>>>> Or is possible to just hook up Aeolus to Csound and run
>>>>>>> Jack out of real time and have Csound write the soundfile?
>>>>>>
>>>>>> Jack can run out of real time, that is the so-called
>>>>>> 'freewheeling' mode. In this mode Jack will disconnect
>>>>>> from the sound card and run the clients 'as fast as they
>>>>>> can'. It requires that processing in a client is done
>>>>>> strictly in sync with Jack's callback, and that is not
>>>>>> the case in Csound AFAIK. So I don't think it will work.
>>>>>>
>>>>>> Ciao,
>>>>>>
>>>>>> --
>>>>>> FA
>>>>>>
>>>>>> O tu, che porte, correndo si ?
>>>>>> E guerra e morte !
>>>>>>
>>>>>> ------------------------------------------------------------------------------
>>>>>> Download Intel® Parallel Studio Eval
>>>>>> Try the new software tools for yourself. Speed compiling, find bugs
>>>>>> proactively, and fine-tune applications for parallel performance.
>>>>>> See why Intel Parallel Studio got high marks during beta.
>>>>>> http://p.sf.net/sfu/intel-sw-dev
>>>>>> _______________________________________________
>>>>>> Csound-devel mailing list
>>>>>> Csound-devel@lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Michael Gogins
>>>>> Irreducible Productions
>>>>> http://www.michael-gogins.com
>>>>> Michael dot Gogins at gmail dot com
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> Download Intel® Parallel Studio Eval
>>>>> Try the new software tools for yourself. Speed compiling, find bugs
>>>>> proactively, and fine-tune applications for parallel performance.
>>>>> See why Intel Parallel Studio got high marks during beta.
>>>>> http://p.sf.net/sfu/intel-sw-dev
>>>>> _______________________________________________
>>>>> Csound-devel mailing list
>>>>> Csound-devel@lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Download Intel® Parallel Studio Eval
>>>> Try the new software tools for yourself. Speed compiling, find bugs
>>>> proactively, and fine-tune applications for parallel performance.
>>>> See why Intel Parallel Studio got high marks during beta.
>>>> http://p.sf.net/sfu/intel-sw-dev
>>>> _______________________________________________
>>>> Csound-devel mailing list
>>>> Csound-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>>>
>>>
>>>
>>>
>>> --
>>> Michael Gogins
>>> Irreducible Productions
>>> http://www.michael-gogins.com
>>> Michael dot Gogins at gmail dot com
>>>
>>> ------------------------------------------------------------------------------
>>> Download Intel® Parallel Studio Eval
>>> Try the new software tools for yourself. Speed compiling, find bugs
>>> proactively, and fine-tune applications for parallel performance.
>>> See why Intel Parallel Studio got high marks during beta.
>>> http://p.sf.net/sfu/intel-sw-dev
>>> _______________________________________________
>>> Csound-devel mailing list
>>> Csound-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>
>>
>> ------------------------------------------------------------------------------
>> Download Intel® Parallel Studio Eval
>> Try the new software tools for yourself. Speed compiling, find bugs
>> proactively, and fine-tune applications for parallel performance.
>> See why Intel Parallel Studio got high marks during beta.
>> http://p.sf.net/sfu/intel-sw-dev
>> _______________________________________________
>> Csound-devel mailing list
>> Csound-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>
>
>
>
> --
> Michael Gogins
> Irreducible Productions
> http://www.michael-gogins.com
> Michael dot Gogins at gmail dot com
>



-- 
Michael Gogins
Irreducible Productions
http://www.michael-gogins.com
Michael dot Gogins at gmail dot com

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2010-02-26 23:16
FromMichael Gogins
SubjectRe: [Cs-dev] Aeolus with Csound
It's a real mixed bag. Some opcodes are reasonably RT safe, some are
not at all RT safe.

A lot of this will depend on the internals of how Csound manages
memory. If it preallocates its own internal heap before starting
performance, it could be quite RT safe even if appearing not. I will
probably look at that too.

Regards,
Mike

On Fri, Feb 26, 2010 at 5:58 PM,   wrote:
> On Fri, Feb 26, 2010 at 10:14:58PM +0000, Victor Lazzarini wrote:
>
>> Because as it is it cannot be guaranteed to run in sync with the Jack
>> callback. This is my impression when looking at the code, but I may be
>> wrong. I think a freewheel-capable client should not have the kind of
>> intermediary buffering with thread locks we have in Csound. The way to
>> do this would be to have a client that calls PerformKsmps() or
>> PerformBuffer() from inside the jack callback. Again, this is my
>> impression, I might be wrong; Fons can correct me if I am.
>
> Almost correct :-). A freewheeling client *can* have
> buffering, but this must be 'rigid' - no escape routes
> when data is not ready or when there is not enough space
> to write it - just wait instead. But in the end that means
> that things could work as well without buffering (or with
> just the amount to cover for unfortunate ksmps / period
> combinations).
>
> How RT-safe is Csound's DSP code in fact ?
>
> Ciao,
>
> --
> FA
>
> O tu, che porte, correndo si ?
> E guerra e morte !
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel
>



-- 
Michael Gogins
Irreducible Productions
http://www.michael-gogins.com
Michael dot Gogins at gmail dot com

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2010-02-26 23:20
FromVictor Lazzarini
SubjectRe: [Cs-dev] Aeolus with Csound
Of course, but that means writing a specialised Jack-client program.  
This is because the architecture of Csound's IO modules makes calls to  
IO function emanate from PerformKsmps() and this cannot be changed  
without major surgery (and a complete redesign). A jack client would  
bypass the IO modules and connect straight to Jack, calling  
PerformKsmps() in the callback.

Not a bad idea, though. I have mentioned it here before. It would be  
similar to the old jack-csound program of 4.23 vintage.

Victor

On 26 Feb 2010, at 23:07, Michael Gogins wrote:

> It also should be possible to modify Csound to run in a callback mode
> if necessary.


------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2010-02-26 23:20
Fromfons@kokkinizita.net
SubjectRe: [Cs-dev] Aeolus with Csound
AttachmentsNone  

Date2010-02-26 23:32
Fromfons@kokkinizita.net
SubjectRe: [Cs-dev] Aeolus with Csound
AttachmentsNone  

Date2010-02-27 00:16
FromMichael Gogins
SubjectRe: [Cs-dev] Aeolus with Csound
Yes, that is what I used to do in CsoundVST.

Regards,
Mike

On Fri, Feb 26, 2010 at 6:20 PM,   wrote:
> On Fri, Feb 26, 2010 at 06:07:53PM -0500, Michael Gogins wrote:
>
>> It may be quite feasible to use thread locks without any intermediate
>> buffering. I did this in an earlier version of CsoundVST and it worked
>> fine. Basically, the CsoundVST process callback simply copied data out
>> of Csound into the host buffer, then released a lock to permit another
>> thread to use Csound to compute the next buffer. After computing that
>> one buffer, the Csound thread just waited to be unlocked by the
>> callback again. The locking was so efficient that the overhead was not
>> perceptible, and the thread switching did not seem to cause any more
>> dropouts than running Csound inside the callback. I changed the code
>> just because it was simpler to call performKsmps as required to refill
>> the buffer in the callback. Now that I think about it, the thread
>> switching version might be better because it would be more flexible
>> with respect to buffer sizes, balancing the load on the CPU or CPUs,
>> and so on.
>>
>> It also should be possible to modify Csound to run in a callback mode
>> if necessary.
>
> To work in freewheeling mode you need these locks *in both
> directions*. The Csound thread must wait for Jack, and Jack's
> callback must wait for Csound to be ready. The result, as far
> as timing is concerned, is of course equivalent to just calling
> the DSP code directly from the callback.
>
> If Jack's period is not a integer times ksmps you still need
> some buffering, but assuming ksamps < period the maximum
> amount needed is ksmps - gcd (ksamps, period). The situation
> ksmps > period must be avoided.
>
> Ciao,
>
> --
> FA
>
> O tu, che porte, correndo si ?
> E guerra e morte !
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel
>



-- 
Michael Gogins
Irreducible Productions
http://www.michael-gogins.com
Michael dot Gogins at gmail dot com

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net