Premik midi v OSC kanal
parent
6ea1d9e49b
commit
2a5a4d0a15
31
server.js
31
server.js
|
@ -5,8 +5,12 @@ const OSCPORT = 57120;
|
|||
const PORT = 6676
|
||||
|
||||
// Do we have a problem, shall we debug?
|
||||
const DEBUG = true
|
||||
const DEBUG = {
|
||||
osc: true,
|
||||
udp: false
|
||||
}
|
||||
|
||||
// MIDI out
|
||||
const MIDI = false
|
||||
|
||||
|
||||
|
@ -26,8 +30,6 @@ const fs = require('fs')
|
|||
|
||||
if (MIDI) {
|
||||
const midi = require('midi')
|
||||
let midiOn = false
|
||||
let midiNotes = {}
|
||||
}
|
||||
|
||||
|
||||
|
@ -93,7 +95,7 @@ function openSerial() {
|
|||
// Arduino OSC gre v web
|
||||
scon.on('message', msg => {
|
||||
// Debug incoming osc
|
||||
if (DEBUG) {
|
||||
if (DEBUG.osc) {
|
||||
console.log('osc msg', msg)
|
||||
}
|
||||
|
||||
|
@ -171,7 +173,7 @@ scudp.on('open', () => {
|
|||
})
|
||||
|
||||
scudp.on('message', (msg) => {
|
||||
if (DEBUG) {
|
||||
if (DEBUG.udp) {
|
||||
console.log('got UDP msg', msg);
|
||||
}
|
||||
|
||||
|
@ -246,22 +248,9 @@ const sendAll = (msg, info, oscWS, osclients) => {
|
|||
}, info, oscWS, osclients)
|
||||
}
|
||||
|
||||
if (msg.address == '/accel') {
|
||||
if (MIDI) {
|
||||
if (msg.args[1] > 2000) {
|
||||
console.log("SEND MIDI!")
|
||||
const visina = Math.round((msg.args[1] - 2000) / 100)
|
||||
midiNotes[visina] = true
|
||||
mo.send([144, visina, 127])
|
||||
midiOn = true
|
||||
}
|
||||
|
||||
if (msg.args[1] < 2000 && midiOn) {
|
||||
Object.keys(midiNotes).forEach(visina => {
|
||||
mo.send([128, visina, 127])
|
||||
})
|
||||
midiOn = false
|
||||
}
|
||||
if (msg.address == '/midi') {
|
||||
mo.send(msg.args)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -273,7 +262,7 @@ const sendAll = (msg, info, oscWS, osclients) => {
|
|||
})
|
||||
|
||||
if (scudp) {
|
||||
if (DEBUG) {
|
||||
if (DEBUG.udp) {
|
||||
console.log("UDP SEND", msg)
|
||||
}
|
||||
scudp.send(msg)
|
||||
|
|
Loading…
Reference in New Issue