[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[sc-users] controlling scsynth from python



hi all

For the last months I have been using Patricks libraries to control scsynth from python (http://www.assembla.com/spaces/pkaudio) to create some apps with Python GUI and scsynth sound engine.

Some people asked us about this and after we saw the p5-sc library for Processing we decided to extract the code into a library and make it available with some docs and examples.

We find that Patricks library is great but a bit complex for non expert programmers. So we decided to create a simple wrap around it that would hide the guts and make it easier to control scsynth from python.

At the moment it is yet an alpha version, it works but it might have some inconsistencies. Specially because I am not a supercollider master programmer and I might have included some weird structures or concepts from my Python based programming. It would be nice if you could point into things that sound weird from a supercollider point of view.

The basic usage is like this :

####
import sc, time
sc.start(exedir='usr/local') # platform dependent.
sine = sc.Synth( "sine" )
sine.freq = 444
time.sleep(5) # stay here for 5 secs while sine plays
sine.freq = 666
time.sleep(3)
sine.free()
sc.quit()
###

Like in patricks libraries sc starts up scsynth as a background process so there is no need to manually switch it, I think this should be optional because one might not want scsynth to start automatically. It is in the to do list. But I would not like to modify patricks code. So I have to consider this, what do you think about this?

There is also groups and some easy to use system to import samples into the server. Check the readme file that contains the API and some docs.

This is a snapshot, i hope it all works.
http://www.ixi-audio.net/alpha/sc.tar.gz
It has been developed mainly on Linux so it has been tested briefly on windows and not at all on mac. Please let us know if there are some problems using it. There are no dependencies as far as i can think apart from python and scsynth

thanks in advance for feedback

enrike