Connections work like they should.
I do not receive any midi messages. (no error given) the count of messages is always 0.
And can't send midi message (error : parameter 3 is wrong type), so what is the type of parameter 3 ("buffer") ?
Every bit of help appreciated.
My code :
Code: Select all
poortBuffer=None
timer=None
uitTimer=None
uitBuffer=None
def sendTest():
global uitBuffer,uitTimer
ev=jack_midi_event_t()
print ev._fields_
#res=midi_event_write(uitBuffer, 0, ev._fields_, len(ev._fields_))
#print res
#uitTimer=root.after(1000,sendTest)
def getMidi():
global poortBuffer,timer
leng=midi_get_event_count(poortBuffer)
#print leng,
#print poortBuffer,
if leng>0:
ev=jack_midi_event_t()
res=midi_event_get(ev, poortBuffer, 0)
ptr=ev._fields_[2]
print ev._fields_[1],ev._fields_[2],ptr
print translate_midi_event_buffer(ptr)
lost=midi_get_lost_event_count(poortBuffer)
if lost>0:
print "lost",lost
timer=root.after(100,getMidi)
from Tkinter import *
root = Tk()
# font to use for label widgets
root.option_add("*Font", "verdana 12")
klant=client_open("jacklib1",NoStartServer, 0)
poort=port_register(klant, "JL_in", "8 bit raw midi", PortIsInput, 100)
if poort==None:
print "port not connected ??"
else:
print "port ok"
poortBuffer=port_get_buffer(poort, 0)
print "Buffer :",poortBuffer
uitPoort=port_register(klant, "JL_out", "8 bit raw midi", PortIsOutput, 100)
if uitPoort==None:
print "port not connected ??"
else:
print "port ok",uitPoort
print klant,poort,uitPoort
res=activate(klant)
print "activate",res
timer=root.after(10,getMidi)
uitTimer=root.after(10,sendTest)
root.mainloop()
conn=port_get_connections(poort)
print conn
client_close(klant)