Csound Csound-dev Csound-tekno Search About

I still shamefully don't understand CsoundPerformanceThread properly...

Date2016-01-15 17:29
FromPeter Burgess
SubjectI still shamefully don't understand CsoundPerformanceThread properly...
Hi there, I have neglected CsoundPerformanceThread because each time I
try and use it, it doesn't work as I expect (which I dare say is my
implementation!).

I expect it to make csound perform in a separate thread so my program
can carry on doing it's own thing. Until today, I was still not
totally clear on how to implement threading in general anyway, so I
figured I work it all out eventually. Now, I've just threaded and
detached the function that launches the performance thread, and now at
last, my program carries on working while csound works it's magic.

Now, am I doing something wrong? Should csoundPerformanceThread do
this anyway, or am I right to thread and detach the function myself? I
feel that doing my own threading is a waste if csound can already do
it

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2016-01-15 17:53
FromSteven Yi
SubjectRe: I still shamefully don't understand CsoundPerformanceThread properly...
I think the use of csoundPerformanceThread or your own thread depends
upon what you need.  If you're not extending the Csound engine's
processing in any way and only using the features that Csound offers,
then the csoundPerformanceThread should be fine.  Also, if you're in a
programming language that does not have its own native threads (i.e.
python), you may want to favor using the csoundPerformanceThread.

If you need to do specific processing synchronously with the engine,
then you should favor writing your own threading code and writing a
custom performance loop.

I'd say, if the API for the csoundPerformanceThread fulfills the
requirements of your project, go for it. For myself, I usually end up
requiring synchronous processing for my projects so I tend to use a
custom thread.

On Fri, Jan 15, 2016 at 12:29 PM, Peter Burgess
 wrote:
> Hi there, I have neglected CsoundPerformanceThread because each time I
> try and use it, it doesn't work as I expect (which I dare say is my
> implementation!).
>
> I expect it to make csound perform in a separate thread so my program
> can carry on doing it's own thing. Until today, I was still not
> totally clear on how to implement threading in general anyway, so I
> figured I work it all out eventually. Now, I've just threaded and
> detached the function that launches the performance thread, and now at
> last, my program carries on working while csound works it's magic.
>
> Now, am I doing something wrong? Should csoundPerformanceThread do
> this anyway, or am I right to thread and detach the function myself? I
> feel that doing my own threading is a waste if csound can already do
> it
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2016-01-15 17:58
FromPeter Burgess
SubjectRe: I still shamefully don't understand CsoundPerformanceThread properly...
Aha, ok. I am indeed doing synchronous processing, so setting up my
own threading system sounds like the right way to go. It is probably
worth noting that my basic thread setup only works if using
CsoundPerformanceThread.play(). It doesn't seem to work if the
threaded function contains Csound.perform() instead. This might again
just be my implementation, but as I have it working now, I'll probably
stick with what I've got until it goes sour :D

Cheers!

On Fri, Jan 15, 2016 at 5:53 PM, Steven Yi  wrote:
> I think the use of csoundPerformanceThread or your own thread depends
> upon what you need.  If you're not extending the Csound engine's
> processing in any way and only using the features that Csound offers,
> then the csoundPerformanceThread should be fine.  Also, if you're in a
> programming language that does not have its own native threads (i.e.
> python), you may want to favor using the csoundPerformanceThread.
>
> If you need to do specific processing synchronously with the engine,
> then you should favor writing your own threading code and writing a
> custom performance loop.
>
> I'd say, if the API for the csoundPerformanceThread fulfills the
> requirements of your project, go for it. For myself, I usually end up
> requiring synchronous processing for my projects so I tend to use a
> custom thread.
>
> On Fri, Jan 15, 2016 at 12:29 PM, Peter Burgess
>  wrote:
>> Hi there, I have neglected CsoundPerformanceThread because each time I
>> try and use it, it doesn't work as I expect (which I dare say is my
>> implementation!).
>>
>> I expect it to make csound perform in a separate thread so my program
>> can carry on doing it's own thing. Until today, I was still not
>> totally clear on how to implement threading in general anyway, so I
>> figured I work it all out eventually. Now, I've just threaded and
>> detached the function that launches the performance thread, and now at
>> last, my program carries on working while csound works it's magic.
>>
>> Now, am I doing something wrong? Should csoundPerformanceThread do
>> this anyway, or am I right to thread and detach the function myself? I
>> feel that doing my own threading is a waste if csound can already do
>> it
>>
>> Csound mailing list
>> Csound@listserv.heanet.ie
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> Send bugs reports to
>>         https://github.com/csound/csound/issues
>> Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2016-01-15 19:10
FromSteven Yi
SubjectRe: I still shamefully don't understand CsoundPerformanceThread properly...

One thing to note is that for performance loops, I tend to use PerformKsmps(). This lets me do on block of computation, then do my own code, then repeat.


On Fri, Jan 15, 2016, 12:59 PM Peter Burgess <pete.soundtechnician@gmail.com> wrote:
Aha, ok. I am indeed doing synchronous processing, so setting up my
own threading system sounds like the right way to go. It is probably
worth noting that my basic thread setup only works if using
CsoundPerformanceThread.play(). It doesn't seem to work if the
threaded function contains Csound.perform() instead. This might again
just be my implementation, but as I have it working now, I'll probably
stick with what I've got until it goes sour :D

Cheers!

On Fri, Jan 15, 2016 at 5:53 PM, Steven Yi <stevenyi@gmail.com> wrote:
> I think the use of csoundPerformanceThread or your own thread depends
> upon what you need.  If you're not extending the Csound engine's
> processing in any way and only using the features that Csound offers,
> then the csoundPerformanceThread should be fine.  Also, if you're in a
> programming language that does not have its own native threads (i.e.
> python), you may want to favor using the csoundPerformanceThread.
>
> If you need to do specific processing synchronously with the engine,
> then you should favor writing your own threading code and writing a
> custom performance loop.
>
> I'd say, if the API for the csoundPerformanceThread fulfills the
> requirements of your project, go for it. For myself, I usually end up
> requiring synchronous processing for my projects so I tend to use a
> custom thread.
>
> On Fri, Jan 15, 2016 at 12:29 PM, Peter Burgess
> <pete.soundtechnician@gmail.com> wrote:
>> Hi there, I have neglected CsoundPerformanceThread because each time I
>> try and use it, it doesn't work as I expect (which I dare say is my
>> implementation!).
>>
>> I expect it to make csound perform in a separate thread so my program
>> can carry on doing it's own thing. Until today, I was still not
>> totally clear on how to implement threading in general anyway, so I
>> figured I work it all out eventually. Now, I've just threaded and
>> detached the function that launches the performance thread, and now at
>> last, my program carries on working while csound works it's magic.
>>
>> Now, am I doing something wrong? Should csoundPerformanceThread do
>> this anyway, or am I right to thread and detach the function myself? I
>> feel that doing my own threading is a waste if csound can already do
>> it
>>
>> Csound mailing list
>> Csound@listserv.heanet.ie
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> Send bugs reports to
>>         https://github.com/csound/csound/issues
>> Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2016-01-15 21:17
FromRory Walsh
SubjectRe: I still shamefully don't understand CsoundPerformanceThread properly...

You have seen the examples here?
https://github.com/csound/csoundAPI_examples?files=1
I can't wait to see what this software you're writing does!

On 15 Jan 2016 18:01, "Peter Burgess" <pete.soundtechnician@gmail.com> wrote:
Aha, ok. I am indeed doing synchronous processing, so setting up my
own threading system sounds like the right way to go. It is probably
worth noting that my basic thread setup only works if using
CsoundPerformanceThread.play(). It doesn't seem to work if the
threaded function contains Csound.perform() instead. This might again
just be my implementation, but as I have it working now, I'll probably
stick with what I've got until it goes sour :D

