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
|
const PORT = 6676
|
||||||
|
|
||||||
// Do we have a problem, shall we debug?
|
// Do we have a problem, shall we debug?
|
||||||
const DEBUG = true
|
const DEBUG = {
|
||||||
|
osc: true,
|
||||||
|
udp: false
|
||||||
|
}
|
||||||
|
|
||||||
|
// MIDI out
|
||||||
const MIDI = false
|
const MIDI = false
|
||||||
|
|
||||||
|
|
||||||
|
@ -26,8 +30,6 @@ const fs = require('fs')
|
||||||
|
|
||||||
if (MIDI) {
|
if (MIDI) {
|
||||||
const midi = require('midi')
|
const midi = require('midi')
|
||||||
let midiOn = false
|
|
||||||
let midiNotes = {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -93,7 +95,7 @@ function openSerial() {
|
||||||
// Arduino OSC gre v web
|
// Arduino OSC gre v web
|
||||||
scon.on('message', msg => {
|
scon.on('message', msg => {
|
||||||
// Debug incoming osc
|
// Debug incoming osc
|
||||||
if (DEBUG) {
|
if (DEBUG.osc) {
|
||||||
console.log('osc msg', msg)
|
console.log('osc msg', msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -171,7 +173,7 @@ scudp.on('open', () => {
|
||||||
})
|
})
|
||||||
|
|
||||||
scudp.on('message', (msg) => {
|
scudp.on('message', (msg) => {
|
||||||
if (DEBUG) {
|
if (DEBUG.udp) {
|
||||||
console.log('got UDP msg', msg);
|
console.log('got UDP msg', msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -246,22 +248,9 @@ const sendAll = (msg, info, oscWS, osclients) => {
|
||||||
}, info, oscWS, osclients)
|
}, info, oscWS, osclients)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (msg.address == '/accel') {
|
|
||||||
if (MIDI) {
|
if (MIDI) {
|
||||||
if (msg.args[1] > 2000) {
|
if (msg.address == '/midi') {
|
||||||
console.log("SEND MIDI!")
|
mo.send(msg.args)
|
||||||
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
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -273,7 +262,7 @@ const sendAll = (msg, info, oscWS, osclients) => {
|
||||||
})
|
})
|
||||||
|
|
||||||
if (scudp) {
|
if (scudp) {
|
||||||
if (DEBUG) {
|
if (DEBUG.udp) {
|
||||||
console.log("UDP SEND", msg)
|
console.log("UDP SEND", msg)
|
||||||
}
|
}
|
||||||
scudp.send(msg)
|
scudp.send(msg)
|
||||||
|
|
Loading…
Reference in New Issue