diff --git a/client/components/ChanStrip.tsx b/client/components/ChanStrip.tsx index c6a62351..ae434288 100644 --- a/client/components/ChanStrip.tsx +++ b/client/components/ChanStrip.tsx @@ -20,7 +20,7 @@ import { SOCKET_SET_HIGH, SOCKET_SET_AUX_LEVEL, SOCKET_SET_INPUT_GAIN, - SOCKET_SET_INPUT_SELECTOR + SOCKET_SET_INPUT_SELECTOR, } from '../../server/constants/SOCKET_IO_DISPATCHERS' import CcgChannelInputSettings from './CcgChannelSettings' import ReductionMeter from './ReductionMeter' @@ -74,7 +74,7 @@ class ChanStrip extends React.PureComponent< channel: -1, }) } - handleInputSelect(selected:number) { + handleInputSelect(selected: number) { window.socketIoClient.emit(SOCKET_SET_INPUT_SELECTOR, { faderIndex: this.props.faderIndex, selected: selected, @@ -147,60 +147,69 @@ class ChanStrip extends React.PureComponent< }) } + inputSelectorButton(index: number) { + return ( + + ) + } + inputSelector() { - return( + return (
- - - -
+ {window.mixerProtocol.channelTypes[0].toMixer + .CHANNEL_INPUT_SELECTOR ? ( + + {window.mixerProtocol.channelTypes[0].toMixer.CHANNEL_INPUT_SELECTOR.map( + (none: any, index: number) => { + return this.inputSelectorButton(index) + } + )} + + ) : null} + ) - } inputGain() { return (
Gain - { - this.handleInputGain(event) - }} - /> + {window.mixerProtocol.channelTypes[0].toMixer + .CHANNEL_INPUT_GAIN ? ( + + { + this.handleInputGain(event) + }} + /> + + ) : null}
) } - threshold() { return (
@@ -254,7 +263,7 @@ class ChanStrip extends React.PureComponent< delay() { return ( -
+
{Math.round( 500 * (this.props.fader[this.props.faderIndex] @@ -456,20 +465,17 @@ class ChanStrip extends React.PureComponent< return (
-       - INPUT -       -       +       INPUT             - COMPRESSOR       +       COMPRESSOR                               - DELAY +       DELAY
diff --git a/client/index.tsx b/client/index.tsx index 75813282..6fd37686 100644 --- a/client/index.tsx +++ b/client/index.tsx @@ -16,11 +16,12 @@ import { import { I18nextProvider } from 'react-i18next' import i18n from './i18n' +import { IMixerProtocol } from '../server/constants/MixerProtocolInterface' declare global { interface Window { storeRedux: any - mixerProtocol: any + mixerProtocol: IMixerProtocol mixerProtocolPresets: any mixerProtocolList: any socketIoClient: any diff --git a/server/constants/mixerProtocols/DmxIs.ts b/server/constants/mixerProtocols/DmxIs.ts index 1df5d06f..9eba2b02 100644 --- a/server/constants/mixerProtocols/DmxIs.ts +++ b/server/constants/mixerProtocols/DmxIs.ts @@ -16,8 +16,6 @@ export const DMXIS: IMixerProtocol = { channelTypeName: 'CH', channelTypeColor: '#3f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '/dmxis/ch/{channel}', @@ -45,8 +43,6 @@ export const DMXIS: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '/dmxis/ch/{channel}', diff --git a/server/constants/mixerProtocols/LawoMC2.ts b/server/constants/mixerProtocols/LawoMC2.ts index 1a6ba65a..86c7432d 100644 --- a/server/constants/mixerProtocols/LawoMC2.ts +++ b/server/constants/mixerProtocols/LawoMC2.ts @@ -16,8 +16,6 @@ export const LawoMC2: IMixerProtocol = { channelTypeName: 'CH', channelTypeColor: '#2f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: @@ -55,8 +53,6 @@ export const LawoMC2: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: diff --git a/server/constants/mixerProtocols/LawoRelayVrx4.ts b/server/constants/mixerProtocols/LawoRelayVrx4.ts index 5489c742..f13eb5f3 100644 --- a/server/constants/mixerProtocols/LawoRelayVrx4.ts +++ b/server/constants/mixerProtocols/LawoRelayVrx4.ts @@ -16,8 +16,6 @@ export const LawoRelayVrx4: IMixerProtocol = { channelTypeName: 'CH', channelTypeColor: '#2f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: @@ -55,8 +53,6 @@ export const LawoRelayVrx4: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: diff --git a/server/constants/mixerProtocols/LawoRuby.ts b/server/constants/mixerProtocols/LawoRuby.ts index 049ae781..6c73aa69 100644 --- a/server/constants/mixerProtocols/LawoRuby.ts +++ b/server/constants/mixerProtocols/LawoRuby.ts @@ -16,8 +16,6 @@ export const LawoRuby: IMixerProtocol = { channelTypeName: 'CH', channelTypeColor: '#2f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: @@ -55,8 +53,6 @@ export const LawoRuby: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: diff --git a/server/constants/mixerProtocols/SSLsystemT.ts b/server/constants/mixerProtocols/SSLsystemT.ts index 24905ae4..52476495 100644 --- a/server/constants/mixerProtocols/SSLsystemT.ts +++ b/server/constants/mixerProtocols/SSLsystemT.ts @@ -25,8 +25,6 @@ export const SSLSystemT: IMixerProtocol = { channelTypeName: 'CH', channelTypeColor: '#2f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [emptyMixerMessage()], // Handled by SSLMixerconnection CHANNEL_VU: [emptyMixerMessage()], // Not implemented in SSL Automation protocol yet CHANNEL_VU_REDUCTION: [emptyMixerMessage()], @@ -54,8 +52,6 @@ export const SSLSystemT: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: 'f1 06 00 80 00 {channel} {level}', diff --git a/server/constants/mixerProtocols/StuderOnAirEmber.ts b/server/constants/mixerProtocols/StuderOnAirEmber.ts index b762f75c..3db1e01a 100644 --- a/server/constants/mixerProtocols/StuderOnAirEmber.ts +++ b/server/constants/mixerProtocols/StuderOnAirEmber.ts @@ -16,8 +16,6 @@ export const StuderOnAirMaster: IMixerProtocol = { channelTypeName: 'MONO', channelTypeColor: '#2f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: @@ -156,8 +154,6 @@ CH 96:7f 8f ff fe d9 5c 80 30 80 a4 19 31 17 a1 15 31 13 bf 60 10 31 0e a6 0c 31 */ toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: diff --git a/server/constants/mixerProtocols/StuderVistaEmber.ts b/server/constants/mixerProtocols/StuderVistaEmber.ts index e5e6ed6e..d17db653 100644 --- a/server/constants/mixerProtocols/StuderVistaEmber.ts +++ b/server/constants/mixerProtocols/StuderVistaEmber.ts @@ -55,8 +55,6 @@ export const StuderVistaMaster: IMixerProtocol = { channelTypeName: 'MONO', channelTypeColor: '#2f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: 'a1 a1 {ch-type} {channel} a1 a2 e1', @@ -113,8 +111,6 @@ export const StuderVistaMaster: IMixerProtocol = { ], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { // 7f 8f ff fe d9 5c 80 30 80 a1 25 31 23 a1 21 31 1f a1 1d 31 1b a1 19 31 17 {a3} 15 31 13 a1 11 31 0f a2 0d 31 0b e1 09 31 07 63 {05 09 03 c0 06 13 00 00 00 00} @@ -188,8 +184,6 @@ export const StuderVistaMaster: IMixerProtocol = { channelTypeName: 'ST', channelTypeColor: '#3f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: @@ -228,8 +222,6 @@ export const StuderVistaMaster: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { // 7f 8f ff fe d9 5c 80 30 80 a1 25 31 23 a1 21 31 1f a1 1d 31 1b a2 19 31 17 b9 15 31 13 a1 11 31 0f a2 0d 31 0b e1 09 31 07 63 05 09 03 80 03 05 00 00 00 00 @@ -302,8 +294,6 @@ export const StuderVistaMaster: IMixerProtocol = { channelTypeName: 'Inp X', channelTypeColor: '#2f3f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: @@ -342,8 +332,6 @@ export const StuderVistaMaster: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: diff --git a/server/constants/mixerProtocols/ardourMaster.ts b/server/constants/mixerProtocols/ardourMaster.ts index 19f53634..088ea9ad 100644 --- a/server/constants/mixerProtocols/ardourMaster.ts +++ b/server/constants/mixerProtocols/ardourMaster.ts @@ -43,8 +43,6 @@ export const ArdourMaster: IMixerProtocol = { channelTypeName: 'CH', channelTypeColor: '#2f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '/strip/fader/{channel}', @@ -90,8 +88,6 @@ export const ArdourMaster: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '/strip/fader/{channel}', diff --git a/server/constants/mixerProtocols/behringerXrMaster.ts b/server/constants/mixerProtocols/behringerXrMaster.ts index e5f9a815..c93154e9 100644 --- a/server/constants/mixerProtocols/behringerXrMaster.ts +++ b/server/constants/mixerProtocols/behringerXrMaster.ts @@ -269,8 +269,6 @@ export const BehringerXrMaster: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '/ch/{channel}/mix/fader', diff --git a/server/constants/mixerProtocols/casparCGMaster.ts b/server/constants/mixerProtocols/casparCGMaster.ts index 6b8ff782..34d27c17 100644 --- a/server/constants/mixerProtocols/casparCGMaster.ts +++ b/server/constants/mixerProtocols/casparCGMaster.ts @@ -134,8 +134,6 @@ let CasparCGMasterObject: ICasparCGMixerGeometry = { channelTypeName: 'CH', channelTypeColor: '#2f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: 'none', @@ -163,8 +161,6 @@ let CasparCGMasterObject: ICasparCGMixerGeometry = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: 'none', diff --git a/server/constants/mixerProtocols/genericMidi.ts b/server/constants/mixerProtocols/genericMidi.ts index 02c0e7ef..45bece78 100644 --- a/server/constants/mixerProtocols/genericMidi.ts +++ b/server/constants/mixerProtocols/genericMidi.ts @@ -16,8 +16,6 @@ export const GenericMidi: IMixerProtocol = { channelTypeName: 'CH', channelTypeColor: '#2f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '0', @@ -54,8 +52,6 @@ export const GenericMidi: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '38', diff --git a/server/constants/mixerProtocols/midasMaster.ts b/server/constants/mixerProtocols/midasMaster.ts index 2915bc89..3e519087 100644 --- a/server/constants/mixerProtocols/midasMaster.ts +++ b/server/constants/mixerProtocols/midasMaster.ts @@ -132,8 +132,6 @@ export const MidasMaster: IMixerProtocol = { channelTypeName: 'CH', channelTypeColor: '#2f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '/ch/{channel}/mix/fader', @@ -252,8 +250,6 @@ export const MidasMaster: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '/ch/{channel}/mix/fader', diff --git a/server/constants/mixerProtocols/reaperMaster.ts b/server/constants/mixerProtocols/reaperMaster.ts index d396e10d..bdc6afa3 100644 --- a/server/constants/mixerProtocols/reaperMaster.ts +++ b/server/constants/mixerProtocols/reaperMaster.ts @@ -16,8 +16,6 @@ export const ReaperMaster: IMixerProtocol = { channelTypeName: 'CH', channelTypeColor: '#2f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '/track/{channel}/volume', @@ -63,8 +61,6 @@ export const ReaperMaster: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '/track/{channel}/volume', @@ -122,8 +118,6 @@ export const ReaperMaster: IMixerProtocol = { channelTypeName: 'MASTER', channelTypeColor: '#0f0f3f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '/master/volume', @@ -168,8 +162,6 @@ export const ReaperMaster: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: '/master/volume', diff --git a/server/constants/mixerProtocols/yamahaQLCL.ts b/server/constants/mixerProtocols/yamahaQLCL.ts index 4fabde47..dfd26d94 100644 --- a/server/constants/mixerProtocols/yamahaQLCL.ts +++ b/server/constants/mixerProtocols/yamahaQLCL.ts @@ -25,8 +25,6 @@ export const YamahaQLCL: IMixerProtocol = { channelTypeName: 'CH', channelTypeColor: '#2f2f2f', fromMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: @@ -75,8 +73,6 @@ export const YamahaQLCL: IMixerProtocol = { CHANNEL_MUTE_OFF: [emptyMixerMessage()], }, toMixer: { - CHANNEL_INPUT_GAIN: [emptyMixerMessage()], - CHANNEL_INPUT_SELECTOR: [emptyMixerMessage()], CHANNEL_OUT_GAIN: [ { mixerMessage: