Hi,
Not so new with Renoise, used ca. 2 years, but I would like to do whole gig (mostly techno) with it next time.
So, samples, no problem, but I would like to make just patterns, this time with using (only, mostly) VSTi plugins to do the job. My question is rather simple: is there way to change preset from commands/effects or elsewhere (Lua ?) from one pattern to another, VSTi plugin would be same for each track, but would like to change preset for each pattern and mix them on the fly (probably using Duplex with Launchpad with some other gear).
Thanks !
I suppose that when you speak of “preset”, you mean the used “program” of the VSTi plugin. Renoise has no any keyboard commands, and it can not be done through the MIDI input, only from the instrument editor, causing a jumpof control (change from the pattern editor to the instrument editor) or activate the instrument properties panel in the right of the pattern editor.
Yes it is possible from a tool created specifically to change the presets through two commands assigned by the user or through the MIDI input.But you must make sure that the VSTi is compatible with the deployment of the Renoise programs. Many plugins are not compatible, and it is necessary to change the presets from the plugin itself.
Also check all the capabilities of the " *Instr. Automation" in the DSP chain of the selected track. In any case, changing the preset may require a small delay (or large depending on what you load). You must keep this in mind to play live.
To build a tool, read the API:
--------------------------------------------------------------------------------
-- renoise.InstrumentPluginDevice
--------------------------------------------------------------------------------
-------- Functions
-- Access to a single preset name by index. Use properties 'presets' to iterate
-- over all presets and to query the presets count.
renoise.song().instruments[].plugin_properties.plugin_device:preset(index)
-> [string]
-- Access to a single parameter by index. Use properties 'parameters' to iterate
-- over all parameters and to query the parameter count.
renoise.song().instruments[].plugin_properties.plugin_device:parameter(index)
-> [renoise.DeviceParameter object]
-------- Properties
-- Plugins.
renoise.song().instruments[].plugin_properties.plugin_device.name
-> [read-only, string]
renoise.song().instruments[].plugin_properties.plugin_device.active_preset, _observable
-> [number, 0 when none is active or available]
renoise.song().instruments[].plugin_properties.plugin_device.active_preset_data
-> [string, raw XML data of the active preset]
renoise.song().instruments[].plugin_properties.plugin_device.presets[]
-> [read-only, array of strings]
renoise.song().instruments[].plugin_properties.plugin_device.parameters[]
-> [read-only, array of renoise.DeviceParameter objects]
-- Returns whether or not the plugin provides its own custom GUI.
renoise.song().instruments[].plugin_properties.plugin_device.external_editor_available
-> [read-only, boolean]
-- When the plugin has no custom GUI, Renoise will create a dummy editor for it which
-- lists the plugin parameters.
renoise.song().instruments[].plugin_properties.plugin_device.external_editor_visible
-> [boolean, set to true to show the editor, false to close it]
-- Returns a string that uniquely identifies the plugin, from "available_plugins".
-- The string can be passed into: plugin_properties:load_plugin()
renoise.song().instruments[].plugin_properties.plugin_device.device_path
-> [read_only, string]
With all this you can create a navigation tool.I have this integrated in my Piano Roll Editor tool (but the window must be in the foreground). When you press ALT + or ALT - , you are changing the preset.You can try it with the Helm VSTi.
If you can use many resources, you can load the same VSTi into several instruments, and assign each instrument a specific program (preset).You can use the “VST alias” too.