def _setup_mixer_control(self): is_momentary = True self._num_tracks = (COLS) global mixer mixer = MixerComponent(COLS, 0, True, True) mixer.name = 'Mixer' self._mixer = mixer mixer.set_track_offset(0) #Sets start point for mixer strip (offset from left) for index in range(COLS): #use the bottom row of encoders for volume, so add 24 to offset the index mixer.channel_strip(index).set_volume_control(self._dial[index+24]) for index in range(COLS): mixer.channel_strip(index).name = 'Mixer_ChannelStrip_' + str(index) mixer.track_eq(index).name = 'Mixer_EQ_' + str(index) mixer.track_filter(index).name = 'Mixer_Filter_' + str(index) #added by a mixer.channel_strip(index)._invert_mute_feedback = True #mixer.channel_strip(index).set_select_button(ButtonElement(is_momentary, MIDI_NOTE_TYPE, CH, track_select_notes[index])) self.song().view.selected_track = mixer.channel_strip(0)._track #set the selected strip to the first track, so that we don't, for example, try to assign a button to arm the master track, which would cause an assertion error
def _init_mixer_component(self): is_momentary = True global mixer mixer = MixerComponent(8) mixer.name = 'Mixer' mixer.set_track_offset(0) self.song().view.selected_track = mixer.channel_strip(0)._track for track in range(8): #self.log_message("Adding track " + str(track)) strip = mixer.channel_strip(track) strip.name = 'Channel_Strip_' + str(track) volume_control = SliderElement(MIDI_CC_TYPE, track, VOL_CC) snd_A_control = SliderElement(MIDI_CC_TYPE, track, SND_A_CC) snd_B_control = SliderElement(MIDI_CC_TYPE, track, SND_B_CC) pan_control = SliderElement(MIDI_CC_TYPE, track, PAN_CC) arm_button = ButtonElement(not is_momentary, MIDI_CC_TYPE, track, ARM_CC) select_button = ButtonElement(is_momentary, MIDI_CC_TYPE, track, SEL_CC) mute_button = ButtonElement(not is_momentary, MIDI_CC_TYPE, track, MUTE_CC) volume_control.name = str(track) + '_Volume_Control' snd_A_control.name = str(track) + '_Send_A_Control' snd_B_control.name = str(track) + '_Send_B_Control' pan_control.name = str(track) + '_Pan_Control' arm_button.name = str(track) + '_arm_Button' select_button.name = str(track) + '_Select_Button' mute_button.name = str(track) + '_Mute_Button' strip.set_volume_control(volume_control) strip.set_send_controls([snd_A_control, snd_B_control]) strip.set_pan_control(pan_control) strip.set_arm_button(arm_button) strip.set_select_button(select_button) strip.set_mute_button(mute_button) return mixer
def _setup_mixer_control(self): is_momentary = True self._num_tracks = (COLS) global mixer mixer = MixerComponent(COLS, 0, True, True) mixer.name = 'Mixer' self._mixer = mixer mixer.set_track_offset( 0) #Sets start point for mixer strip (offset from left) for index in range(COLS): #use the bottom row of encoders for volume, so add 24 to offset the index mixer.channel_strip(index).set_volume_control(self._dial[index + 24]) for index in range(COLS): mixer.channel_strip( index).name = 'Mixer_ChannelStrip_' + str(index) mixer.track_eq(index).name = 'Mixer_EQ_' + str(index) mixer.track_filter(index).name = 'Mixer_Filter_' + str( index) #added by a mixer.channel_strip(index)._invert_mute_feedback = True #mixer.channel_strip(index).set_select_button(ButtonElement(is_momentary, MIDI_NOTE_TYPE, CH, track_select_notes[index])) self.song().view.selected_track = mixer.channel_strip( 0 )._track #set the selected strip to the first track, so that we don't, for example, try to assign a button to arm the master track, which would cause an assertion error