ok i'll check the cvs. numarray and numpy co-exist quite peacefully anyway, on of the reasons why i use numpy is scipy which relies on numpy. it already contains modules for signal and image processing and i'm fiddling around with its genetic algorithms which are great. i wouldn't say that signal processing is slow because most of what you want can be done with array operations, so there's actually not that much python needed if you're following the matlab paradigm of problem solving. when i find some time i'll try to boil down what causes the threading crashes. the problem is that it crashes after one minute or maybe after one hour (without any error messages) so the cause of the crash is quite hard to track down. anyway - thanks for the good work and i'm happy that you're continuing to work on pyext which is my favourite pd external...
sven.
At 11:01 23.03.2005, Thomas Grill wrote:
Hey Sven, the current cvs py/pyext version does exactly what you want, except that it doesn't use numpy but rather numarray. There is currently a debate going on about what the future of arrays in Python might be, and there's a new project called numeric3 which shall once unite the strengths of both numeric and numarray. Numeric3 is said to have good chances to go into the Python core. py/pyext supports numarray for buffer and signal processing - i haven't released it yet as i heard there have been crashes with the dsp part and at the moment i don't have time to test that. buffer processing is quite efficient as PD buffers are directly mapped to Python arrays, signal processing is quite slow on the other hand because of the overhead of calling into Python code. Using psyco JIT compilation helps a bit though. A large part of current VASP functionality is already covered by the numarray functions, and i plan to bundle the other, more music-specific things into a VASP module, using mainly Python code and - if needed - the C-extensibility of numarray. Please note that i chose numarray over Numeric only because there was a recommendation to do so, which has changed in the meantime - i'm ready to jump on the line that leads to standardization. Summarizing, i would recommend that you check out the cvs versions of flext and py/pyext, install the numarray and psyco extensions to Python, and try out the new features (there are example patches for buffer and signal processing). I'm convinced that threading has become _quite_ stable in the meantime - if there are still issues please report back in detail, so that i can fix them. Oh yes, clearly i'd like to integrate image processing some day - although i have no idea yet, when this will happen. I'd really like to have a PDP/GEM-py/pyext bridge, but again, Python array support is not stable yet, so there's no need to hurry.
best greetings, Thomas