Cheers!

On Fri, Jan 15, 2016 at 5:53 PM, Steven Yi <stevenyi@gmail.com> wrote:
> I think the use of csoundPerformanceThread or your own thread depends
> upon what you need.  If you're not extending the Csound engine's
> processing in any way and only using the features that Csound offers,
> then the csoundPerformanceThread should be fine.  Also, if you're in a
> programming language that does not have its own native threads (i.e.
> python), you may want to favor using the csoundPerformanceThread.
>
> If you need to do specific processing synchronously with the engine,
> then you should favor writing your own threading code and writing a
> custom performance loop.
>
> I'd say, if the API for the csoundPerformanceThread fulfills the
> requirements of your project, go for it. For myself, I usually end up
> requiring synchronous processing for my projects so I tend to use a
> custom thread.
>
> On Fri, Jan 15, 2016 at 12:29 PM, Peter Burgess
> <pete.soundtechnician@gmail.com> wrote:
>> Hi there, I have neglected CsoundPerformanceThread because each time I
>> try and use it, it doesn't work as I expect (which I dare say is my
>> implementation!).
>>
>> I expect it to make csound perform in a separate thread so my program
>> can carry on doing it's own thing. Until today, I was still not
>> totally clear on how to implement threading in general anyway, so I
>> figured I work it all out eventually. Now, I've just threaded and
>> detached the function that launches the performance thread, and now at
>> last, my program carries on working while csound works it's magic.
>>
>> Now, am I doing something wrong? Should csoundPerformanceThread do
>> this anyway, or am I right to thread and detach the function myself? I
>> feel that doing my own threading is a waste if csound can already do
>> it
>>
>> Csound mailing list
>> Csound@listserv.heanet.ie
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> Send bugs reports to
>>         https://github.com/csound/csound/issues
>> Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2016-01-16 15:00
FromPeter Burgess
SubjectRe: I still shamefully don't understand CsoundPerformanceThread properly...
I have seen them before, I'd forgotten about them. I looked through
various other Csound examples that I googled.

I hope I haven't overstated the awesomeness of this software now! :D
Yesterday I found an app that was released in December that does
something similar, though luckily it's not nearly as in depth as mine.
Still made me sweat a little!

Is there any attachment limitations on this mailing list? I might post
up a sneak peak at some audio

