Skip to content

Commit 1048431

Browse files
authored
Merge pull request #8 from thomasvanta/master
Launchpad Pro mk3 OSC settings
2 parents 158011a + df3becf commit 1048431

File tree

1 file changed

+31
-2
lines changed

1 file changed

+31
-2
lines changed

src/main/java/com/novation/launchpadProMk3/LaunchpadProMk3ControllerExtension.java

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.novation.launchpadProMk3;
22

33
import com.bitwig.extension.api.opensoundcontrol.OscConnection;
4+
import com.bitwig.extension.api.opensoundcontrol.OscInvalidArgumentTypeException;
45
import com.bitwig.extension.api.util.midi.ShortMidiMessage;
56
import com.bitwig.extension.callback.ShortMidiMessageReceivedCallback;
67
import com.bitwig.extension.controller.ControllerExtension;
@@ -9,6 +10,7 @@
910
import com.bitwig.extensions.framework.Layer;
1011
import com.bitwig.extensions.framework.Layers;
1112

13+
import java.io.IOException;
1214
import java.util.ArrayList;
1315
import java.util.List;
1416
import java.util.concurrent.CompletableFuture;
@@ -70,13 +72,40 @@ public void init() {
7072
midiIn.setMidiCallback((ShortMidiMessageReceivedCallback) this::onMidi0);
7173
midiOut = host.getMidiOutPort(0);
7274

73-
SettableBooleanValue SendOSC = host.getPreferences().getBooleanSetting("Send OSC", "OSC", false);
75+
Preferences prefs = host.getPreferences();
76+
SettableRangedValue OscPortSetting = prefs.getNumberSetting("Port", "OSC", 8000, 100000, 1, "", 12345);
77+
SettableStringValue OscAddressSetting = prefs.getStringSetting("Address", "OSC", 15, "10.0.0.255");
78+
Signal SignalTest = prefs.getSignalSetting("Send Message", "OSC", "Test");
79+
SettableBooleanValue SendOSC = prefs.getBooleanSetting("Send OSC", "OSC", false);
80+
7481
if (SendOSC.get() == true) {
75-
gridOSCconnection = host.getOscModule().connectToUdpServer("255.255.255.255", 12345,
82+
gridOSCconnection = host.getOscModule().connectToUdpServer(OscAddressSetting.get(),
83+
(int) OscPortSetting.getRaw(),
7684
host.getOscModule().createAddressSpace());
7785
} else {
7886
gridOSCconnection = null;
7987
}
88+
89+
Object testArg = "sending!";
90+
// connection.startBundle();
91+
try {
92+
gridOSCconnection.sendMessage("/RHBitwig", testArg);
93+
} catch (IOException e) {
94+
// throw new RuntimeException(e);
95+
host.println("No Connection!!");
96+
}
97+
98+
SignalTest.addSignalObserver(() -> {
99+
Object o = "1";
100+
try {
101+
gridOSCconnection.sendMessage("Bitwig Test Message", o);
102+
} catch (IOException e) {
103+
// throw new RuntimeException(e);
104+
host.println("No Connection!!");
105+
}
106+
});
107+
108+
80109

81110
noteInput = midiIn.createNoteInput("MIDI", "80????", "90????", "A0????", "D0????");
82111
noteInput.setShouldConsumeEvents(false);

0 commit comments

Comments
 (0)