Ejemplo n.º 1
0
 def _setup_mixer(self):
     self._mixer = MonoMixerComponent(
         name='Mixer',
         tracks_provider=self._session_ring,
         track_assigner=SimpleTrackAssigner(),
         invert_mute_feedback=True,
         auto_name=True,
         enable_skinning=True,
         channel_strip_component_type=MonoChannelStripComponent)
     self._mixer._selected_strip.layer = Layer(priority=4,
                                               volume_control=self._fader)
     self._mixer.solo_mute_record_stop_layer = AddLayerMode(
         self._mixer,
         Layer(
             priority=4,
             mute_buttons=self._matrix.submatrix[:, 0],
             solo_buttons=self._matrix.submatrix[:, 1],
             arm_buttons=self._matrix.submatrix[:, 2],
         ))
     self._mixer.select_layer = AddLayerMode(
         self._mixer,
         Layer(priority=4,
               arming_track_select_buttons=self._matrix.submatrix[:, 3]))
     self._mixer.mute_layer = AddLayerMode(
         self._mixer,
         Layer(priority=4, mute_buttons=self._matrix.submatrix[:, 3]))
Ejemplo n.º 2
0
    def _setup_session(self):
        self._session_ring = SessionRingComponent(name='Session_Ring',
                                                  num_tracks=4,
                                                  num_scenes=4)

        self._session = SessionComponent(name='Session',
                                         session_ring=self._session_ring,
                                         auto_name=True)
        self._session.cliplaunch_layer = AddLayerMode(
            self._session,
            Layer(priority=4,
                  clip_launch_buttons=self._matrix.submatrix[:, :]))
        self._session.stop_layer = AddLayerMode(
            self._session,
            Layer(priority=4,
                  stop_track_clip_buttons=self._matrix.submatrix[:, 3]))

        self._session_navigation = SessionNavigationComponent(
            name='Session_Navigation', session_ring=self._session_ring)
        self._session_navigation._horizontal_layer = AddLayerMode(
            self._session_navigation,
            Layer(priority=4,
                  left_button=self._top_button[0],
                  right_button=self._top_button[1]))
        self._session_navigation._vertical_layer = AddLayerMode(
            self._session_navigation,
            Layer(priority=4,
                  up_button=self._top_button[0],
                  down_button=self._top_button[1]))
        self._session_navigation.set_enabled(False)
Ejemplo n.º 3
0
 def create_note_repeat_component(self):
     self._note_repeat = MaschineNoteRepeatEnabler(
         note_repeat=self._c_instance.note_repeat,
         name='Note_Repeat_Enabler',
         is_enabled=False)
     self._note_repeat.layer = Layer(
         note_repeat_button='note_repeat_button')
     self._note_repeat.note_repeat_component.layer = Layer(
         select_buttons='group_matrix')
     self._note_repeat.set_enabled(True)
Ejemplo n.º 4
0
	def _setup_session(self):
		self._session_ring = SessionRingComponent(name = 'Session_Ring', num_tracks = 4, num_scenes = 4)

		self._session = SessionComponent(name = 'Session', session_ring = self._session_ring, auto_name = True)
		self._session.layer = Layer(priority = 2, clip_launch_buttons = self._pad_matrix,) # stop_all_clips_button = self._button[5])
		self._session.set_enabled(False)

		self._session_navigation = SessionNavigationComponent(name = 'Session_Navigation', session_ring = self._session_ring)
		self._session_navigation.layer = Layer(priority = 2, left_button = self._button[0], right_button = self._button[1])
		self._session_navigation.set_enabled(False)
Ejemplo n.º 5
0
 def _setup_mixer(self):
     self._mixer = MorphMixerComponent(tracks_provider=self._session_ring,
                                       track_assigner=SimpleTrackAssigner(),
                                       auto_name=True,
                                       invert_mute_feedback=False)
     self._mixer._selected_strip.main_layer = AddLayerMode(
         self._mixer._selected_strip,
         Layer(priority=2, send_controls=self._send_pressure_matrix))
     self._mixer._selected_strip.shift_layer = AddLayerMode(
         self._mixer._selected_strip,
         Layer(priority=2, stop_button=self._button[5]))
Ejemplo n.º 6
0
 def _setup_keys_group(self):
     self._keys_group = MorphKeysGroup()
     self._keys_group.main_layer = AddLayerMode(
         self._keys_group, Layer(priority=2, matrix=self._key_matrix))
     self._keys_group.shift_layer = AddLayerMode(
         self._keys_group,
         Layer(priority=2,
               matrix=self._key_shift_matrix,
               scroll_up_button=self._key[12],
               scroll_down_button=self._key[11]))
     self._keys_group.set_enabled(False)
