Skip to content

Commit

Permalink
feat: Behringer X32 gain reduction meter
Browse files Browse the repository at this point in the history
  • Loading branch information
olzzon authored and olzzon committed Apr 19, 2020
1 parent 9df30ba commit c0e3469
Showing 1 changed file with 28 additions and 13 deletions.
41 changes: 28 additions & 13 deletions server/utils/mixerConnections/productSpecific/midas.ts
Original file line number Diff line number Diff line change
@@ -1,33 +1,48 @@
import { store, state } from '../../../reducers/store'
import { socketServer } from '../../../expressHandler'

import { SET_ALL_VU_LEVELS } from '../../../reducers/faderActions'
import { SOCKET_SET_VU } from '../../../constants/SOCKET_IO_DISPATCHERS';
import { SET_VU_REDUCTION_LEVEL, SET_VU_LEVEL } from '../../../reducers/faderActions'
import { SOCKET_SET_VU, SOCKET_SET_VU_REDUCTION } from '../../../constants/SOCKET_IO_DISPATCHERS';

export const midasMeter = (message: any) => {

const headerData = 4;
const DATA_OFFSET = 4;
let uint8bytes = Uint8Array.from(message[0]);
let dataview = new DataView(uint8bytes.buffer);
let vuMeters = [];
let vuMeters = []
let level: number
let reductionLevel: number
let numberOfChannels = state.settings[0].numberOfChannelsInType[0];

for (let i=0; i < numberOfChannels; i++) {
let level = dataview.getFloat32(4*i+headerData , true)
vuMeters.push({vuVal : level});
level = dataview.getFloat32(4*i+DATA_OFFSET , true)
reductionLevel = dataview.getFloat32(4*(i+64)+DATA_OFFSET , true)

vuMeters.push({vuVal : level})
store.dispatch({
type:SET_VU_LEVEL,
channel: i,
level: level
})
socketServer.emit(
SOCKET_SET_VU,
{
faderIndex: state.channels[0].channel[i].assignedFader,
level: level
}
)
store.dispatch({
type:SET_VU_REDUCTION_LEVEL,
channel: i,
level: reductionLevel
})
socketServer.emit(
SOCKET_SET_VU_REDUCTION,
{
faderIndex: state.channels[0].channel[i].assignedFader,
level: reductionLevel
}
)
}
store.dispatch({
type: SET_ALL_VU_LEVELS,
vuMeters: vuMeters
});


};
}

0 comments on commit c0e3469

Please sign in to comment.