我正在开发一个简单的程序,其中Max-msp通过OSC将一些整数发送到python。我正在使用pyOSC库进行python。 现在我可以轻松打印数字但我无法解码它并将其用作python中的整数(我是菜鸟)。
想法?
import OSC
import time, threading
receive_address = '127.0.0.1', 9000
def printing_handler(addr, tags, stuff, source):
print "---"
print "received new osc msg from %s" % OSC.getUrlStr(source)
print "with addr : %s" % addr
print "typetags %s" % tags
print "data %s" % stuff
print "---"
s = OSC.OSCServer(receive_address)
s.addMsgHandler("/numero", printing_handler)
st = threading.Thread( target = s.serve_forever )
st.start()
非常感谢你!
答案 0 :(得分:0)
目前尚不清楚stuff
的所有类型/长度是什么,但是,例如,如果type(stuff[0])
已经<type 'int'>
,那么您可以直接使用该值。
答案 1 :(得分:0)
stuff
是OSC消息的参数。您应该能够直接检索它们。假设您从Max发送了3个整数,您应该能够做到这样的事情:
def printing_handler(addr, tags, stuff, source):
print "---"
arg1 = stuff[0]
arg2 = stuff[1]
arg3 = stuff[2]
print "received",arg1,arg2,arg3
print "---"
如果有帮助,您可以尝试使用pyOSC示例代码: