[Cs-dev] csndgui toolkit for Python
Date | 2006-11-06 10:38 |
From | Victor Lazzarini |
Subject | [Cs-dev] csndgui toolkit for Python |
I have put up an initial work on a toolkit for building simple GUIs for Csound in python (with PyGTK). This is intended to encapsulate both the relevant widgets in pygtk and the relevant parts of the csound API in csnd. The idea is that widgets are created with bus channel bindings, which can then be used in a csound orchestra. A few lines of python code are needed to get an interface up and going, probably even fewer than what is reguired for FLTK in csound. I have created some simple examples to demonstrate how it can be used. The source is documented and you can view it with pydoc (>pydoc csndgui). To run this you will need the python csnd module and PyGTK. Here is where you can find it: http://music.nuim.ie/vlazzarini/tmp Victor Lazzarini Music Technology Laboratory Music Department National University of Ireland, Maynooth ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2006-11-06 10:49 |
From | "Steven Yi" |
Subject | Re: [Cs-dev] csndgui toolkit for Python |
Attachments | None |
Date | 2006-11-06 11:24 |
From | "Oeyvind Brandtsegg" |
Subject | Re: [Cs-dev] csndgui toolkit for Python |
Attachments | None |
Date | 2006-11-09 19:18 |
From | Rory Walsh |
Subject | Re: [Cs-dev] csndgui toolkit for Python |
Running the examples on windows give lots of system beeps whenever I move a slider or press a button, also at the very start of the program. Has anyone else tried these examples with windows? Rory. ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2006-11-10 10:02 |
From | Victor Lazzarini |
Subject | Re: [Cs-dev] csndgui toolkit for Python |
It might be a GTK thing. I am not sure how good it is on Windows. At 19:18 09/11/2006, you wrote: >Running the examples on windows give lots of system beeps whenever I >move a slider or press a button, also at the very start of the program. >Has anyone else tried these examples with windows? > >Rory. > > >------------------------------------------------------------------------- >Using Tomcat but need to do more? Need to support web services, security? >Get stuff done quickly with pre-integrated technology to make your job easier >Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo >http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >_______________________________________________ >Csound-devel mailing list >Csound-devel@lists.sourceforge.net >https://lists.sourceforge.net/lists/listinfo/csound-devel Victor Lazzarini Music Technology Laboratory Music Department National University of Ireland, Maynooth ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2006-11-10 10:34 |
From | Rory Walsh |
Subject | Re: [Cs-dev] csndgui toolkit for Python |
Apparently it's still a work in progress for windows. Of course it could also have something to do with the way I set up gtk on my machine which is why I was curious to see if others had any problems with it on windows. Cheers, Rory. Victor Lazzarini wrote: > It might be a GTK thing. I am not sure how good it is on Windows. > > At 19:18 09/11/2006, you wrote: >> Running the examples on windows give lots of system beeps whenever I >> move a slider or press a button, also at the very start of the program. >> Has anyone else tried these examples with windows? >> >> Rory. >> ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2006-11-10 10:45 |
From | Victor Lazzarini |
Subject | Re: [Cs-dev] csndgui toolkit for Python |
Well, get yourself a Linux machine, you won't regret. At 10:34 10/11/2006, you wrote: >Apparently it's still a work in progress for windows. Of course it could >also have something to do with the way I set up gtk on my machine which >is why I was curious to see if others had any problems with it on >windows. Cheers, > >Rory. > > > >Victor Lazzarini wrote: > > It might be a GTK thing. I am not sure how good it is on Windows. > > > > At 19:18 09/11/2006, you wrote: > >> Running the examples on windows give lots of system beeps whenever I > >> move a slider or press a button, also at the very start of the program. > >> Has anyone else tried these examples with windows? > >> > >> Rory. > >> > >------------------------------------------------------------------------- >Using Tomcat but need to do more? Need to support web services, security? >Get stuff done quickly with pre-integrated technology to make your job easier >Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo >http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >_______________________________________________ >Csound-devel mailing list >Csound-devel@lists.sourceforge.net >https://lists.sourceforge.net/lists/listinfo/csound-devel Victor Lazzarini Music Technology Laboratory Music Department National University of Ireland, Maynooth ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2006-11-10 10:54 |
From | Rory Walsh |
Subject | Re: [Cs-dev] csndgui toolkit for Python |
It's gotta happen sooner or later! Rory. Victor Lazzarini wrote: > Well, get yourself a Linux machine, you won't regret. > > At 10:34 10/11/2006, you wrote: >> Apparently it's still a work in progress for windows. Of course it could >> also have something to do with the way I set up gtk on my machine which >> is why I was curious to see if others had any problems with it on >> windows. Cheers, >> >> Rory. >> >> >> >> Victor Lazzarini wrote: >>> It might be a GTK thing. I am not sure how good it is on Windows. >>> >>> At 19:18 09/11/2006, you wrote: >>>> Running the examples on windows give lots of system beeps whenever I >>>> move a slider or press a button, also at the very start of the program. >>>> Has anyone else tried these examples with windows? >>>> >>>> Rory. >>>> >> ------------------------------------------------------------------------- >> Using Tomcat but need to do more? Need to support web services, security? >> Get stuff done quickly with pre-integrated technology to make your job easier >> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo >> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >> _______________________________________________ >> Csound-devel mailing list >> Csound-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/csound-devel > > Victor Lazzarini > Music Technology Laboratory > Music Department > National University of Ireland, Maynooth > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Csound-devel mailing list > Csound-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/csound-devel > ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2008-03-12 08:56 |
From | Tim Mortimer |
Subject | [Cs-dev] Victor's csndgui toolkit for Python (was 2006 thread - now 2008) |
Im ressurecting this old thread as once again i'm kind of browsing around going, err, err, gui toolkits.... err, err.... too hard, too crappy looking, no tutorials..../ combinations thereof... So cairo today has sparked my interest further, which leads me back to GTK, which leads me to PyGTK, which leads me to this thread....(via a Nabble Search) & As PyGTK seems to have a reasonably extensive tutorial... http://www.pygtk.org/pygtk2tutorial/index.html & also now comes with it's own windows installer (yippee!) & given GTK is cross platform & used extensively... I'm wondering if maybe this is where i should try & get started I'm not using csound api at all at present - essentially all i'd be looking at doing is creating some gui elements that when you hit the "publish" button spit out some csound score (or in my case, &/or parseval score...) the GUI elements themselves would be simply defining trajectories , ftab shapes, or, like AlgoScore(?) used for setting ranges of stochastic parameters (& potentially later publishing displays of realisations thereof...) all prior to score / text data publication (& i could whip up a Parseval score display syntax highlighting front end while i was at it...) I also notice cairo has python bindings, & if i'm not mistaken it's useage in python would also be PyGTK dependent?? I say this as I found this example on the net also which further prompted my interest... http://blog.eikke.com/index.php/ikke/2007/02/17/python_cairo_xshape_and_clocks so, yep, around in circles i go... & i know I just said "i dont need real time API control", but obviously this thread (& Victor's toolkit which was discussed here in Nov 2006...) would be of interest for me to look at - has it been developed any further? & where is the code & examples now Victor? Have things elsewhere developed further since Nov 2006 to give the idea renewed merit? (maybe... nothing like a bit of wishful thinking...) Oeyvind Brandtsegg-2 wrote: > > Nice, Victor. > The python gui configuration files are impressively small, light and > clear. > Oeyvind > > 2006/11/6, Victor Lazzarini |
Date | 2008-03-12 13:37 |
From | Jonatan Liljedahl |
Subject | Re: [Cs-dev] Victor's csndgui toolkit for Python (was 2006 thread - now 2008) |
Tim Mortimer wrote: ... > So cairo today has sparked my interest further, which leads me back to GTK, > which leads me to PyGTK, which leads me to this thread....(via a Nabble > Search) > > & As PyGTK seems to have a reasonably extensive tutorial... > > http://www.pygtk.org/pygtk2tutorial/index.html > > & also now comes with it's own windows installer (yippee!) > > & given GTK is cross platform & used extensively... > > I'm wondering if maybe this is where i should try & get started > > I'm not using csound api at all at present - essentially all i'd be looking > at doing is creating some gui elements that when you hit the "publish" > button spit out some csound score (or in my case, &/or parseval score...) > the GUI elements themselves would be simply defining trajectories , ftab > shapes, or, like AlgoScore(?) used for setting ranges of stochastic > parameters (& potentially later publishing displays of realisations > thereof...) all prior to score / text data publication (& i could whip up a > Parseval score display syntax highlighting front end while i was at it...) ... (Now I'm going to do shameless promotion of AlgoScore, again... :) First I just wanted to say that using AlgoScore for stochastic or algorithmic composition is only one of many possibilities, you can also do totally non-algorithmic "manual" composition with it. Regarding what you describe, it's exactly that sort of things I have in mind for AlgoScore. It has gui elements (score objects) for different kinds of curves (one that is like linseg, one like jitter, and sine and random lfo's, etc..) and also an interface to define and visualize ftabs. All these are now using numerical user input, but the plan is to add user friendly mouse-editing of stuff like this. So in AlgoScore, you can set up trajectories, ftab shapes, algorithmic generated events, manually entered events, etc and connect them to a csound bus. Then you press a button and AlgoScore will generate a score and send it to csound, and csound will render the audio in a background process so you can start listening even before it's finished. If you are happy with the result you press "export audio" and it's saved as a soundfile. Then you export the score to PDF, print it, and put in on the wall above your bed. ;) (Note that AlgoScore is non-realtime and batch oriented, but it visualizes data while you work with it so it's easier to relate to the material) Regarding custom GUI's, AlgoScore is based on a scripting language called Nasal which imho is even more elegant and simple to learn than python. It looks a bit like JavaScript. AlgoScore has a built-in nasal interpreter, with bindings to among other things csound, gtk and cairo. So it's fully possible to create such scripts and run them within algoscore. Example (untested): #################### import("gtk"); import("csound"); generate_events = func { ...generate events according to algorithms or user input... return events; } get_filter_cutoff = func(t) { ...generate or get krate value at time t... return value; } cs = csound.create(1); run_csound = func(length) { csound.compile(cs,["-o","foo.wav","foo.orc"]); csound.rewind_score(cs); foreach(ev;generate_events()) { csound.score_event(cs,`i`,ev); } t = 0; while(t |
Date | 2008-03-12 22:43 |
From | Tim Mortimer |
Subject | Re: [Cs-dev] Victor's csndgui toolkit for Python (was 2006 thread - now 2008) |
>>> (Now I'm going to do shameless promotion of AlgoScore, again... :) Great, but Im on windows.... hence i dont need / can't use the Jack Transport business. Why not just compile the graphics & .sco creation capabilities therefore & call it a Windows partial release? i.e with no audio engine / real time transport capabilities whatsoever? that's the component of it that's probably windows compatible after all... & it's also the part that happens to interest me, as it will bolt on to my existing python based environment (basically a .txt based tracker that batch process audio / midi output using csound...) I can see the cross over - that's why im interested! ; ) but i dont want your bathwater, just your attractive, shiny, clean vector graphics baby... ; ) Nasal did interest me also, i'll investigate it further but if you can link me to any info as to how i can get started with it that would be great. Does it run on windows? (my next computer may be a mac, but im not sure when that will be, & after being on windows for the last 5 years & accumulated hoards of software (cough cough) it doesn't exactly feel like moving forward... more like back to square one....) I guess this is where i totally agree re: peoples self / creatively driven development work that each to their own. When I bang on about Parseval for example (my project) it's not because i expect people to adopt it lock stock & barrel, but there may be some element of it that's particularly novel, neat, or attractive, so great, gut it & use the bit you need! & i guess that's what i'm unceremoniously proposing i'd like to try with algoscore. Especially given the platform issues, it seems like a sensible way forward IMHO. but don't be decieved into thinking i'm barking orders here. simply expressing my wshes & feedback for your consideration. Nasal getting started query stands... gotta rush. cheers T. Jonatan Liljedahl-2 wrote: > > Tim Mortimer wrote: > ... >> So cairo today has sparked my interest further, which leads me back to >> GTK, >> which leads me to PyGTK, which leads me to this thread....(via a Nabble >> Search) >> >> & As PyGTK seems to have a reasonably extensive tutorial... >> >> http://www.pygtk.org/pygtk2tutorial/index.html >> >> & also now comes with it's own windows installer (yippee!) >> >> & given GTK is cross platform & used extensively... >> >> I'm wondering if maybe this is where i should try & get started >> >> I'm not using csound api at all at present - essentially all i'd be >> looking >> at doing is creating some gui elements that when you hit the "publish" >> button spit out some csound score (or in my case, &/or parseval score...) >> the GUI elements themselves would be simply defining trajectories , ftab >> shapes, or, like AlgoScore(?) used for setting ranges of stochastic >> parameters (& potentially later publishing displays of realisations >> thereof...) all prior to score / text data publication (& i could whip up >> a >> Parseval score display syntax highlighting front end while i was at >> it...) > ... > > (Now I'm going to do shameless promotion of AlgoScore, again... :) > > First I just wanted to say that using AlgoScore for stochastic or > algorithmic composition is only one of many possibilities, you can also > do totally non-algorithmic "manual" composition with it. > > Regarding what you describe, it's exactly that sort of things I have in > mind for AlgoScore. It has gui elements (score objects) for different > kinds of curves (one that is like linseg, one like jitter, and sine and > random lfo's, etc..) and also an interface to define and visualize > ftabs. All these are now using numerical user input, but the plan is to > add user friendly mouse-editing of stuff like this. > > So in AlgoScore, you can set up trajectories, ftab shapes, algorithmic > generated events, manually entered events, etc and connect them to a > csound bus. Then you press a button and AlgoScore will generate a score > and send it to csound, and csound will render the audio in a background > process so you can start listening even before it's finished. If you are > happy with the result you press "export audio" and it's saved as a > soundfile. Then you export the score to PDF, print it, and put in on the > wall above your bed. ;) > > (Note that AlgoScore is non-realtime and batch oriented, but it > visualizes data while you work with it so it's easier to relate to the > material) > > Regarding custom GUI's, AlgoScore is based on a scripting language > called Nasal which imho is even more elegant and simple to learn than > python. It looks a bit like JavaScript. AlgoScore has a built-in nasal > interpreter, with bindings to among other things csound, gtk and cairo. > So it's fully possible to create such scripts and run them within > algoscore. Example (untested): > > #################### > import("gtk"); > import("csound"); > > generate_events = func { > ...generate events according to algorithms or user input... > return events; > } > > get_filter_cutoff = func(t) { > ...generate or get krate value at time t... > return value; > } > > cs = csound.create(1); > > run_csound = func(length) { > csound.compile(cs,["-o","foo.wav","foo.orc"]); > csound.rewind_score(cs); > foreach(ev;generate_events()) { > csound.score_event(cs,`i`,ev); > } > t = 0; > while(t |
Date | 2008-03-12 23:14 |
From | Jonatan Liljedahl |
Subject | Re: [Cs-dev] Victor's csndgui toolkit for Python (was 2006 thread - now 2008) |
Hi Tim! It seems jackdmp (multi-core version of jack) should work on windows. Anyhow, my plan is that algoscore should compile without jack (and thus without built-in audio/midi playback). GTK is reported to work on windows, Nasal should also build on windows even though I use some unix-specific stuff that would need to be replaced... So, what I'm trying to say is that it's not totally unbelievable that algoscore will run on windows some day. But it will probably not be tomorrow... :) You can find more info on Nasal on http://plausible.org/nasal The csound bindings could easily be copied from algoscore and added to the nasal distribution. (it's just one file and a one-liner addition) Tim Mortimer wrote: >>>> (Now I'm going to do shameless promotion of AlgoScore, again... :) > > Great, but Im on windows.... hence i dont need / can't use the Jack > Transport business. > > Why not just compile the graphics & .sco creation capabilities therefore & > call it a Windows partial release? i.e with no audio engine / real time > transport capabilities whatsoever? > > that's the component of it that's probably windows compatible after all... & > it's also the part that happens to interest me, as it will bolt on to my > existing python based environment (basically a .txt based tracker that batch > process audio / midi output using csound...) > > I can see the cross over - that's why im interested! ; ) > > but i dont want your bathwater, just your attractive, shiny, clean vector > graphics baby... ; ) > > Nasal did interest me also, i'll investigate it further but if you can link > me to any info as to how i can get started with it that would be great. Does > it run on windows? > > (my next computer may be a mac, but im not sure when that will be, & after > being on windows for the last 5 years & accumulated hoards of software > (cough cough) it doesn't exactly feel like moving forward... more like back > to square one....) > > I guess this is where i totally agree re: peoples self / creatively driven > development work that each to their own. When I bang on about Parseval for > example (my project) it's not because i expect people to adopt it lock stock > & barrel, but there may be some element of it that's particularly novel, > neat, or attractive, so great, gut it & use the bit you need! > > & i guess that's what i'm unceremoniously proposing i'd like to try with > algoscore. Especially given the platform issues, it seems like a sensible > way forward IMHO. > > but don't be decieved into thinking i'm barking orders here. simply > expressing my wshes & feedback for your consideration. > > Nasal getting started query stands... gotta rush. > > cheers > > T. -- /Jonatan [ http://kymatica.com ] ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |