Host automation question around selecting presets

Can someone please explain how the host automation parameters such as NextPreset, Previous Preset, Navigate through presets and Select Preset are supposed to work

These don’t seem to be documented in the manual (just downloaded latest)

I’ve tried to experiment with these parameters (using Gig Performer) but they seem a little obscure.

For example, I can use a knob to navigate through presets and I see the preset lists show up but the range seems limited when I send values starting at 0.0 all the way to 1.0

Secondly, selecting a preset seems to require multiple values - if I send 1 then 0 then 1 again it seems to work (sometimes)

Precise info on how to control would be appreciated.

Hi and welcome to the forum.

I am not sure I can help but some more info could be useful to others trying to help you.

  1. You raised this question against Pigments V2. Is that correct?

  2. Can you explain the steps you are taking in Gig Performer.

I am trying to understand EXACTLY what values to send to various host automation parameters to control preset selection.

For example - by experimentation I have discovered that the only way to browser to the “next” preset is to ensure that the value I send to the Navigate parameter is slightly greater than the previously sent value. In other words,

if newValue > oldValue
  then increment preset
  else decrement preset

but the actual value is irrelevant. Normally, buttons send 1.0 when pressed and 0.0 when released but even if you disable the 0.0, and just send 1.0, you can only go forward once.

On the other hand if I use a knob that generates continuous values between 0.0 and 1.0 as you move, you can just go up or down with no actual control of WHICH preset can be selected. I would have expected a browse parameter like this to be mapped from the first preset to the last one so you could control specifically to which preset you go. (e.g, assuming you have 10,000 presets) then sending 0.0003 would go to the fourth preset, sending 0.1001 would go to preset 1002 and so on.

There doesn’t seem to be any way to select a specific preset

Edit: after browsing presets, it’s unclear what value to send to the Select Preset parameter to actually switch to the current preset. It’s certainly not a single 1.0 or 0.0 – but sending a sequence of those ultimately worked. Very bizarre!

NB - it seems like this “design” was maybe intended for a specific product (maybe an Arturia controller) but as a general host automation control, it’s rather useless as a simple control and I have to use GPScript to be able to browse.

hi @dhjdhj. Welcome to the community.

Next means next preset from the current - increment.
Previous means previous preset from the current - decrement.
(For example a button have to be set to the correct behavior to work properly. )

In midi 1.0 you use Program Change to select specific presets.
*The coming midi 2.0 give more possibilities and will change the program change. I don’t know when midi 2.0 will become standard. Have a look at this article about it:
Details about MIDI 2.0, MIDI-CI, Profiles and Property Exchange (Updated June, 2023) – MIDI.org *

Now with midi 1.0 you can do the following in Arturias applications to select specific presets.

Other applications can have similar possibilities.

I don’t know how Gig Performer can work with this. That’s a Gig Performer question.

MIDI is irrelevant - I’m talking about host automation per my initial question

I am trying to understand EXACTLY what values to send to various host automation parameters to control preset selection.

I have been given you relevant informations. Did you read the articles i posted links for?

Program Changes messages are midi messages.
Midi CC messages are midi messages.

Next and previous are momentary ON/ OFF messages only. Like you say buttons send only 1 and 0.
You can assign a midi CC (Control Change) to Pigments next/ previous buttons. For example use a buttons midi CC from your controller.
Are you saying that Pigments next and previous preset show directly as named automation parameters in Gig Performer? They don’t in my DAW.

To select a specific preset please read the linked articles about Program Change. All the needed informations can be found there.

This is simply not how things work in any applications from any vendor. Again please read the linked articles about Program Change.

While I appreciate your taking the time to answer me, the information you are providing is in fact not relevant to my problem.

I am not using MIDI. I am not trying to send MIDI Program Change messages nor CC messages, etc.

I am using Host Automation, which is a completely different mechanism for controlling plugins and MIDI is not involved at all.

Yes, that is exactly what I am saying. For example, here is a preview of some of the parameters exposed by Pigments (there are several thousand)

60D4DC34-BF6A-4D16-A974-421CCF3237B5-40843-0002E5E8D92BB056

Interesting — I just took a look at Logic Pro and Digital Performer. Logic Pro only seems to show some of them, not sure how many. though. Digital Performer shows 2190 items.

Gig Performer displays 2,219 parameters if I use the AU version and it shows 4,234 parameters if I use the VST3 version.

Please - I have several plugins that work exactly like this — there are numerous ways to handle preset selection, and I was just suggesting one way that Arturia could do it. Another way it could do it is to have two host automation parameters that represent MIDI banks (similar to CC 0 and CC32) and then a PC host automation parameter that selects a program change between 0 and 127 for that bank — the actual values would simply be scaled so that 0.0 represents PC 0, 0.5 would represent PC 64 and 1.0 would represent 127

(P.S. I’m one of the developers of Gig Performer, by the way)

If you are a developer of Gig performer, then why don’t you contact Arturia, when you say you have better knowledge than i have? I suggest you do that.
I’m not a Arturia employee. Just a external moderator.

The Arturia FAQ is posted a link to are showing you have to use midi bank select msb and lsb and program change to do this. But using instruments Playlists of max 128 presets in each.

Can you name an instrument that can change to a specific preset like you wish from a list containing more than 128 presets and use i t’s own browser system?
Can you name such an instrument that can do it without using something like playlists and use Program change messages?
I’m interested in learning about it then.