Ejemplo n.º 7
0
 def _setup_keys_group(self):
     # self._keys_group = MorphKeysGroup(translation_channel = KEY_TRANSLATION_CHANNEL)
     self._keys_group = MorphKeysGroup()
     self._keys_group.main_layer = AddLayerMode(
         self._keys_group, Layer(priority=2, matrix=self._key_matrix))
     self._keys_group.shift_layer = AddLayerMode(
         self._keys_group,
         Layer(priority=2,
               matrix=self._key_shift_matrix,
               scroll_up_button=self._key[12],
               scroll_down_button=self._key[11]))
     self._keys_group.set_enabled(False)
Ejemplo n.º 8
0
 def _setup_drum_group2(self):
     # self._drum_group2 = MorphDrumGroup(set_pad_translations = self.set_pad_translations, translation_channel = DRUM_TRANSLATION_CHANNEL)
     self._drum_group2 = MorphDrumGroup()
     self._drum_group2.position = 9
     self._drum_group2.main_layer = AddLayerMode(
         self._drum_group2, Layer(priority=2, matrix=self._pad_matrix))
     self._drum_group2.nav_layer = AddLayerMode(
         self._drum_group2,
         Layer(priority=2,
               scroll_up_button=self._key[1],
               scroll_down_button=self._key[0]))
     self._drum_group2.set_enabled(False)
Ejemplo n.º 9
0
 def _setup_session3(self):
     self._session3 = SessionComponent(name='Session3',
                                       session_ring=self._session_ring,
                                       auto_name=True)
     self._session3.layer = Layer(priority=2,
                                  clip_launch_buttons=self._pad_matrix)
     self._session3.set_enabled(False)
Ejemplo n.º 10
0
 def _setup_transport(self):
     self._transport = TransportComponent(name='Transport')
     self._transport.layer = Layer(priority=2,
                                   play_button=self._button[4],
                                   stop_button=self._button[5],
                                   overdub_button=self._button[6])
     self._transport.set_enabled(False)
Ejemplo n.º 11
0
 def create_welcome_component(self):
     self._welcome = MaschineWelcome(name='Welcome')
     self._welcome.layer = Layer(pads='pad_matrix',
                                 group_buttons='group_matrix')
     self._tasks.add(
         task.sequence(task.wait(2),
                       task.run(partial(self._welcome.set_enabled, False))))
Ejemplo n.º 12
0
 def create_pad_matrix_modes(self):
     self._pad_modes = ModesComponent('Pad_Modes')
     self._pad_modes.layer = Layer(cycle_mode_button='select_button')
     self._pad_modes.add_mode('playable_mode', self._playable_mode)
     self._pad_modes.add_mode('track_selection_mode',
                              self._track_selection_matrix)
     self._pad_modes.selected_mode = 'track_selection_mode'
Ejemplo n.º 13
0
 def _setup_recorder(self):
     self._recorder = SessionRecordingComponent(
         view_controller=self._viewcontrol)
     self._recorder.layer = Layer(priority=4,
                                  new_button=self._side_button[2],
                                  record_button=self._side_button[1])
     self._recorder.set_enabled(False)
Ejemplo n.º 14
0
 def create_track_creation_component(self):
     self._track_creation = MaschineTrackCreation(name='Track_Creation',
                                                  is_enabled=False)
     self._track_creation.layer = Layer(
         return_track_button='return_track_button',
         audio_track_button='audio_track_button',
         midi_track_button='midi_track_button')
     self._track_creation.set_enabled(True)
Ejemplo n.º 15
0
 def create_transport_component(self):
     self._transport = MaschineTransport(name='Transport', is_enabled=False)
     layer = Layer(play_button='play_button',
                   stop_button='stop_button',
                   tap_tempo_button='tap_button',
                   metronome_button='metro_button')
     self._transport.layer = layer
     self._transport.set_enabled(True)
Ejemplo n.º 16
0
	def _setup_modes(self):
		self._main_modes = ModesComponent(name = 'MainModes')
		self._main_modes.add_mode('disabled', self._background)
		self._main_modes.add_mode('Main', [self._piano_group, self._piano_group.main_layer, self._mixer, self._mixer._selected_strip.main_layer, self._viewcontrol, self._drum_group, self._drum_group.main_layer, self._keys_group, self._keys_group.main_layer, self._device, self._transport, self._assign_crossfader, self._report_mode])
		self._main_modes.add_mode('Shift', [self._mixer, self._mixer._selected_strip.shift_layer, self._session, self._session2, self._session_navigation,  self._drum_group, self._drum_group.nav_layer, self._keys_group, self._keys_group.shift_layer, self._deassign_crossfader, self._recorder, self._translations, self._report_mode], behaviour = MomentaryBehaviour())
		self._main_modes.layer = Layer(Shift_button = self._button[7])
		self._main_modes.set_enabled(True)
		self._report_mode.subject = self._main_modes
		self._main_modes.selected_mode = 'disabled'
