@Christoph-Hart Since InputRange
and OutputRange
only work with Matrix Modulators, I'm just stuck on how to set the modulation range of a ScriptFX parameter...
In fact, just being able to limit the Intensity
would fix my problem

Posts
-
RE: Wrap modulation value
-
RE: Wrap modulation value
@Christoph-Hart said in Wrap modulation value:
@ustk I don't fully understand what you're after but there is no defined consistent out of bounds range behaviour for the modulators, as it depends on the target parameter (eg. panning get's truncated, but gain & pitch can be extended to the max values of the engine).
So in the end, do you mean a
0-1
UI knob could theoretically modulate a-1
to2
DSP knob?
I tried but failed...Here the UI knob is 0-1, mod intensity to full
-
RE: Wrap modulation value
@Christoph-Hart Thanks.
Since I understand I cannot wrap the modulation, nor exceed the bounds, my idea is:
- for an end value of 0-1, set a 0-3 knob without mapping but from 1 to 2 (so the 0-1 is just offset to 1-2 inside the 0-3 knob)
- modulate the 0-3 knob, with the
OutputRange
set to0.333
-0.667
so no matter where you push the modulation, it will (should) never exceed the 0-3 range (because the value will always be between 1 and 2) - Then in the DSP, it will be easy to map this 0-3 value+mod back to 0-1, with wrapping as a cherry on the top
But the properties to limit the
OutputRange
aren't working for simple parameters...How does it sound? Feasible?
0 1 2 3 |--------------|--------------|--------------| <- knob range |--------------| <- useful value inside knob, will be converted in DSP to 0-1 |--------------------------------------------| <- total modulation range, <-------------2-------------> will be wrapped in the <-------------1-------------> 0-1 domain in DSP
-
RE: Notarisation help please!
@JamesC I extracted this from my script that is working fine:
(note that the pkg signature certificate is directly embedded in WhiteBox Packages, so no extra steps for me...)SIGN_ID="Developer ID Application: Team (NUMBER)" APPLE_ID="your@email.com" PASSWORD="your-pass-word" TEAM_ID="NUMBER" # codesign codesign --deep --force --timestamp --options runtime --sign "$SIGN_ID" "$VST3_PATH" --verbose # verify codesign -dv --verbose=4 "$VST3_PATH" # notarization xcrun notarytool submit --apple-id "$APPLE_ID" --password "$PASSWORD" --team-id "$TEAM_ID" "$PACKAGE_OUTPUT_PATH" --wait pkgutil --check-signature "$PACKAGE_OUTPUT_PATH" xcrun stapler staple "$PACKAGE_OUTPUT_PATH"
-
RE: Wrap modulation value
My answer might just live in the Modulation range, but I can't seem to make it doing anything different than the default behaviour.
First question -> is this even possible with a standard parameter? (aka not a Matrix Modulator one)
I'm trying to set the properties below to limit the mod range with
MM.setMatrixModulationProperties(properties);
const var properties = { SelectableSources: true, DefaultInitValues: { SET1: { Intensity: 1.5, Mode: "Bipolar", IsNormalized: false } }, RangeProperties: { SET1: { InputRange: { min: 0.0, max: 3.0, middlePosition: 1.5, stepSize: 0.0, Inverted: false }, OutputRange: { min: 0.3333, // shouldn't this restrict the range? max: 0.6667, middlePosition: 0.5, stepSize: 0.0, Inverted: false }, mode: "Linear", UseMidPositionAsZero: true } } };
The UI knob properties are matching the above ones.
Also, the doc object example looks a bit different
(mode
&UseMidPositionAsZero
are not at the same place compared toMM.getMatrixModulationProperties()
)mod.setMatrixProperties({ InputRange: // defines the range of the UI knob { min: 0.0, max: 1.0, middlePosition: 0.5, mode: "NormalizedPercentage", stepSize: 0.0, }, OutputRange: // defines the range of the scaled modulation output signal { min: 0.0, max: 1.0, middlePosition: 0.5, stepSize: 0.0, UseMidPositionAsZero: false } });
-
Wrap modulation value
@Christoph-Hart What would be the way to wrap a mod value once it's hitting the max or min of a parameter, if any?
I've made an infinite parameter that makes its associated to wrap the value once reaching max, and it's working nicely in the DSP.
But what about the modulation matrix in this context? -
RE: I'm looking for help with a paintroutine
@Mighty23 Just rescale your value to
-1/1
pnlMeter.data.value = value * 2.0 - 1.0;
-
Mouse CB drag resolution
@Christoph-Hart When building widgets out of a panel, the mouse resolution of
1px
can most of the time lead to a really poor user experience with rough panel settings...Of course, one can just divide the drag distance by the mean of a modifier key, but then you lose the sync between mouse cursor and the moving part of the widget.
I dug into
juce_MouseEvent
but the pixel resolution seems to be deeply baked into the source...Do you think it's something we could get around?
-
Knob min & max not setting the boundaries when equal.
@Christoph-Hart Well, the first thing one might say is why the heck you want
min
andmax
to be equal?The scenario is, when you have a loop setting for instance, you set the
min
andmax
according to the range you allow a cursor to move. Now imagine the end of the loop is fully set to the right, end the start is at its max to the right as well. You obviously don't want the end to be able to move anymore, right? so you set itsmin
to1
and voilà, the loop is constrained to the value of1
, the knob can't turn... Well, but no... when bothmin
&max
are equal, the knob behaves like it's0
to1
, while there should be a safety.- In the property panel, when you set
min
&max
the same, the component is automatically deactivated so you can't use it. But as soon as you recompile, sadly it's activated again. - When
min
&max
are set equal by the script, there's no deactivation at all
- In the property panel, when you set
-
RE: AAX showing under audiosuite but not inserts
@d-healey Oh yeah sorry… but since it’s not that important for instruments anyway
-
RE: AAX showing under audiosuite but not inserts
@d-healey Well I don't make instruments for now, just FXs. The option in the settings has no impact on instruments though, so I don't know how you did for Sordina
-
RE: AAX showing under audiosuite but not inserts
@HISEnberg I’ll definitely need to enter the side chain world soon… great time ahead
@d-healey Isn’t your plugin mono compatible? I know it’s an instrument but why not…
-
RE: AAX showing under audiosuite but not inserts
@d-healey The AAX SDK in
Hise/tools/SDK/AAX/Documentation/doxygen.pdf
-
RE: AAX showing under audiosuite but not inserts
@d-healey The validator is part of the SDK, called DSH
The doc says page 165:
12.4.8.1 Validation with DSH
You can validate your plug-in's Describe routine using the DigiShell command-line tool. The validation command is available directly in the aaxh dish and is also available through an AAX Validator test module:
aaxh dish
dsh> load_dish aaxh dsh> loadpi "/quoted/path/without escape chars/MyPlugIn.aaxplugin" dsh> getdescriptionvalidationinfo 0
AAX Validator
dsh> load_dish aaxval dsh> runtest [test.describe_validation, "/quoted/path/without escape chars/MyPlugIn.aaxplugin"]
-
RE: Matrix Modulation Feedback
@Christoph-Hart Okay
There's also the AUX modulation (which should achieve the same thing, right?) but I couldn't seem to make it work...
-
RE: Woocommerce Demo version quesion
Also this allows to develop and maintain only one version of a product, since it's the license that is either full or demo.
-
RE: Woocommerce Demo version quesion
@DanH I agree for samplers. Though burst noise has a bad bad reputation, people hate that.
-
RE: Matrix Modulation Feedback
@DanH I agree with this, but then it is a design choice. I prefer to see macro as a modulator than "something else" aside the modulation part. It seems easier for me to understand and use, but my practice of modulation and macro is very limited...
I'd just say that in a plugin, I prefer to keep related things in one place so it better fits my vision to have marco like modulator
Perhaps it is possible to have two sets of modulators, so one can modulate another? I don't know...