I was able to get this figured out with
Travis' help. Again, this is modification of
Hanz' script, and it is hard coded specifically for use with 16 tracks. My tracks 1-8 are Instruments, VSTs & a vocal. Tracks 9-16 are 8 mic tracks with Loopers at the bottom (controled by Shift8). I also have back up Loopers for tracks 1-8 (controled by Shift7). Finally, I have also modified Shift6 as an alternative Clip Launch so it can be reached with one hand.
The code below is in MatrixModesComponent.py and it allows me to do the following:
1. Auto move red box to 9-16 when pressing Shift8, and enter 9-16 mapped Loop mode.
2. Auto move red box to 1-8 when pressing Shift1 or Shift6 and enter 1-8 Clip Launch.
3. Auto move red box to 1-8 when pressing Shift7, and enter 1-8 mapped Loop mode.
PM me if you want the files. In set modes around line 143, this is what it looks like:
Code: Select all
self._session_zoom._zoom_value(1) #zoom out
self._session.set_offsets(0, 0)
self._session.update()
elif (self._mode_index == 1): #Session Overview
self._session_zoom.set_enabled(True)
self._session_zoom._is_zoomed_out = True
self._session_zoom._scene_bank_index = int(((self._session_zoom._session.scene_offset() / self._session_zoom._session.height()) / self._session_zoom._buttons.height()))
self._session.set_enabled(False)
self._session_zoom.update()
self._session_zoom.set_zoom_button(None)
elif (self._mode_index == 2):
self._set_note_mode(PATTERN_1, CHANNEL_1, NOTEMAP_1, USE_STOP_ROW_1, IS_NOTE_MODE_1)
elif (self._mode_index == 3):
self._set_note_mode(PATTERN_2, CHANNEL_2, NOTEMAP_2, USE_STOP_ROW_2, IS_NOTE_MODE_2)
elif (self._mode_index == 4):
self._set_note_mode(PATTERN_3, CHANNEL_3, NOTEMAP_3, USE_STOP_ROW_3, IS_NOTE_MODE_3)
elif (self._mode_index == 5):
self._session.update()
self._session_zoom._zoom_value(1) #zoom out
self._session.set_offsets(0, 0)
self._session.update()
elif (self._mode_index == 6):
self._session.update()
self._session.set_offsets(0, 0)
self._session.update()
self._set_note_mode(PATTERN_5, CHANNEL_5, NOTEMAP_5, USE_STOP_ROW_5, IS_NOTE_MODE_5)
elif (self._mode_index == 7):
self._set_note_mode(PATTERN_6, CHANNEL_6, NOTEMAP_6, USE_STOP_ROW_6, IS_NOTE_MODE_6)
self._session.set_offsets(8, 0)
self._session.update()
else:
pass
self._session.set_allow_update(True)
self._session_zoom.set_allow_update(True)
#self._rebuild_callback()
You could easily make Shift5 your 9-16 clip launch view if you think you'd use it.
If you follow this exact setup, you will also need to delete Page6 data from Matrix_Maps.py in order to use Shift6 as your Clip Launch view. Page 7&8 uses StopRow=True and NoteMode=False. Then, just have fun with setting the colors to match your Looper setup.