Ejemplo n.º 17
0
 def _setup_background(self):
     self._background = BackgroundComponent()
     self._background.layer = Layer(
         priority=3,
         matrix=self._matrix.submatrix[:, :],
         side_buttons=self._side_button_matrix,
         top_buttons=self._top_button_matrix.submatrix[:, :],
         bottom_button=self._bottom_button)
     self._background.set_enabled(False)
Ejemplo n.º 18
0
 def _setup_background(self):
     self._background = BackgroundComponent()
     self._background.layer = Layer(priority=1,
                                    pads=self._pad_matrix,
                                    buttons=self._button_matrix,
                                    keys=self._key_matrix,
                                    dials=self._dial_matrix,
                                    sliders=self._slider_matrix)
     self._background.set_enabled(False)
Ejemplo n.º 19
0
 def create_track_selection_matrix_component(self):
     self._track_selection_matrix = MaschineTrackSelection(
         track_provider=MaschineTrackProvider(),
         name='Track_Selection_Matrix',
         is_enabled=False)
     self._track_selection_matrix.layer = Layer(
         select_buttons='selection_matrix',
         previous_track_page_button='chords_button',
         next_track_page_button='step_button')
Ejemplo n.º 20
0
 def create_keyboard_component(self):
     self._keyboard = MaschineKeyboard(translation_channel=KEYBOARD_CHANNEL,
                                       name='Keyboard',
                                       is_enabled=False)
     self._keyboard.layer = Layer(matrix='pad_matrix',
                                  scroll_down_button='chords_button',
                                  scroll_up_button='step_button',
                                  next_scale_button='keyboard_button',
                                  previous_scale_button='pad_mode_button',
                                  next_key_button='next_key_button',
                                  previous_key_button='previous_key_button')
Ejemplo n.º 21
0
 def _setup_piano_group(self):
     self._piano_group = MorphKeysGroup()
     self._piano_group._hi_limit = 8
     self._piano_group.main_layer = AddLayerMode(
         self._piano_group,
         Layer(priority=2,
               matrix=self._piano_matrix,
               scroll_up_button=self._piano_button[1],
               scroll_down_button=self._piano_button[0]))
     #self._piano_group.shift_layer = AddLayerMode(self._piano_group, Layer(matrix = self._piano_shift_matrix, scroll_up_button = self._pian0[12], scroll_down_button = self._key[11]))
     self._piano_group.set_enabled(False)
Ejemplo n.º 22
0
 def _setup_piano_group(self):
     # self._piano_group = MorphKeysGroup(translation_channel = PIANO_TRANSLATION_CHANNEL)
     self._piano_group = MorphKeysGroup()
     self._piano_group._hi_limit = 8
     self._piano_group.main_layer = AddLayerMode(
         self._piano_group,
         Layer(priority=2,
               matrix=self._piano_matrix,
               scroll_up_button=self._piano_button[1],
               scroll_down_button=self._piano_button[0]))
     #self._piano_group.shift_layer = AddLayerMode(self._piano_group, Layer(matrix = self._piano_shift_matrix, scroll_up_button = self._pian0[12], scroll_down_button = self._key[11]))
     self._piano_group.set_enabled(False)
Ejemplo n.º 23
0
 def create_drum_rack_component(self):
     self._drum_rack = MaschineDrumRack(translation_channel=DRUMS_CHANNEL,
                                        name='Drum_Rack',
                                        is_enabled=False)
     full_velocity_element = FullVelocityElement(
         full_velocity=self._c_instance.full_velocity)
     self._drum_rack.layer = Layer(matrix='pad_matrix',
                                   scroll_page_down_button='chords_button',
                                   scroll_page_up_button='step_button',
                                   mute_button='mute_button',
                                   solo_button='solo_button',
                                   accent_button='fixed_vel_button',
                                   full_velocity=full_velocity_element)