On Fri, Jan 15, 2016 at 9:17 PM, Rory Walsh  wrote:
> You have seen the examples here?
> https://github.com/csound/csoundAPI_examples?files=1
> I can't wait to see what this software you're writing does!
>
> On 15 Jan 2016 18:01, "Peter Burgess" 
> wrote:
>>
>> Aha, ok. I am indeed doing synchronous processing, so setting up my
>> own threading system sounds like the right way to go. It is probably
>> worth noting that my basic thread setup only works if using
>> CsoundPerformanceThread.play(). It doesn't seem to work if the
>> threaded function contains Csound.perform() instead. This might again
>> just be my implementation, but as I have it working now, I'll probably
>> stick with what I've got until it goes sour :D
>>
>> Cheers!
>>
>> On Fri, Jan 15, 2016 at 5:53 PM, Steven Yi  wrote:
>> > I think the use of csoundPerformanceThread or your own thread depends
>> > upon what you need.  If you're not extending the Csound engine's
>> > processing in any way and only using the features that Csound offers,
>> > then the csoundPerformanceThread should be fine.  Also, if you're in a
>> > programming language that does not have its own native threads (i.e.
>> > python), you may want to favor using the csoundPerformanceThread.
>> >
>> > If you need to do specific processing synchronously with the engine,
>> > then you should favor writing your own threading code and writing a
>> > custom performance loop.
>> >
>> > I'd say, if the API for the csoundPerformanceThread fulfills the
>> > requirements of your project, go for it. For myself, I usually end up
>> > requiring synchronous processing for my projects so I tend to use a
>> > custom thread.
>> >
>> > On Fri, Jan 15, 2016 at 12:29 PM, Peter Burgess
>> >  wrote:
>> >> Hi there, I have neglected CsoundPerformanceThread because each time I
>> >> try and use it, it doesn't work as I expect (which I dare say is my
>> >> implementation!).
>> >>
>> >> I expect it to make csound perform in a separate thread so my program
>> >> can carry on doing it's own thing. Until today, I was still not
>> >> totally clear on how to implement threading in general anyway, so I
>> >> figured I work it all out eventually. Now, I've just threaded and
>> >> detached the function that launches the performance thread, and now at
>> >> last, my program carries on working while csound works it's magic.
>> >>
>> >> Now, am I doing something wrong? Should csoundPerformanceThread do
>> >> this anyway, or am I right to thread and detach the function myself? I
>> >> feel that doing my own threading is a waste if csound can already do
>> >> it
>> >>
>> >> Csound mailing list
>> >> Csound@listserv.heanet.ie
>> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> >> Send bugs reports to
>> >>         https://github.com/csound/csound/issues
>> >> Discussions of bugs and features can be posted here
>> >
>> > Csound mailing list
>> > Csound@listserv.heanet.ie
>> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> > Send bugs reports to
>> >         https://github.com/csound/csound/issues
>> > Discussions of bugs and features can be posted here
>>
>> Csound mailing list
>> Csound@listserv.heanet.ie
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> Send bugs reports to
>>         https://github.com/csound/csound/issues
>> Discussions of bugs and features can be posted here
>
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> https://github.com/csound/csound/issues Discussions of bugs and features can
> be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2016-01-16 15:31
FromRory Walsh
SubjectRe: I still shamefully don't understand CsoundPerformanceThread properly...

I'm not sure about the current list. You'll probably have to computer it at any rate. Or put a preview up on SoundCloud?

On 16 Jan 2016 15:02, "Peter Burgess" <pete.soundtechnician@gmail.com> wrote:
I have seen them before, I'd forgotten about them. I looked through
various other Csound examples that I googled.

I hope I haven't overstated the awesomeness of this software now! :D
Yesterday I found an app that was released in December that does
something similar, though luckily it's not nearly as in depth as mine.
Still made me sweat a little!

Is there any attachment limitations on this mailing list? I might post
up a sneak peak at some audio

