Skip to content

Commit

Permalink
feat: input selector - implemented
Browse files Browse the repository at this point in the history
  • Loading branch information
olzzon authored and olzzon committed Jun 8, 2020
1 parent 04e6c61 commit 419c1be
Show file tree
Hide file tree
Showing 13 changed files with 68 additions and 5 deletions.
8 changes: 4 additions & 4 deletions client/components/ChanStrip.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -76,13 +76,13 @@ class ChanStrip extends React.PureComponent<
}
handleInputSelect(selected:number) {
window.socketIoClient.emit(SOCKET_SET_INPUT_SELECTOR, {
channel: this.props.faderIndex,
inputSelect: selected,
faderIndex: this.props.faderIndex,
selected: selected,
})
}
handleInputGain(event: any) {
window.socketIoClient.emit(SOCKET_SET_INPUT_GAIN, {
channel: this.props.faderIndex,
faderIndex: this.props.faderIndex,
level: parseFloat(event),
})
}
Expand Down Expand Up @@ -182,7 +182,7 @@ class ChanStrip extends React.PureComponent<
inputGain() {
return (
<div className="parameter-text">
Inp.Gain
Gain
<ReactSlider
className="chan-strip-fader"
thumbClassName="chan-strip-thumb"
Expand Down
16 changes: 16 additions & 0 deletions server/MainThreadHandler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ import {
SOCKET_GET_MIXER_PRESET_LIST,
SOCKET_RETURN_MIXER_PRESET_LIST,
SOCKET_LOAD_MIXER_PRESET,
SOCKET_SET_INPUT_SELECTOR,
} from './constants/SOCKET_IO_DISPATCHERS'
import {
TOGGLE_PGM,
Expand Down Expand Up @@ -418,5 +419,20 @@ export class MainThreadHandlers {
mixerGenericConnection.updateInputGain(payload.faderIndex)
this.updatePartialStore(payload.faderIndex)
})
.on(SOCKET_SET_INPUT_SELECTOR, (payload: any) => {
logger.verbose(
'Set Input selector : ' +
String(payload.faderIndex + 1) +
' Selected : ' +
String(payload.selected)
)
store.dispatch({
type: SOCKET_SET_INPUT_SELECTOR,
channel: payload.faderIndex,
selected: parseFloat(payload.selected),
})
mixerGenericConnection.updateInputSelector(payload.faderIndex)
this.updatePartialStore(payload.faderIndex)
})
}
}
1 change: 1 addition & 0 deletions server/reducers/faderActions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ export const SET_COMPLETE_FADER_STATE = 'SET_COMPLETE_FADER_STATE'
export const SET_SINGLE_FADER_STATE = 'SET_SINGLE_FADER_STATE'
export const SET_FADER_LEVEL = 'SET_FADER_LEVEL'
export const SET_INPUT_GAIN = 'SET_INPUT_GAIN'
export const SET_INPUT_SELECTOR = 'SET_INPUT_SELECTOR'
export const SET_ALL_VU_LEVELS = 'SET_ALL_VU_LEVELS'
export const SET_CHANNEL_LABEL = 'SET_CHANNEL_LABEL'
export const SET_FADER_THRESHOLD = 'SET_FADER_THRESHOLD'
Expand Down
8 changes: 8 additions & 0 deletions server/reducers/fadersReducer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ import {
SET_FADER_MONITOR,
SET_SINGLE_FADER_STATE,
SHOW_IN_MINI_MONITOR,
SET_INPUT_SELECTOR,
} from '../reducers/faderActions'