Ejemplo n.º 24
0
 def create_main_modes(self):
     self._main_modes = ModesComponent(name='Main_Modes')
     layer = Layer(
         bypass_device_button='console_buttons[4]',
         reset_parameters_button='console_buttons[5]',
         previous_bank_button='console_buttons[6]',
         next_bank_button='console_buttons[7]',
         randomize_parameters_button='randomize_parameters_button')
     device_mode = LayerMode(self._device, layer=layer)
     layer = Layer(parameter_controls='knob_matrix')
     device_parameter_mode = LayerMode(self._device_parameter, layer=layer)
     layer = Layer(select_buttons='group_matrix',
                   previous_device_button='left_button',
                   next_device_button='right_button',
                   remove_device_button='remove_device_button',
                   move_backward_button='move_backward_button',
                   move_forward_button='move_forward_button',
                   collapse_device_button='click_button',
                   next_chain_button='down_button',
                   previous_chain_button='up_button',
                   next_page_button='next_device_page_button',
                   previous_page_button='previous_device_page_button')
     device_navigation_mode = LayerMode(self._device_navigation,
                                        layer=layer)
     layer = Layer(master_track_button='console_buttons[0]',
                   previous_track_button='console_buttons[1]',
                   next_track_button='console_buttons[2]')
     track_navigation_mode = LayerMode(self._track_navigation, layer=layer)
     self._main_modes.add_mode('device_contol_mode', [
         device_mode, device_parameter_mode, device_navigation_mode,
         track_navigation_mode
     ])
     self._main_modes.add_mode('mixer_contol_mode', Mode())
     self._main_modes.add_mode('browser_contol_mode', Mode())
     self._main_modes.layer = Layer(
         device_contol_mode_button='plugin_button',
         mixer_contol_mode_button='mixer_button',
         browser_contol_mode_button='browser_button')
     self._main_modes.selected_mode = 'device_contol_mode'
Ejemplo n.º 25
0
    def _setup_device(self):
        self._device = MorphDeviceComponent(
            device_decorator_factory=DeviceDecoratorFactory(),
            banking_info=BankingInfo(self.bank_definitions),
            device_provider=self._device_provider,
            device_bank_registry=DeviceBankRegistry())
        self._device_parameters = DeviceParameterComponent(self._device)
        self._device_parameters.layer = Layer(
            priority=2, parameter_controls=self._dial_matrix)
        self._device.set_enabled(False)
        self._device_parameters.set_enabled(False)

        self._device2 = MorphDeviceComponent(
            device_decorator_factory=DeviceDecoratorFactory(),
            banking_info=BankingInfo(self.bank_definitions),
            device_provider=self._device_provider,
            device_bank_registry=DeviceBankRegistry())
        self._device_parameters2 = DeviceParameterComponent(self._device2)
        self._device_parameters2.layer = Layer(
            priority=2, parameter_controls=self._thunder_slider_matrix)
        self._device2.set_enabled(False)
        self._device_parameters2.set_enabled(False)
Ejemplo n.º 26
0
    def _setup_modes(self):
        self._main_modes = ModesComponent(name='MainModes')
        self._main_modes.add_mode('disabled', [])
        self._main_modes.add_mode(
            'session_shifted', [
                self._recorder, self._mixer,
                self._mixer.solo_mute_record_stop_layer, self._session,
                self._session.stop_layer, self._session_navigation,
                self._session_navigation._vertical_layer, self._transport
            ],
            groups=['shifted'],
            behaviour=self._shift_latching(color='Mode.Session'))
        self._main_modes.add_mode(
            'session', [
                self._recorder, self._mixer, self._session,
                self._session.cliplaunch_layer, self._session_navigation,
                self._session_navigation._horizontal_layer, self._transport
            ],
            behaviour=self._shift_latching(color='Mode.Session'))
        self._main_modes.add_mode(
            'instrument_shifted', [
                self._recorder, self._mixer, self._mixer.mute_layer,
                self._viewcontrol, self._instrument, self._transport
            ],
            groups=['shifted'],
            behaviour=self._shift_latching(color='Mode.Instrument'))
        self._main_modes.add_mode(
            'instrument', [
                self._recorder, self._mixer, self._mixer.select_layer,
                self._viewcontrol, self._instrument, self._transport
            ],
            behaviour=self._shift_latching(color='Mode.Instrument'))

        self._main_modes.layer = Layer(priority=6,
                                       session_button=self._side_button[4],
                                       instrument_button=self._side_button[3])
        self._main_modes.set_enabled(False)
        self._main_modes.selected_mode = 'disabled'
Ejemplo n.º 27
0
	def _setup_recorder(self):
		self._recorder = SessionRecordingComponent(view_controller = ViewControlComponent())
		self._recorder.layer = Layer(priority = 2, record_button = self._button[6])
		self._recorder.set_enabled(False)
Ejemplo n.º 28
0
	def _setup_viewcontrol(self):
		self._viewcontrol = ViewControlComponent()
		self._viewcontrol.layer = Layer(priority = 2, prev_track_button = self._button[0], next_track_button = self._button[1])
		self._viewcontrol.set_enabled(False)
Ejemplo n.º 29
0
	def _setup_device(self):
		self._device = MorphDeviceComponent(device_provider = self._device_provider, device_bank_registry = self._device_bank_registry)
		self._device.layer = Layer(priority = 2, parameter_controls = self._dial_matrix)
		self._device.set_enabled(False)
Ejemplo n.º 30
0
 def create_recording_component(self):
     self._recording = MaschineRecording(name='Recording', is_enabled=False)
     layer = Layer(record_button='record_button',
                   session_automation_button='auto_button')
     self._recording.layer = layer
     self._recording.set_enabled(True)