On Fri, Jan 15, 2016 at 9:17 PM, Rory Walsh <rorywalsh@ear.ie> wrote:
> You have seen the examples here?
> https://github.com/csound/csoundAPI_examples?files=1
> I can't wait to see what this software you're writing does!
>
> On 15 Jan 2016 18:01, "Peter Burgess" <pete.soundtechnician@gmail.com>
> wrote:
>>
>> Aha, ok. I am indeed doing synchronous processing, so setting up my
>> own threading system sounds like the right way to go. It is probably
>> worth noting that my basic thread setup only works if using
>> CsoundPerformanceThread.play(). It doesn't seem to work if the
>> threaded function contains Csound.perform() instead. This might again
>> just be my implementation, but as I have it working now, I'll probably
>> stick with what I've got until it goes sour :D
>>
>> Cheers!
>>
>> On Fri, Jan 15, 2016 at 5:53 PM, Steven Yi <stevenyi@gmail.com> wrote:
>> > I think the use of csoundPerformanceThread or your own thread depends
>> > upon what you need.  If you're not extending the Csound engine's
>> > processing in any way and only using the features that Csound offers,
>> > then the csoundPerformanceThread should be fine.  Also, if you're in a
>> > programming language that does not have its own native threads (i.e.
>> > python), you may want to favor using the csoundPerformanceThread.
>> >
>> > If you need to do specific processing synchronously with the engine,
>> > then you should favor writing your own threading code and writing a
>> > custom performance loop.
>> >
>> > I'd say, if the API for the csoundPerformanceThread fulfills the
>> > requirements of your project, go for it. For myself, I usually end up
>> > requiring synchronous processing for my projects so I tend to use a
>> > custom thread.
>> >
>> > On Fri, Jan 15, 2016 at 12:29 PM, Peter Burgess
>> > <pete.soundtechnician@gmail.com> wrote:
>> >> Hi there, I have neglected CsoundPerformanceThread because each time I
>> >> try and use it, it doesn't work as I expect (which I dare say is my
>> >> implementation!).
>> >>
>> >> I expect it to make csound perform in a separate thread so my program
>> >> can carry on doing it's own thing. Until today, I was still not
>> >> totally clear on how to implement threading in general anyway, so I
>> >> figured I work it all out eventually. Now, I've just threaded and
>> >> detached the function that launches the performance thread, and now at
>> >> last, my program carries on working while csound works it's magic.
>> >>
>> >> Now, am I doing something wrong? Should csoundPerformanceThread do
>> >> this anyway, or am I right to thread and detach the function myself? I
>> >> feel that doing my own threading is a waste if csound can already do
>> >> it
>> >>
>> >> Csound mailing list
>> >> Csound@listserv.heanet.ie
>> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> >> Send bugs reports to
>> >>         https://github.com/csound/csound/issues
>> >> Discussions of bugs and features can be posted here
>> >
>> > Csound mailing list
>> > Csound@listserv.heanet.ie
>> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> > Send bugs reports to
>> >         https://github.com/csound/csound/issues
>> > Discussions of bugs and features can be posted here
>>
>> Csound mailing list
>> Csound@listserv.heanet.ie
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> Send bugs reports to
>>         https://github.com/csound/csound/issues
>> Discussions of bugs and features can be posted here
>
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> https://github.com/csound/csound/issues Discussions of bugs and features can
> be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2016-01-16 15:32
FromPeter Burgess
SubjectRe: I still shamefully don't understand CsoundPerformanceThread properly...
I forgot to reply about PerformKsmps(), does that perform for a
certain amount of Ksmps and then return to the rest of the code per
chance?

On Sat, Jan 16, 2016 at 3:00 PM, Peter Burgess
 wrote:
