Browse Source

intital commit

master
Ben Savage 5 years ago
parent
commit
ef67a15967
  1. 42
      osc_jem_client.py
  2. 45
      osc_jem_server.py

42
osc_jem_client.py

@ -0,0 +1,42 @@
#!/usr/bin/python3
# Import needed modules from osc4py3
from osc4py3.as_eventloop import *
from osc4py3 import oscbuildparse
import logging
import argparse
logging.basicConfig(format='%(asctime)s - %(threadName)s ø %(name)s - '
'%(levelname)s - %(message)s')
logger = logging.getLogger("osc")
logger.setLevel(logging.DEBUG)
clientname="ledclient"
def osc_msg_send(path,struct,data):
msg=oscbuildparse.OSCMessage(path,","+struct,[data])
osc_send(msg,clientname)
osc_process()
def play():
osc_msg_send("/play","i",1)
def stop():
osc_msg_send("/stop","i",1)
def restart():
stop()
osc_msg_send("/gotomarker","i",1)
play()
parser = argparse.ArgumentParser(description='OSC controller for LEDs')
parser.add_argument('--server',action='store',default='127.0.0.1:8000')
args=parser.parse_args()
# Start the system.
osc_startup(logger=logger)
# Make client channels to send packets.
server_address=args.server.split(':')[0]
server_port=args.server.split(':')[1]
osc_udp_client(server_address,server_port, clientname)

45
osc_jem_server.py

@ -0,0 +1,45 @@
#!/usr/bin/python3
# Import needed modules from osc4py3
from osc4py3.as_eventloop import *
from osc4py3 import oscbuildparse
from osc4py3.oscmethod import *
import logging
from pprint import pprint
logging.basicConfig(format='%(asctime)s - %(threadName)s ø %(name)s - '
'%(levelname)s - %(message)s')
logger = logging.getLogger("osc")
logger.setLevel(logging.ERROR)
clientname="ledserver"
def led_colour(value):
print("Setting colour to {}".format(value))
def led_brightness(value):
print("Setting brightness to {}".format(value))
def led_state(addr,value):
led=addr.split("/")[6]
pprint(value)
state=['off','on']
print("Setting LED {} {}".format(led,state[int(value)]))
# Start the system.
osc_startup(logger=logger)
server_address='127.0.0.1'
server_port='9000'
osc_udp_server(server_address,server_port, clientname)
osc_method("/track/2/fx/1/fxparam/1/value",led_colour)
osc_method("/track/2/fx/1/fxparam/2/value",led_brightness)
osc_method("/track/2/fx/1/fxparam/[!12]/value",led_state,argscheme=OSCARG_ADDRESS+OSCARG_DATAUNPACK)
finished=False
while not finished:
osc_process()
Loading…
Cancel
Save