Hi list, I have encountered a strange behaviour with multiple outlets in pyext in combination with 'print' commands from within the Python code.
First, however, I'd like to thank Thomas Grill (and whoever else might be involved) for this wonderful extension to pd - it's really a flashback to those days when Pyrite became available for MAX. And much more!
now to illustrate the problem here's the pd as well as the py code:
sequence.pd: #N canvas 0 0 454 304 12; #X obj 168 131 print >>>; #X obj 125 155 print >>; #X obj 83 103 pyext sequence test; #X msg 125 74 bang; #X connect 2 1 1 0; #X connect 2 2 0 0; #X connect 3 0 2 1;
sequence.py: try: import pyext except: print "ERROR" class test(pyext._class): _inlets=3 _outlets=3
def bang_1(self): print "pyext entered ----------------------------" print "something else" self._outlet(2,'output2') self._outlet(3,'outlet3')
The problem is that sometimes when [bang] is clicked the outlet 3 doesn't fire. One of the following clicks however will actually "retrieve" that lost message, i.e. outlet 3 fires twice.
Sometimes one has to click a 100 times on bang before it happens, sometimes one has to click very fast, sometimes the "clicking rhythm" has to be changed, sometimes though it happens right on the first click after the patch is loaded.
Removing the second print command results in far less dropouts, but they still happen. More prints make it worse. I am not sure wether it happens with less outlets.
Of course, I have gotten rid of all print commands for the moment, but I'd be still curious to know wether this is a known problem and if there might be a fix. Or, maybe, you can't reproduce it, like with my strange crashing-on-floats-bug I reported a while ago.... (which still persists btw)
Thanks, Sukandar
Hi Sukandar, i can't reproduce the problem with the current cvs version of pyext. Which platform and pyext version are you using?
best greetings, Thomas
----- Original Message ----- From: "Sukandar Kartadinata" sk@glui.de To: pd-dev@iem.at Sent: Wednesday, February 25, 2004 9:08 PM Subject: [PD-dev] print in pyext
Hi list, I have encountered a strange behaviour with multiple outlets in pyext in combination with 'print' commands from within the Python code.
First, however, I'd like to thank Thomas Grill (and whoever else might be involved) for this wonderful extension to pd - it's really a flashback to those days when Pyrite became available for MAX. And much more!
now to illustrate the problem here's the pd as well as the py code:
sequence.pd: #N canvas 0 0 454 304 12; #X obj 168 131 print >>>; #X obj 125 155 print >>; #X obj 83 103 pyext sequence test; #X msg 125 74 bang; #X connect 2 1 1 0; #X connect 2 2 0 0; #X connect 3 0 2 1;
sequence.py: try: import pyext except: print "ERROR" class test(pyext._class): _inlets=3 _outlets=3
def bang_1(self): print "pyext entered ----------------------------" print "something else" self._outlet(2,'output2') self._outlet(3,'outlet3')
The problem is that sometimes when [bang] is clicked the outlet 3 doesn't fire. One of the following clicks however will actually "retrieve" that lost message, i.e. outlet 3 fires twice.
Sometimes one has to click a 100 times on bang before it happens, sometimes one has to click very fast, sometimes the "clicking rhythm" has to be changed, sometimes though it happens right on the first click after the patch is loaded.
Removing the second print command results in far less dropouts, but they still happen. More prints make it worse. I am not sure wether it happens with less outlets.
Of course, I have gotten rid of all print commands for the moment, but I'd be still curious to know wether this is a known problem and if there might be a fix. Or, maybe, you can't reproduce it, like with my strange crashing-on-floats-bug I reported a while ago.... (which still persists btw)
Thanks, Sukandar
PD-dev mailing list PD-dev@iem.at http://iem.at/cgi-bin/mailman/listinfo/pd-dev