> I have seen them before, I'd forgotten about them. I looked through
> various other Csound examples that I googled.
>
> I hope I haven't overstated the awesomeness of this software now! :D
> Yesterday I found an app that was released in December that does
> something similar, though luckily it's not nearly as in depth as mine.
> Still made me sweat a little!
>
> Is there any attachment limitations on this mailing list? I might post
> up a sneak peak at some audio
>
> On Fri, Jan 15, 2016 at 9:17 PM, Rory Walsh  wrote:
>> You have seen the examples here?
>> https://github.com/csound/csoundAPI_examples?files=1
>> I can't wait to see what this software you're writing does!
>>
>> On 15 Jan 2016 18:01, "Peter Burgess" 
>> wrote:
>>>
>>> Aha, ok. I am indeed doing synchronous processing, so setting up my
>>> own threading system sounds like the right way to go. It is probably
>>> worth noting that my basic thread setup only works if using
>>> CsoundPerformanceThread.play(). It doesn't seem to work if the
>>> threaded function contains Csound.perform() instead. This might again
>>> just be my implementation, but as I have it working now, I'll probably
>>> stick with what I've got until it goes sour :D
>>>
>>> Cheers!
>>>
>>> On Fri, Jan 15, 2016 at 5:53 PM, Steven Yi  wrote:
>>> > I think the use of csoundPerformanceThread or your own thread depends
>>> > upon what you need.  If you're not extending the Csound engine's
>>> > processing in any way and only using the features that Csound offers,
>>> > then the csoundPerformanceThread should be fine.  Also, if you're in a
>>> > programming language that does not have its own native threads (i.e.
>>> > python), you may want to favor using the csoundPerformanceThread.
>>> >
>>> > If you need to do specific processing synchronously with the engine,
>>> > then you should favor writing your own threading code and writing a
>>> > custom performance loop.
>>> >
>>> > I'd say, if the API for the csoundPerformanceThread fulfills the
>>> > requirements of your project, go for it. For myself, I usually end up
>>> > requiring synchronous processing for my projects so I tend to use a
>>> > custom thread.
>>> >
>>> > On Fri, Jan 15, 2016 at 12:29 PM, Peter Burgess
>>> >  wrote:
>>> >> Hi there, I have neglected CsoundPerformanceThread because each time I
>>> >> try and use it, it doesn't work as I expect (which I dare say is my
>>> >> implementation!).
>>> >>
>>> >> I expect it to make csound perform in a separate thread so my program
>>> >> can carry on doing it's own thing. Until today, I was still not
>>> >> totally clear on how to implement threading in general anyway, so I
>>> >> figured I work it all out eventually. Now, I've just threaded and
>>> >> detached the function that launches the performance thread, and now at
>>> >> last, my program carries on working while csound works it's magic.
>>> >>
>>> >> Now, am I doing something wrong? Should csoundPerformanceThread do
>>> >> this anyway, or am I right to thread and detach the function myself? I
>>> >> feel that doing my own threading is a waste if csound can already do
>>> >> it
>>> >>
>>> >> Csound mailing list
>>> >> Csound@listserv.heanet.ie
>>> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>>> >> Send bugs reports to
>>> >>         https://github.com/csound/csound/issues
>>> >> Discussions of bugs and features can be posted here
>>> >
>>> > Csound mailing list
>>> > Csound@listserv.heanet.ie
>>> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>>> > Send bugs reports to
>>> >         https://github.com/csound/csound/issues
>>> > Discussions of bugs and features can be posted here
>>>
>>> Csound mailing list
>>> Csound@listserv.heanet.ie
>>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>>> Send bugs reports to
>>>         https://github.com/csound/csound/issues
>>> Discussions of bugs and features can be posted here
>>
>> Csound mailing list Csound@listserv.heanet.ie
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
>> https://github.com/csound/csound/issues Discussions of bugs and features can
>> be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2016-01-16 15:33
FromPeter Burgess
SubjectRe: I still shamefully don't understand CsoundPerformanceThread properly...
Yeah, there will be some soundcloud examples coming soon, but the
current examples aren't good enough to represent it to the world yet

On Sat, Jan 16, 2016 at 3:32 PM, Peter Burgess
 wrote:
