[Csnd] Re: Re: RE: question regarding GUI xruns
Date | 2009-11-12 02:14 |
From | michael.gogins@gmail.com |
Subject | [Csnd] Re: Re: RE: question regarding GUI xruns |
Csound may be BUILT for any (single) version of Python. Csound packages are, therefore, built for a specific version of Python. The current Windows installer is built for Python 2.6. With the API, you can use any GUI toolkit you like. I have written Csound interactive pieces using FLTK, Python's build-in Tkinter, FLTK, and wxPython. All methods, believe it or not, are about equally difficult to program. But perhaps this is not so surprising, since they all have to do the same job of connecting GUI widgets to Csound control variables. So I advise you to be guided first by your preference for a GUI toolkit. All the toolkits I played with had about the same latency and level of dropouts. I use Eebuntu on an Acer Aspire One myself in addition to Windows XP on a much more powerful machine, and I use both built-in sound and outboard USB devices. I find that the choice of audio infrastructure (alsa, oss, PulseAudio, etc.) has a big impact on dropouts. I too have more problems with dropouts on Eebuntu. I have not devoted much time to investigating them because real-time performance is a very small part of what I do in music, but I may take a harder look at it. On general principles, I would advise you to: 0. Check the manual on the external interface. Mine has several settings that affect performance. 1. Investigate the audio setup on the computer, and use the most performant interface, turning all other stuff off. I find alsa "hw" interfaces work best, your mileage may vary. 2. Experiment with device names, -b, -K, and ksmps to find an optimum balance. This is time-consuming but can really help, on all platforms. 3. Turn other stuff that you don't want interfering off on the computer. This is common advice from computer music people on all platforms, including especially Windows, but I expect it could work on Eebuntu as well. Maybe experiment with different window managers, or a console-only interface to Linux that runs only 1 main window? 4. I find that the CsoundPerformanceThread facility is very helpful in reducing dropouts. I do not know what you are saying about lack of examples for GUI interfaces. There are half a dozen at least in the Csound examples directory. Hope this helps, Mike ----- Original Message ----- From: "Aaron Krister Johnson" |
Date | 2009-11-12 04:30 |
From | Aaron Krister Johnson |
Subject | [Csnd] Re: Re: RE: question regarding GUI xruns |
Hi, This is a very helpful list...regarding 'lack of examples' I was referring to usage of the API...but maybe that's what you are saying...I assume by examples directory you mean the source code tarball? I'll have a look later, I don't remember what I may have noticed in the past. Can you say more about 'CsoundPerformanceThread'? I was thinking earlier.....why not use a small TKinter app, bind some OSC messages to widgets, and send OSC messages to a non-GUI Csound instance? I wonder, since non-GUI Csound engines don't have these issues, if that might be the *fastest/easiest* route to GUI interaction with other toolkits? AKJ Michael Gogins-2 wrote: > > Csound may be BUILT for any (single) version of Python. > > Csound packages are, therefore, built for a specific version of Python. > > The current Windows installer is built for Python 2.6. > > With the API, you can use any GUI toolkit you like. I have written Csound > interactive pieces using FLTK, Python's build-in Tkinter, FLTK, and > wxPython. All methods, believe it or not, are about equally difficult to > program. But perhaps this is not so surprising, since they all have to do > the same job of connecting GUI widgets to Csound control variables. So I > advise you to be guided first by your preference for a GUI toolkit. All > the > toolkits I played with had about the same latency and level of dropouts. > > I use Eebuntu on an Acer Aspire One myself in addition to Windows XP on a > much more powerful machine, and I use both built-in sound and outboard USB > devices. I find that the choice of audio infrastructure (alsa, oss, > PulseAudio, etc.) has a big impact on dropouts. > > I too have more problems with dropouts on Eebuntu. I have not devoted much > time to investigating them because real-time performance is a very small > part of what I do in music, but I may take a harder look at it. > > On general principles, I would advise you to: > > 0. Check the manual on the external interface. Mine has several settings > that affect performance. > > 1. Investigate the audio setup on the computer, and use the most > performant > interface, turning all other stuff off. I find alsa "hw" interfaces work > best, your mileage may vary. > > 2. Experiment with device names, -b, -K, and ksmps to find an optimum > balance. This is time-consuming but can really help, on all platforms. > > 3. Turn other stuff that you don't want interfering off on the computer. > This is common advice from computer music people on all platforms, > including > especially Windows, but I expect it could work on Eebuntu as well. Maybe > experiment with different window managers, or a console-only interface to > Linux that runs only 1 main window? > > 4. I find that the CsoundPerformanceThread facility is very helpful in > reducing dropouts. > > I do not know what you are saying about lack of examples for GUI > interfaces. > There are half a dozen at least in the Csound examples directory. > > Hope this helps, > Mike > > ----- Original Message ----- > From: "Aaron Krister Johnson" |
Date | 2009-11-12 08:33 |
From | Andres Cabrera |
Subject | [Csnd] Re: Re: Re: RE: question regarding GUI xruns |
Hi, I think QuteCsound offers a nice alternative to FLTK widgets. If you run Csound in a separate thread from the QuteCsound GUI, you should get very good performance (if anyone doesn't I'd like to know). There is a new CsoundPerformanceThread example in the csound sources in interfaces/csPerfThread.hpp which can be the base for a program in C++ that uses Csound in a separate thread. Cheers, Andrés On Thu, Nov 12, 2009 at 4:30 AM, Aaron Krister Johnson |
Date | 2009-11-12 12:43 |
From | Michael Gogins |
Subject | [Csnd] Re: Re: Re: RE: question regarding GUI xruns |
Cvs has every thing, tarballs or installers may not. Osc would be like thread plus network plus extra buffers. Just use threads. Mkg On Nov 11, 2009 11:31 PM, "Aaron Krister Johnson" <aaron@akjmusic.com> wrote: |
Date | 2009-11-12 13:05 |
From | Victor Lazzarini |
Subject | [Csnd] Re: Re: Re: Re: RE: question regarding GUI xruns |
The OSC idea is very good and it works well; it's actually being used by a frontend (Ounk) and it is the basis of RT communication in the new Cecilia. Regards Victor On 12 Nov 2009, at 12:43, Michael Gogins wrote:
|
Date | 2009-11-12 13:07 |
From | Michael Gogins |
Subject | [Csnd] Re: Re: Re: Re: Re: RE: question regarding GUI xruns |
I didn't say it would not work well. I did say it is not as good, because it does NOT work BETTER and it is more COMPLEX. Regards, Mike On 11/12/09, Victor Lazzarini |
Date | 2009-11-12 14:17 |
From | Victor Lazzarini |
Subject | [Csnd] Re: Re: Re: Re: Re: Re: RE: question regarding GUI xruns |
I didn't really disagree with you, I prefer the API approach. But if you have a better idea of OSC and does not want to learn the ins and outs of the API, is surely something worth trying. Victor On 12 Nov 2009, at 13:07, Michael Gogins wrote: > I didn't say it would not work well. > > I did say it is not as good, because it does NOT work BETTER and it is > more COMPLEX. > > Regards, > Mike > > On 11/12/09, Victor Lazzarini |
Date | 2009-11-12 16:34 |
From | J |
Subject | [Csnd] Re: Re: Re: Re: Re: RE: question regarding GUI xruns |
Wait - sorry to butt in - but new Cecilia? Where? Regards, Jeremy On Thu, Nov 12, 2009 at 1:05 PM, Victor Lazzarini <Victor.Lazzarini@nuim.ie> wrote:
|
Date | 2009-11-12 16:37 |
From | Victor Lazzarini |
Subject | [Csnd] Re: Re: Re: Re: Re: Re: RE: question regarding GUI xruns |
Not yet released, but almost there. You can ask J Piche about the timeline for release. Victor On 12 Nov 2009, at 16:34, J wrote: Wait - sorry to butt in - but new Cecilia? Where? |
Date | 2009-11-12 16:43 |
From | J |
Subject | [Csnd] Re: Re: Re: Re: Re: Re: Re: RE: question regarding GUI xruns |
Ah, I see. Very exciting, thank you for letting me know! Jeremy On Thu, Nov 12, 2009 at 4:37 PM, Victor Lazzarini <Victor.Lazzarini@nuim.ie> wrote:
|