Which message type does the Gig Performer host automation send to the instrument if not midi?
Again i’m interested in learning from a Gig Performer developer.

Meh - I tried to answer in detail using images to explain the points but as a new user, Discourse wouldn’t let me post more than one image so I gave up.
Sorry!

(If you’re a moderator you can presumably adjust my trust level to allow multiple images.)

So you cant answer my simple questions like with “this instrument - name -” and “this message type/ language - name -” without using multiple images!!!

As said - I suggest you contact Arturia directly as a company, if you indeed are from Gig Performer, and you want to talk to them about getting some functionality for Arturias instruments that their FAQ does’nt cover already.

Hmm you sound like you’re more interested in making life difficult rather than trying to actually help

Sure I can - but it was rather frustrating to have spent time creating images (which help to understand) only to have the post blocked.

Interesting – why do you think I would be lying about that when it would be trivial for you to prove the veracity by simply reaching out to us through our own website (or community forum) where you would get confirmation. Also, what difference would it make if I wasn’t? The question is still legitimate!

Below is the response I tried to post last night now with all but one image missing.



Uh yeah - this is the Arturia support forum (forums.arturia.com) and my first point of contact. And I’m not asking this as a GP developer - I have a personal paid license for Arturia products and so I am also a legitimate customer.

I assumed that someone here would have been aware of these host parameters and could just answer me without any need for me to escalate. We encourage our own customers (as well as plugin developers) to use our community forums as a first point of contact as well.

I don’t (and never did) say I have better knowledge. You kept answering a question that I was not asking. As I have now said several times, I know how to select presets with MIDI messages. But Arturia exposes several host automation parameters for navigating presets and I wanted to find out how to use the Navigate through presets host automation parameter given that Arturia exposes that parameter.

Yes, but that is still MIDI! But Pigments also exposes host automation parameters for navigating presets. For example, through experimentation, I discovered that I can browse the entire library in the forward direction as long as each value I send to that Navigate through presets parameter is higher than the previous value, even by as little as 0.0001 (and probably less) and similarly in the reverse direction when each subsequent value is smaller than the previous value. But that seems like an odd design approach and it doesn’t let you target a specific preset - which is just odd, IMO.

Even if I couldn’t, so what! But yes, I can. The Audio Streaming File Player plugin included with Gig Performer supports up to 1000 songs (so each song is a preset) using standard host automation as defined by Steinway’s VST SDKs. We didn’t do anything that couldn’t be done by any plugin should its developers choose to do so.

You can select a specific song by sending a value between 0.0 and 1.0 (the standard range for any host automation parameter value) to select a track between 0 and 1000 — for example, sending 0.050 will select song 51, sending 0.245 will select song number 246 and so on.

For example, host parameter number 12 selects the track (song)
(Image showing widget mapped to parameter 12 removed)

and as I turn a knob (which sends values between 0.0 and 1.0 as you increment, the selected song changes and as you can see, there are more than 128 entries. Further, the player has another parameter, number 13, that gives you the name of the selected track so you can see it in a label so you don’t even need to open the plugin itself to browse.

B25F6559-C6A1-4883-9116-03B8D1565091-68590-0002FAB90DD28700

As mentioned before, host automation does not send “messages”. A plugin exposes parameters and any modern plugin host lets you select a parameter and then set the value of that parameter (values being floating point numbers between 0.0 and 1.0). The mechanism does not use MIDI at all to do this. The host calls C++ functions defined by the VST SDKs to communicate directly with the plugin.

Here’s an example where we can define an explicit track number that should be selected automatically when you go to a particular song part

(Image showing Action Management dialog with action to send a single value to parameter 12 removed)

The GP MIDI file player also supports direct selection via host automation

While most modern plugin hosts (including DAWs) support automation, they may not always expose the parameters directly the way we do but since our focus is on live performance, this kind of thing is extremely powerful.

No, I don’t think you are. My sense is you’re just trying to give me a hard time (not sure why) and as your other questions clearly demonstrate that you do not understand how host automation works, I’m not even sure why you took the time to respond.

No i’m not trying to give you a hard time. I have replied what’s possible for me. If you can’t use the information, then i can’t help you more.

If you don’t think i have replied your question, then i believe you ask a question for Arturias developers. Perhaps to implement a new functionality. Or perhaps about a bug that i do not know anything about. That’s why i suggest you contact Arturia directly.
I suggest other users to contact Arturia support if needed.

As far as i can understand from your answers, then you in Gig Performer use a internal system with an implemented plugin to choose MP3 files/ audio files. You use C++ functions. I call C++ a language.
Thanks for the answer.

No - we use exactly the same system to communicate with plugins as any other modern plugin host.

For example, even when you send MIDI messages to a plugin — guess what? You are not actually sending MIDI messages to it. Your incoming MIDI messages (from your controller or from a track) are being converted into data (by the driver that communicates with your hardware) which is then sent to the plugin via C++ function calls defined by the VST specifications. Host automation is simply a different mechanism through which to interact with plugins.

There is no point in continuing this discussion. I need somebody who understands host automation to respond. I can’t possibly be the only person trying to do this.

Thanks.

Arturia will respond if you contact them, like i have suggested.

Yeah. The benefit of a community forum is that everybody gets to see the answers – that is why, for example, we prefer our customers to ask their questions on our community forums and our support team monitors those forums, chiming in if the question doesn’t get answered by someone in the community. As a moderator, I would have thought you would understand that value.

I will reach out directly to the appropriate dev. group and the answers will be shared on our forums