> I forgot to reply about PerformKsmps(), does that perform for a
> certain amount of Ksmps and then return to the rest of the code per
> chance?
>
> On Sat, Jan 16, 2016 at 3:00 PM, Peter Burgess
>  wrote:
>> I have seen them before, I'd forgotten about them. I looked through
>> various other Csound examples that I googled.
>>
>> I hope I haven't overstated the awesomeness of this software now! :D
>> Yesterday I found an app that was released in December that does
>> something similar, though luckily it's not nearly as in depth as mine.
>> Still made me sweat a little!
>>
>> Is there any attachment limitations on this mailing list? I might post
>> up a sneak peak at some audio
>>
>> On Fri, Jan 15, 2016 at 9:17 PM, Rory Walsh  wrote:
>>> You have seen the examples here?
>>> https://github.com/csound/csoundAPI_examples?files=1
>>> I can't wait to see what this software you're writing does!
>>>
>>> On 15 Jan 2016 18:01, "Peter Burgess" 
>>> wrote:
>>>>
>>>> Aha, ok. I am indeed doing synchronous processing, so setting up my
>>>> own threading system sounds like the right way to go. It is probably
>>>> worth noting that my basic thread setup only works if using
>>>> CsoundPerformanceThread.play(). It doesn't seem to work if the
>>>> threaded function contains Csound.perform() instead. This might again
>>>> just be my implementation, but as I have it working now, I'll probably
>>>> stick with what I've got until it goes sour :D
>>>>
>>>> Cheers!
>>>>
>>>> On Fri, Jan 15, 2016 at 5:53 PM, Steven Yi  wrote:
>>>> > I think the use of csoundPerformanceThread or your own thread depends
>>>> > upon what you need.  If you're not extending the Csound engine's
>>>> > processing in any way and only using the features that Csound offers,
>>>> > then the csoundPerformanceThread should be fine.  Also, if you're in a
>>>> > programming language that does not have its own native threads (i.e.
>>>> > python), you may want to favor using the csoundPerformanceThread.
>>>> >
>>>> > If you need to do specific processing synchronously with the engine,
>>>> > then you should favor writing your own threading code and writing a
>>>> > custom performance loop.
>>>> >
>>>> > I'd say, if the API for the csoundPerformanceThread fulfills the
>>>> > requirements of your project, go for it. For myself, I usually end up
>>>> > requiring synchronous processing for my projects so I tend to use a
>>>> > custom thread.
>>>> >
>>>> > On Fri, Jan 15, 2016 at 12:29 PM, Peter Burgess
>>>> >  wrote:
>>>> >> Hi there, I have neglected CsoundPerformanceThread because each time I
>>>> >> try and use it, it doesn't work as I expect (which I dare say is my
>>>> >> implementation!).
>>>> >>
>>>> >> I expect it to make csound perform in a separate thread so my program
>>>> >> can carry on doing it's own thing. Until today, I was still not
>>>> >> totally clear on how to implement threading in general anyway, so I
>>>> >> figured I work it all out eventually. Now, I've just threaded and
>>>> >> detached the function that launches the performance thread, and now at
>>>> >> last, my program carries on working while csound works it's magic.
>>>> >>
>>>> >> Now, am I doing something wrong? Should csoundPerformanceThread do
>>>> >> this anyway, or am I right to thread and detach the function myself? I
>>>> >> feel that doing my own threading is a waste if csound can already do
>>>> >> it
>>>> >>
>>>> >> Csound mailing list
>>>> >> Csound@listserv.heanet.ie
>>>> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>>>> >> Send bugs reports to
>>>> >>         https://github.com/csound/csound/issues
>>>> >> Discussions of bugs and features can be posted here
>>>> >
>>>> > Csound mailing list
>>>> > Csound@listserv.heanet.ie
>>>> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>>>> > Send bugs reports to
>>>> >         https://github.com/csound/csound/issues
>>>> > Discussions of bugs and features can be posted here
>>>>
>>>> Csound mailing list
>>>> Csound@listserv.heanet.ie
>>>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>>>> Send bugs reports to
>>>>         https://github.com/csound/csound/issues
>>>> Discussions of bugs and features can be posted here
>>>
>>> Csound mailing list Csound@listserv.heanet.ie
>>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
>>> https://github.com/csound/csound/issues Discussions of bugs and features can
>>> be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2016-01-16 18:36
FromRory Walsh
SubjectRe: I still shamefully don't understand CsoundPerformanceThread properly...
If you call performKmsps() you'll need to implement your own thread. For most things the C++ performance thread is a simple robust way of running Csound in a safe manner. If you are now using Csound for all your audio IO and processing needs, then this is probably the way to go.

On 16 January 2016 at 15:33, Peter Burgess <pete.soundtechnician@gmail.com> wrote:
Yeah, there will be some soundcloud examples coming soon, but the
current examples aren't good enough to represent it to the world yet