export interface IFaders {
Expand All @@ -46,6 +47,7 @@ export interface IFaders {
export interface IFader {
faderLevel: number
inputGain: number
inputSelector: number
label: string
pgmOn: boolean
voOn: boolean
Expand Down Expand Up @@ -84,6 +86,7 @@ const defaultFadersReducerState = (numberOfFaders: number): IFaders[] => {
defaultObj[0].fader[index] = {
faderLevel: 0.75,
inputGain: 0.75,
inputSelector: 1,
label: '',
pgmOn: false,
voOn: false,
Expand Down Expand Up @@ -170,6 +173,11 @@ export const faders = (
action.level
)
return nextState
case SET_INPUT_SELECTOR: //channel: selected:
nextState[0].fader[action.channel].inputSelector = parseFloat(
action.selected
)
return nextState
case SET_FADER_THRESHOLD: //channel: level:
nextState[0].fader[action.channel].threshold = parseFloat(
action.level
Expand Down
16 changes: 15 additions & 1 deletion server/utils/MixerConnection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ export class MixerGenericConnection {
}

updateInputGain(faderIndex: number) {
let level = state.faders[0].fader[faderIndex].ratio
let level = state.faders[0].fader[faderIndex].inputGain
state.channels[0].channel.map(
(channel: IChannel, channelIndex: number) => {
if (faderIndex === channel.assignedFader) {
Expand All @@ -152,6 +152,20 @@ export class MixerGenericConnection {
)
}

updateInputSelector(faderIndex: number) {
let inputSelected = state.faders[0].fader[faderIndex].inputSelector
state.channels[0].channel.map(
(channel: IChannel, channelIndex: number) => {
if (faderIndex === channel.assignedFader) {
this.mixerConnection.updateInputSelector(
channelIndex,
inputSelected
)
}
}
)
}

updatePflState(channelIndex: number) {
this.mixerConnection.updatePflState(channelIndex)
}
Expand Down
3 changes: 3 additions & 0 deletions server/utils/mixerConnections/CasparCGConnection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -473,6 +473,9 @@ export class CasparCGConnection {
updateInputGain(channelIndex: number, level: number) {
return true
}
updateInputSelector(channelIndex: number, inputSelected: number) {
return true
}

updateThreshold(channelIndex: number, level: number) {
return true
Expand Down
3 changes: 3 additions & 0 deletions server/utils/mixerConnections/EmberMixerConnection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -295,6 +295,9 @@ export class EmberMixerConnection {
updateInputGain(channelIndex: number, level: number) {
return true
}
updateInputSelector(channelIndex: number, inputSelected: number) {
return true
}

updateThreshold(channelIndex: number, level: number) {
return true
Expand Down
3 changes: 3 additions & 0 deletions server/utils/mixerConnections/MidiMixerConnection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -231,6 +231,9 @@ export class MidiMixerConnection {
updateInputGain(channelIndex: number, level: number) {
return true
}
updateInputSelector(channelIndex: number, inputSelected: number) {
return true
}

updateThreshold(channelIndex: number, level: number) {
return true
Expand Down
3 changes: 3 additions & 0 deletions server/utils/mixerConnections/OscMixerConnection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -697,6 +697,9 @@ export class OscMixerConnection {
updateInputGain(channelIndex: number, level: number) {
return true
}
updateInputSelector(channelIndex: number, inputSelected: number) {
return true
}

updateThreshold(channelIndex: number, level: number) {
let channelType = state.channels[0].channel[channelIndex].channelType
Expand Down
3 changes: 3 additions & 0 deletions server/utils/mixerConnections/SSLMixerConnection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -492,6 +492,9 @@ export class SSLMixerConnection {
updateInputGain(channelIndex: number, level: number) {
return true
}
updateInputSelector(channelIndex: number, inputSelected: number) {
return true
}

updateThreshold(channelIndex: number, level: number) {
return true
Expand Down
3 changes: 3 additions & 0 deletions server/utils/mixerConnections/StuderMixerConnection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -320,6 +320,9 @@ export class StuderMixerConnection {
updateInputGain(channelIndex: number, level: number) {
return true
}
updateInputSelector(channelIndex: number, inputSelected: number) {
return true
}

updateThreshold(channelIndex: number, level: number) {
return true
Expand Down
3 changes: 3 additions & 0 deletions server/utils/mixerConnections/StuderVistaMixerConnection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -570,6 +570,9 @@ export class StuderVistaMixerConnection {
updateInputGain(channelIndex: number, level: number) {
return true
}
updateInputSelector(channelIndex: number, inputSelected: number) {
return true
}

updateThreshold(channelIndex: number, level: number) {
return true
Expand Down
3 changes: 3 additions & 0 deletions server/utils/mixerConnections/YamahaQlClConnection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -382,6 +382,9 @@ export class QlClMixerConnection {
updateInputGain(channelIndex: number, level: number) {
return true
}
updateInputSelector(channelIndex: number, inputSelected: number) {
return true
}

updateThreshold(channelIndex: number, level: number) {
return true
Expand Down

0 comments on commit 419c1be

Please sign in to comment.