[LAD] prototyping callback based architecture in python?

Emanuel Rumpf xbran at web.de
Fri Nov 4 17:36:28 UTC 2011


2011/11/2 Iain Duncan <iainduncanlists at gmail.com>:
> Hi, I'm working on an a project that I intend to do using the STK in a
> callback style, but am hoping I can prototype the architecture in python
> ... ... ...
> until I've figured out the various components and their responsibilities and
> dependencies. Does anyone know of any kind of python library ( or method? )
> that would let me simulate the way callback based STK apps using RTAudio
> work? IE

You could implement the callbacks (and link it to STK) with Cython.
(not CPython)
This would require you to write a Cython-Header file for the called
STK functions.
Cython works very well for this, although you have to learn it, because
it's neither real C nor real Python, but it's close.

With some attentiveness, you could write rt- functions in Cython,
because they compile to pure C / binary.


> I want to have a python master callable that gets called once per
> audio sample
No, Once per audio buffer, consisting of many (e.g. 128) samples.
That's a better choice, usually, even if you do sample-by-sample
processing within the function/callback.

> and has a way of sending out it's results to the audio
> subsystem.
>
> I've found a bunch of python audio libs but it doesn't seem like they work
> that way,

Note:
 Don't use python threads (as implemented in CPython), they do not
work for this.
 You might have more luck with the more recent multiprocessing module,
 ( http://docs.python.org/library/multiprocessing.html )
 It was introduced to circumvent some of PythonThreads limitations.


-- 
E.R.



More information about the Linux-audio-dev mailing list