ReaScript programmer for hire?
Hello,
I'm looking for a script to better use my mixer as a control surface for Reaper. I have an Allen & Heath QU-16 connected through reaper's Control Surface/OSC system using Mackie Control. It works fine, but I wish I was able to set what tracks were associated with which faders. Below is the outline for what I would love to be able to do.
Modes:
- Hierarchy mode
--- When I select a top level track or folder, all top level tracks or folders are assigned to a midi input/output up to the channel limit. No child tracks/folders are assigned.
--- Repeat the above but for each subsequent hierarchy level. So if I select a subfolder or track inside a folder, all subfolders or tracks on the same level (but limited to within the parent folder) are assigned a midi input/output up to the channel limit. If any of these have child tracks or folders, those child tracks/folders are ignored.
- Folders/tracks Mode
--- If a folder is selected all folders are assigned, up to the channel limit starting with the first folder in the project (no tracks). Hierarchy is completely disregarded.
--- if a track is selected, all tracks are assigned, up to the channel limit starting with the first track in the project (no folders). Hierarchy is completely disregarded.
--- Only trigger the assignments if a track is selected but folders are what is currently assigned, and visa versa.
I'd then like the following actions to be set up such that I can assign a key bind to them, as well as a gui that has each of these options as a button:
- Mode Select
- Assign next 16 tracks in the current hierarchy, or not if only folders or only tracks mode is selected.
- Set currently selected track as channel 1 and then assign the following tracks in the same hierarchy sequentially (if tracks or folders mode is enabled then disregard hierarchy and use the same logic just with folders or tracks). Ideally this would be a toggle, so it either does this every time or never depending on if this option is toggled.
- Sticky a track to a specific channel (There is a way to choose the channel)
- Save the existing channel layout (save to a file)
- Load a saved channel layout
- freeze current layout (dont re-assign channels when a track/folder is selected)
- Un-freeze current layout
Other little specs:
- When assigning channels automatically by selecting a track or folder, skip stickied tracks
- Check project file name when loading a saved channel layout and provide a warning if the current project name does not match the project name in use when the layout was saved
- Generate a button on the GUI for each saved layout for the current project
- If a track/folder is selected and there are more tracks/folders than the max number of midi channels before it, set channel 1 to a track/folder above the selected track/folder that is a multiple of the available number of channels + 1.
Final Thoughts:
Ideally the script would detect the number of available channels on the control surface and not have 16 as the hard coded number of channels.
I'm not sure how much of what I just described is either in an existing script or can even be done with ReaScript. I know it has a lot of capabilities but I'm not sure just how much can be done as described.
Overall I think a script like this would be incredible for anyone who uses a control surface with reaper, however I'd be willing to funnel a couple hundred bucks to someone who has the skills to make a script or plugin that could do everything I described as I would love to make more use of my control surface in reaper.
Thanks!
Last edited by KroniK907; 02-23-2020 at 01:38 AM.
|