From 98a2ad383cb11be00755be4620fd0c3373d31863 Mon Sep 17 00:00:00 2001 From: Matteo Gheza Date: Fri, 30 Dec 2022 01:25:12 +0100 Subject: [PATCH 1/3] Add OSC Server PoC --- MusicBeam/MusicBeam.pde | 45 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/MusicBeam/MusicBeam.pde b/MusicBeam/MusicBeam.pde index 5abaeb2..63e35c6 100644 --- a/MusicBeam/MusicBeam.pde +++ b/MusicBeam/MusicBeam.pde @@ -7,6 +7,8 @@ import java.awt.GraphicsDevice; import controlP5.*; +import oscP5.*; + import ddf.minim.*; import ddf.minim.analysis.*; @@ -20,6 +22,9 @@ Strobe_Effect strobo; ControlP5 cp5; +OscP5 oscP5; +int oscServerPort = 14567; + Minim minim; AudioSource in; @@ -72,6 +77,8 @@ void setup() { colorMode(HSB, 360, 100, 100); initControls(); + + initOscSever(); } @@ -363,3 +370,41 @@ private void initAudioInput() bdFreq = new BeatDetect(in.bufferSize(), in.sampleRate()); bdSound = new BeatDetect(); } + +private void initOscSever() +{ + oscP5 = new OscP5(this, oscServerPort); +} + +void oscEvent(OscMessage theOscMessage) +{ + switch(theOscMessage.addrPattern()) { + case "/random/play": + randomToggle.setState(true); + break; + case "/random/stop": + randomToggle.setState(false); + break; + case "/random/next": + nextRandom(); + break; + case "/random/time": + randomTimeSlider.setValue(theOscMessage.get(0).intValue()); + break; + + case "/beat/delay": + beatDelaySlider.setValue(theOscMessage.get(0).intValue()); + break; + case "/beat/minLevel": + minLevelSlider.setValue(theOscMessage.get(0).intValue()); + break; + +/* + default: + print("### received an unknown osc message."); + print(" addrpattern: "+theOscMessage.addrPattern()); + println(" typetag: "+theOscMessage.typetag()); + break; +*/ + } +} From 543ac5d665d27fb8b9b8032190f253404756f640 Mon Sep 17 00:00:00 2001 From: Matteo Gheza Date: Fri, 30 Dec 2022 12:16:12 +0100 Subject: [PATCH 2/3] Add oscP5 library to CI --- .github/workflows/ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9d110e7..4b63048 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,6 +27,8 @@ jobs: sudo apt install wget curl -y curl -s https://api.github.com/repos/sojamo/controlp5/releases/latest | jq -r '.assets[0]["browser_download_url"]' | xargs -L 1 wget -q unzip -d /opt/hostedtoolcache/processing/${{matrix.processing-version}}/x64/modes/java/libraries controlP5* + wget -q https://sojamo.de/libraries/oscP5/download/oscP5-0.9.8.zip + unzip -d /opt/hostedtoolcache/processing/${{matrix.processing-version}}/x64/modes/java/libraries oscP5* curl -s https://api.github.com/repos/ddf/Minim/releases/latest | jq -r '.["zipball_url"]' | xargs -L 1 wget -q unzip -d /opt/hostedtoolcache/processing/${{matrix.processing-version}}/x64/modes/java/libraries v* sudo mv /opt/hostedtoolcache/processing/${{matrix.processing-version}}/x64/modes/java/libraries/ddf-Minim-* /opt/hostedtoolcache/processing/${{matrix.processing-version}}/x64/modes/java/libraries/minim From 3364003ded08b1079db851f6a7919a3a913d8cee Mon Sep 17 00:00:00 2001 From: Matteo Gheza Date: Fri, 30 Dec 2022 12:19:53 +0100 Subject: [PATCH 3/3] Fix CI Windows build --- .github/workflows/ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4b63048..00533dc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -62,6 +62,8 @@ jobs: sudo apt install wget curl -y curl -s https://api.github.com/repos/sojamo/controlp5/releases/latest | jq -r '.assets[0]["browser_download_url"]' | xargs -L 1 wget -q unzip -d /opt/hostedtoolcache/processing/${{matrix.processing-version}}/x64/modes/java/libraries controlP5* + wget -q https://sojamo.de/libraries/oscP5/download/oscP5-0.9.8.zip + unzip -d /opt/hostedtoolcache/processing/${{matrix.processing-version}}/x64/modes/java/libraries oscP5* curl -s https://api.github.com/repos/ddf/Minim/releases/latest | jq -r '.["zipball_url"]' | xargs -L 1 wget -q unzip -d /opt/hostedtoolcache/processing/${{matrix.processing-version}}/x64/modes/java/libraries v* sudo mv /opt/hostedtoolcache/processing/${{matrix.processing-version}}/x64/modes/java/libraries/ddf-Minim-* /opt/hostedtoolcache/processing/${{matrix.processing-version}}/x64/modes/java/libraries/minim