Maxforlive device?
-
Hi,
Maybe a long shot, but a maxforlive device would be really great. I use Live (11), and to be able to remote control the anyma phi and have automation written with the parameter names one needs either a vst (tricky with lots of windows daws due to midi ports occupied by the daw and especially with Live as you cannot send sysex) or a M4l device which can handle everything fine including sysex.
Doesn't need to be anything fancy, just all parameters mapped to a live.dial. I, unfortunately, only know in theory how to do this.
How is the editor developed? Juce?
Best from Cologne,
Markus -
@markusschloesser I was thinking something similar - I'd like a VST version of the editor, even if it's limited to only editing the current patch, without the ability to manage patches in the same way as the .exe.
I use Cantabile (Solo license version) mostly so I can add physical controls to things. If a VST editor has published parameters that can be controlled by a DAW (e.g. animated), then knobs or faders from a MIDI controller can be assigned to some or all of them. The VST then provides visual feedback when a physical control is moved, plus controls can still be moved with the mouse.
-
@andyhornblower I use a Mackie C4 exactly for the same reason.
I have a midi remote script for the C4 and with that I have 32 knobs with led rings and parameter names and values. Plus I can "bank" thru pages of parameters.
That's why I would love a M4l device. -
@markusschloesser said in Maxforlive device?:
Mackie C4
Nice. Can Maxforlive host the VST version of Ctrlr?
I've made a generic panel with the same layout as the Akai MidiMix knobs... so far, I haven't bothered to add the buttons. The idea was to use it as a translation table, to use that controller with different synths, by making a variation of the panel for each one.
So far, it just sends CCs, which can be edited easily enough in "panel mode", to make CC controls for synths. I have some code I could add to send NRPNs, but that gets a bit more complicated.
As yet, I've only used that method to add more knobs to my MODOR NF1-m - the mini desktop version of that synth, not much bigger than the anyma phi. I could adapt it to the a.p. though, once I have a better idea of what parameters would be useful to control.
-
At some point we would like to allow bidirectional edition of any patch parameter via NRPNs, maybe with a few accompanying SysEx messages for passing requests like getting parameter names, etc. No ETA, but that's something that we want to do, and when it's available someone will be able to make something like the M4L device you want.
-
@join said in Maxforlive device?:
patch parameter via NRPNs
Why NRPN? Isn't a simple SysEx syntax better for most people who want to make their own editors and controller systems? Something like the Waldorf Blofeld has (10 Bytes per parameter, no long strings except for dumps).
I don't have an Anyma Phi yet but a Sylphyo and I think there will also come an "editor language" sooner or later. I find SysEx chunks for parameters better than the message groups of NRPN.
-
@peter-ostry My personal preference is to use all CCs, because a CC is only 3 bytes long, and can be shorted to two if there's a stream of the same one, by using "running status", where the first (status) byte is only sent when it changes.
It's also the easiest thing to program a hardware MIDI controller to send directly, i.e. for one where you can set which CC each control takes. Plus it's easier to use CCs than either NRPN or sysex in Ctrlr.
One problem with CCs is that there are only so many of them (128) and some of them are best not used for this purpose, because they have very specific meanings. Realistically, there are only maybe 100 that are useable, in most cases.
The other problem is that they only send 7 bits of data (representing 0-127).
The next choice would be NRPNs. They're longer than a CC but normally shorter than a sysex message. They can send 14 bits of data (representing 0-16383) and it's not essential to send both bytes at once, which has a big advantage;
Most MIDI controllers encode their knobs to 7 bits. On some, it's possible to set a control to physically send either the top 7 bits (course value) or the lower 7 bits (fine).
Failing that, it can be done in something like Ctrlr - the physical MIDI controller can sent CCs representing course and fine values, which Ctrlr can then translate to course and fine NRPN values.
I guess anyma phi needs to use NRPNs rather than CCs for those two reasons - two many parameters to fit in the useable range of CCs, and needing more resolution than 7 bits.
It could be done in sysex, but there are very few physical MIDI controllers that can do that at all, let alone well. Having made a few "panels", and changes to panels, in Ctlr, I much prefer using CCs, but I can see that might not be an option.
-
@join Could we have some CCs to control the matrix parameters?
I gather that's meant to be one of the main features of the anyma phi, and there aren't all that many of them, so it seems like something that could usefully be done. Allowing for the shift function, that appears to only need around 40 CCs, so it also seems practical.
That would allow us to connect an external MIDI controller to give more immediate access to those parameters, or for DAW users to have better control over the synth.
I realise that allowing every single parameter to be controlled externally would be a big job, but just limiting it to externalising just the matrix controls seems like a good start.
-
@join Thinking about it some more, I think it might be better to have CCs for the 32 modulation depths/amounts of each mapping. Though it would be nice to have CCs for each matrix parameter too, ideally, even though there would be some overlap when those are assigned in mappings.
32 controls is a good number for a MIDI controller like the Akai MIDImix or the Mackie C4, or Behringer BCR2000.
-
@andyhornblower said in Maxforlive device?:
@join Thinking about it some more, I think it might be better to have CCs for the 32 modulation depths/amounts of each mapping. Though it would be nice to have CCs for each matrix parameter too, ideally, even though there would be some overlap when those are assigned in mappings.
32 controls is a good number for a MIDI controller like the Akai MIDImix or the Mackie C4, or Behringer BCR2000.
Please leave my C4 out of this! I can bank thru pages, so 128 params is no problem for me ππ
-
@markusschloesser said in Maxforlive device?:
Please leave my C4 out of this! I can bank thru pages, so 128 params is no problem for me ππ
Yes, the BCR2000 can do that too. I could add bank switching to the Akai MIDImix fairly easily, by making an Arduino based box to sit in between that and the synth, capturing the Bank Up/Down buttons (which only send two fixed notes).
More would be better, certainly. I was thinking of the way Dave Smith / Sequential do it, which is to have a full set of NRPN parameters, plus a much more limited set of CCs that duplicate some of those, making them useable with just a CC based MIDI controller... there are quite a few of those.
If I was doing the programming, I'd want to start small, with a limited number of CCs. Adding more would then be straightforward, but just a little more work. Doing the full set of NRPNs would take longer.
Alternatively, it might be practical to do a general numbered parameter via sysex or NRPN that's just an index into the patch data, like indexing an array. In which case, it wouldn't take so long to program, but it would still be a fairly large task to document it all, for the user manual.
-
@andyhornblower said in Maxforlive device?:
I was thinking of the way Dave Smith / Sequential do it, which is to have a full set of NRPN parameters, plus a much more limited set of CCs that duplicate some of those, making them useable with just a CC based MIDI controller.
Good idea / approach!
@andyhornblower said in Maxforlive device?:
Alternatively, it might be practical to do a general numbered parameter via sysex or NRPN that's just an index into the patch data, like indexing an array. In which case, it wouldn't take so long to program, but it would still be a fairly large task to document it all, for the user manual.
while I generally agree, Sysex and Ableton is still problematic, as in, you can only do sysex via a maxforlive device. Ableton itself has no knowledge whatsoever about sysex (when it comes to external instruments)