| Sounds good in general. What I would suggest is in additionis to use
sockets to connect between the two Python processes. In other words
have a csound 'server', then send events to it using sockets. That would
make it network-transparent as well.
This is pretty simple to do and I have code for it, which I can send to
you, as a socialist sympathiser that I am.
Regards
Victor
----- Original Message -----
From: "Chuckk Hubbard"
To: "Csound List"
Sent: Friday, October 31, 2008 11:59 PM
Subject: [Csnd] Python, Csound, GUI, here's how I'm gonna do it
> Hi.
> I've had some advice on this from various folks, one of whom is a Pure
> Data developer, and they pointed out that, as a separate process, I
> can set audio to a higher priority than the GUI. I've looked at a few
> references, and now I think this is the way to go to avoid GUI-induced
> dropouts in my Python sequencer:
>
> Import the csnd library.
>
> Run a dummy .csd whenever the user wants to query for audio devices;
> parse the output for available devices.
>
> When the user hits play(), start another instance of *python*, using
> the Csound API within it to perform a realtime score.
>
> Drop the priority (or raise the nice level, on Unix) of the parent
> process.
>
> Pipe rt line events to the audio process from the parent process.
>
> On stop(), kill the child process, like the godless Democrat I am, and
> reset the GUI's priority/nice level.
>
> The reason for using an instance of Python running the API instead of
> just starting a Csound instance for audio is twofold: I've already
> included the module in my app to query audio devices, and it's simpler
> to distribute Csound with my app as a Python module than as a separate
> executable.
>
> Does anyone have any thoughts on how well this will work? It'll be
> some work to set it up, but hopefully I can at least test the priority
> thing this weekend. I've known for a while that Pure Data works as
> several processes, one of which is basically Wish, but never quite
> understood why. And Python doesn't let one set threads to different
> priorities.
>
> -Chuckk
>
> --
> http://www.badmuthahubbard.com
>
>
> Send bugs reports to this list.
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe
> csound"
|