Open FLamparski opened 4 years ago
I guess we can support both modes: probably by introducing a notion of "shared" and "owned" instruments, so that the latter will have their settings saved within a project and tracked in a version control. The code changes seem straightforward, but the UI side needs some thinking.
I like to be able to tweak and listen to my synths from inside the piano roll/arranger interface
Mind suggesting the way it should look from the user's perspective? Maybe some hotkey to bring up the current instrument's window, if it has one?
Mind suggesting the way it should look from the user's perspective? Maybe some hotkey to bring up the current instrument's window, if it has one?
I think for a start, something like this would work:
I think adding a more traditional-style sidebar (instrument + volume + pan) in the Arrangement view would be good, though it could be left optional as the goals of this project are to only present as much complexity as necessary at a given time (which, for music software, is a damn hard design goal and I'm very impressed with what you've done so far here!)
I would also like to see a form of per-project instruments.
Regarding the UI, an inspiration could be Godot game engine: there are Resources (music tracks, textures, etc.) and when you copy them to a different object, by default they are linked. But you can right click and select "Make unique", which creates a new copy of that Resource (it doesn't duplicate the (for example) .wav
file itself, just the engine properties). So then you can edit that Resource independently.
I think something like this could work here. I imagine it would be in the track options:
And I guess then they would be local to track, not to entire project? So a different track that was using the same instrument before that, would still be using the "global" one.
The way I see it is that after I click that "Make unique" button (or whatever it will be called), the plugin state is copied and the track is assigned to this new state, which will be saved inside the project.
But that's just one way to do that. An orchestra pit within the project settings could also work.
(For now I'll probably have to work around this issue by making a hacky script to copy settings around for different projects)
For orchestral music, the concept of having an orchestra pit with some well known presets is probably quite good, as you can focus on creating the music rather than monkeying about with adding half a string section to each new project. However, for electronic music, it's often the case that each project will demand entirely different instruments (or at least different variations of instruments based on some common presets). Perhaps it would be a good idea to allow per-project instruments to be set up - after all, this is a common pattern in most DAWs and notation software.
Another issue for me is that I like to be able to tweak and listen to my synths from inside the piano roll/arranger interface, which I am able to do in any other DAW, but I don't think that's possible in Helio - for me, I will often explore different sound design and melodies at the same time as some melodies feel better with some synth presets, and I found that one often influences the other.