On Sat, Jan 16, 2016 at 3:32 PM, Peter Burgess
<pete.soundtechnician@gmail.com> wrote:
> I forgot to reply about PerformKsmps(), does that perform for a
> certain amount of Ksmps and then return to the rest of the code per
> chance?
>
> On Sat, Jan 16, 2016 at 3:00 PM, Peter Burgess
> <pete.soundtechnician@gmail.com> wrote:
>> I have seen them before, I'd forgotten about them. I looked through
>> various other Csound examples that I googled.
>>
>> I hope I haven't overstated the awesomeness of this software now! :D
>> Yesterday I found an app that was released in December that does
>> something similar, though luckily it's not nearly as in depth as mine.
>> Still made me sweat a little!
>>
>> Is there any attachment limitations on this mailing list? I might post
>> up a sneak peak at some audio
>>
>> On Fri, Jan 15, 2016 at 9:17 PM, Rory Walsh <rorywalsh@ear.ie> wrote:
>>> You have seen the examples here?
>>> https://github.com/csound/csoundAPI_examples?files=1
>>> I can't wait to see what this software you're writing does!
>>>
>>> On 15 Jan 2016 18:01, "Peter Burgess" <pete.soundtechnician@gmail.com>
>>> wrote:
>>>>
>>>> Aha, ok. I am indeed doing synchronous processing, so setting up my
>>>> own threading system sounds like the right way to go. It is probably
>>>> worth noting that my basic thread setup only works if using
>>>> CsoundPerformanceThread.play(). It doesn't seem to work if the
>>>> threaded function contains Csound.perform() instead. This might again
>>>> just be my implementation, but as I have it working now, I'll probably
>>>> stick with what I've got until it goes sour :D
>>>>
>>>> Cheers!
>>>>
>>>> On Fri, Jan 15, 2016 at 5:53 PM, Steven Yi <stevenyi@gmail.com> wrote:
>>>> > I think the use of csoundPerformanceThread or your own thread depends
>>>> > upon what you need.  If you're not extending the Csound engine's
>>>> > processing in any way and only using the features that Csound offers,
>>>> > then the csoundPerformanceThread should be fine.  Also, if you're in a
>>>> > programming language that does not have its own native threads (i.e.
>>>> > python), you may want to favor using the csoundPerformanceThread.
>>>> >
>>>> > If you need to do specific processing synchronously with the engine,
>>>> > then you should favor writing your own threading code and writing a
>>>> > custom performance loop.
>>>> >
>>>> > I'd say, if the API for the csoundPerformanceThread fulfills the
>>>> > requirements of your project, go for it. For myself, I usually end up
>>>> > requiring synchronous processing for my projects so I tend to use a
>>>> > custom thread.
>>>> >
>>>> > On Fri, Jan 15, 2016 at 12:29 PM, Peter Burgess
>>>> > <pete.soundtechnician@gmail.com> wrote:
>>>> >> Hi there, I have neglected CsoundPerformanceThread because each time I
>>>> >> try and use it, it doesn't work as I expect (which I dare say is my
>>>> >> implementation!).
>>>> >>
>>>> >> I expect it to make csound perform in a separate thread so my program
>>>> >> can carry on doing it's own thing. Until today, I was still not
>>>> >> totally clear on how to implement threading in general anyway, so I
>>>> >> figured I work it all out eventually. Now, I've just threaded and
>>>> >> detached the function that launches the performance thread, and now at
>>>> >> last, my program carries on working while csound works it's magic.
>>>> >>
>>>> >> Now, am I doing something wrong? Should csoundPerformanceThread do
>>>> >> this anyway, or am I right to thread and detach the function myself? I
>>>> >> feel that doing my own threading is a waste if csound can already do
>>>> >> it
>>>> >>
>>>> >> Csound mailing list
>>>> >> Csound@listserv.heanet.ie
>>>> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>>>> >> Send bugs reports to
>>>> >>         https://github.com/csound/csound/issues
>>>> >> Discussions of bugs and features can be posted here
>>>> >
>>>> > Csound mailing list
>>>> > Csound@listserv.heanet.ie
>>>> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>>>> > Send bugs reports to
>>>> >         https://github.com/csound/csound/issues
>>>> > Discussions of bugs and features can be posted here
>>>>
>>>> Csound mailing list
>>>> Csound@listserv.heanet.ie
>>>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>>>> Send bugs reports to
>>>>         https://github.com/csound/csound/issues
>>>> Discussions of bugs and features can be posted here
>>>
>>> Csound mailing list Csound@listserv.heanet.ie
>>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
>>> https://github.com/csound/csound/issues Discussions of bugs and features can
>>> be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here