• Keyboard/Midi note triggering button

    Scripting
    25
    0 Votes
    25 Posts
    2k Views
    T

    @ulrik Thanks

  • Preset browser not fully functional in exported plugin

    Solved Bug Reports
    5
    0 Votes
    5 Posts
    29 Views
    ustkU

    Ok it's no bug... I have READ_ONLY_FACTORY_PRESETS=1 and I assumed, naively, that I could prepare a User folder in advance. But since it's shipped with the binary it is treated as factory... Shame...
    So in plugin, if I create a new Folder in the first column as a user would do, it's working...

    gclfo.gif

  • Matrix modulation connection is broken in exported plugin

    Bug Reports
    14
    0 Votes
    14 Posts
    96 Views
    ustkU

    @Christoph-Hart here you go (all the fixes my pet and I tried until today haven't worked so my hacky solution... Using a processingSpecs BC works too, because the root problem as I understand it is the samplerate not being set before the module are constructed/connected)

    HISE bug: extra_mod runtime targets broken in exported plugins Setup

    NUM_HARDCODED_FX_MODS > 0, hardcoded FX modules with networks containing core::extra_mod nodes driven by Matrix Modulators in the FX's modulator chains.
    Works in HISE backend, broken in exported plugin (compiled DLL and interpreted both).

    Symptoms

    Network parameters don't respond to UI changes or preset recalls.
    Matrix modulator's Value updates correctly but its output never reaches the extra_mod node.

    Root cause

    Order-of-operations bug between project-state restore and prepareToPlay:

    Host loads project state → restoreHardcodedData → setEffect(name) → connectToRuntimeTargets(*newNode, true).

    ExtraModulatorRuntimeTargetSource::addConnection (ModulatorChain.cpp:2155) builds a SignalSource with sampleRate_cr / numSamples_cr from getSampleRate() — which is 0 because the host hasn't called prepareToPlay yet.

    target->onValue(signal) stores that zero-rate signal in every extra_mod node.

    When prepareToPlay finally runs, extra_mod::prepare() reads the stored signal, checkSignalRatio() sees rate 0, and the node ends up in a non-functional state — modulation values never reach the parameters.

    In the HISE backend the engine is already prepared when networks are loaded, so step 2 captures a valid rate.

    The early-return in HardcodedSwappableEffect::setEffect (if (factoryId == currentEffect) return true;) makes the broken signal sticky — no later preset load triggers a reconnect.

    Confirmed workaround

    After init delay (so prepareToPlay has run), force-reload each FX:

    fxSlot.setEffect(""); fxSlot.setEffect(originalDLLName);

    This forces a full disconnect + recreate with a valid sample rate.

    Related

    Same class of bug as the recent GlobalModulator::prepareToPlay reorder fix ("Fix SmoothedValue assertion when sample rate is uninitialised"), but on a different code path (setEffect → connectToRuntimeTargets, not prepareToPlay).

    Suggested fix

    In HardcodedSwappableEffect::setEffect, skip connectToRuntimeTargets(*newNode, true) when getSampleRate() <= 0, and call it instead from prepareToPlay once the rate is valid. The scriptnode FX (JavascriptMasterEffect / JavascriptPolyphonicEffect) and HardcodedSynthesiser variants need the same treatment.

  • linking slider to a simplegain, the other way around.

    Scripting
    8
    0 Votes
    8 Posts
    49 Views
    David HealeyD

    @Jeetender You can do this without a filmstrip

    There's a working example here: https://forum.hise.audio/topic/13154/knob-web-studio/66?_=1777296953372

  • Function .set

    General Questions
    5
    0 Votes
    5 Posts
    35 Views
    Y

    @David-Healey Thank you, I went trough

  • ScriptNode - DC. Offset

    General Questions
    19
    0 Votes
    19 Posts
    467 Views
    ustkU

    @Jeetender Hmmm... I'm might be wrong but I'm not so sure about this. You can surely set a parameter to any value below 20Hz, but I'm not sure the filter is capable of reaching this value. To me it's capped to 20Hz-20kHz no matter the range of your parameters.

  • RNBO Compile DLL Crash (RNBO --> HISE)

    Bug Reports
    3
    0 Votes
    3 Posts
    77 Views
    D

    This fixed it Dave thanks!

  • The source code has different commit hash...

    General Questions
    7
    1 Votes
    7 Posts
    77 Views
    resonantR

    @Christoph-Hart Thanks for the detailed info, I really appreciate it. I will start as soon as I get the time.

  • Loris Install / HISE App Data Directory?

    General Questions
    19
    0 Votes
    19 Posts
    2k Views
    David HealeyD

    @boim98208 said in Loris Install / HISE App Data Directory?:

    can't seem to find it

    What are you looking for?

  • Peak-based Action

    Scripting
    5
    0 Votes
    5 Posts
    108 Views
    ustkU

    @VorosMusic Here's a snippet that demonstrates how to handle the detection and integration part in the DSP.
    Notice that the callback only fires when the value changes from peak (value==1) to clean (value==0) and vice-versa, with no extra firing in between (that's not entirely true as it fires sometimes but this might be due to the AsyncNotification not being fast enough when the changes are erratic like in this example)

    HiseSnippet 2117.3oc6Y0DaijTEt63TdF6YfcWsgENrG5YDG7.iL1IYlLqVwDm33Dh1IYLwdyBmhJ2cY6RtcU81c4Lwf1Sb.twYPBI3NGPbCIPLmQZ3Nm3D2yo85xqppa6tcamI1IY2cP3QZRWU8dc89468SWUcetMIHf6aXlu4POhg4cQMFxDcq1ESYF6uig4Jn8b4svtUwsbI0NC22ykXr8PObP.wwvzLydRJMysrg524atM1EyrIimxv3XN0l7LZepX7rdU9Hpq6tXGRSZ+XTudk8s4rpbW9.PpxfJY3gs6g6PNDKIaIjwOBGz0v76gVi37AOoLYiG2pzFqtZI6MHOlr9ZNsdhy5kINqSvq8AO5QjMV0vLaMGpf62PfEj.3ktM2YXit7Wvzavwz.JnbxAkMZ.6rdZipcotN0iLQAFFln5iMXYzFrUPGPcnilerg6sUKXMli3FMyktHQp7bHRlwDok0hz6fZX6S8DiWQJO2AsOSP7aisS5+zzZrze0DUkCTvDE6i6Q10GFLhiBOtToGZA+2C9v74A+Sfv5Tru0dGcf0OzpFqCkQJ1gHzPki3CDTVmCvLvs4W.XYLGdDbuS5XCbA7JYQgqJb+v4uu78mObPQeRGZ.HAUwtts.TPg1CX1BJmU3Tr6.xCx+yymi11ROx5oVkJ9nGjOWNPMB3tjhd9Tlnv8umU8Za8Q26d2S9xyQbCHoo4oVUcIXVwhEUDkK+m8PqsBFxrOjKnso1X4t9fOLZ+s3LXAxyYETxP9OKu0jK0t8TWSZh84ttR6xTVVFK3eQLVfMneKh+CsFaAjDB99j.prWN.ks1iGiPNaeFU7bOR33c4tNRfh74zvOiPHC7zGu+NXAVhHCmCnyi3KnRwwbGxoPN.M9LGZGRPOA2yvHM3EBa3NCbwhjwRxrLgK.1iD.XIHkEPECimEZNBvJcgAXWVQ7cP0oB6tSWFWZJxHXotIjwvzReCTs1sI1hwB3xnc+IKZNnRycNn7g4ff8Tm7QOzZBYHL4i4uBMFq64S7v9jl75t3gEBTUbNBDwGZ0xka2qA8mQRGf3okfskTTvtKlwf.8EINJ60ThYiQYAE9zyfRGGNneCnllMoZnzAyYtjLDROtjbrDVzfvbTC9B3W3hkkiMCWrbzhwh9NjHdA2umxaD9rg4skl9uMZO5ojCH0kIU2IvKZ0sbc4unJuuGMDuBtC0b04tC85xYTa4TZJhD5s5yG.6WnjOFrucjmIRIfhzMwTWI1uwf.HahyyYMf2ipy.yLGS7CT64sPkJB+ChENj6.KkcWrMX9GVGK5JCpjIn.DLwun8Hj7rzn3.Kc2ByhR4dE0hgVdA0ruzRJavvLSrTWZzsbDD6tjb6uKZ+fikqZicMNVBejZo5cJIORQjjlEIKkYjPmtCnS9PgG4Bok3PNdMB3xwEvXtglXenjZPXRXFwV6XUhz9NxLu1f6DBtLpi8g8CpsJmNK5Yj1B0d.wZmEkGeGZfGDBt8.HShNNOwLRyAygbVDZrFDP4.0JTrGgPGsORAMlkIOpO2Q6RSXcVIlGeDEoMSwX+lzWlIlDeKzTD2z.zzxZDiWfftBpYWhkCXmBylg8EWihtDxwNEnEbZID+2UI9P5vhiIHsBDm8qj0NqrvIIRXygbZsp5qGt5H3agNh1oK.gii2f8OZDfXNfxh13vJv+zWd.9rIlCxvJHd5LY4V929aj+9Ka1nG4EZCmb1mZ+2dUm+z2phFUneAMImIZxUOWcjwBrbeLDgzFfGNfj0Q+8KMFzZOe9.O0fI19BubGRa7.WQJwJdvyXivT.iZuod4z9xwrNOdx4vAgPXGmIcNZsIoyISLmycR6bf8Lky47Mi6bF4vR3bhnTi2T40tl7MFFyx2r0.AuOzufpUOiad8JBsekUrk99+x26e8O+2aN2JV9Kmh89URqXmu4rUr6hppPmxVqu1baUtLgTZXahvInFC72hx4SGGoo+0DCsThXnYlZ5FCkbslZZtg+STw+15xfkm+Bni37BL2eBTAkFXAu5.KWZOhElYAeYOoiBKAOZw8cH9VBtUOBwyR.0akcZAqzl62WkZyBCrJDtDKWNqCHPEKdM1K36hHfw2EX+j1bYe1SVL98QNCY39T6fhooLsUYZuuan1FyGUzn7WI8MlnTwkKySke8jYd98oqiCyZ8pe2q1TiN2RHv18lQzRVj5TJuRAJqWY9KML25QNzQDWBNfb0UDXumhhfTGQq98oPiKPYgokI6hJK7VQm6ZCZGFDncimQK4WpLB7O2caEi2an1s9lnNpyb8Da44n9+665Mi9t9Eu7e7Gp84ytuqqX70Wya6ZVcHLAVNQz16g70mmVwDzjNjahWR7vtbY2y6O+Ey8IDDKtazWtFdCESMRc1M5c22HZz67Y.KOeyDwaSGiNo9arMm2qOVcxjW4qH315EuE5PNEpvoO1c0yV6QfNHU32uTuaRyLIOt3kubGWbxayHF8S4v0W9l5NGW9xcd+ulK.5q+2fShqmHWjL1fJ6YsVXKzgXoPf+nYiKjGvY7niEeL74Hhvm1oCIYP4zzmv9KGMyJUh5TazTe2JOCBSw9pSIawLEy+sEOU202IrcXKY.f0Uws8kJJ6Z3R3t1k2upuPt7QYTqNv+TRsO0HriZcRZe5mZU6GmrN5f96RcUouCuzoswpajRaz9i+f+yeWNQ4QVw2dPE4DqlLSKyYsImX83F9c2sYMlrFsV2y7lz8t8+J6QersO+jvuiQBbtsZFv1xBOs3CjisJab5jsszGJzbhscxWUJFWcQYbsEkw0WTFezhx3iWTF2XQY7IudFk8AD1tlLMHzlY8Z5CXwLVTmw+Ebk3BYI
  • question on the loris toolbox "use samplemaps" function

    Newbie League
    1
    0 Votes
    1 Posts
    24 Views
    No one has replied
  • 0 Votes
    1 Posts
    28 Views
    No one has replied
  • HISE Sampler VSTs Crash? Across multiple brands (FL Win)

    Bug Reports
    30
    0 Votes
    30 Posts
    2k Views
    StraticahS

    @Christoph-Hart double clicking VST in FL = crash

    still an issue unfortunetely: https://youtu.be/NwCzPhjLQek?t=399

  • Runtime assertion of exported FX plugin

    Bug Reports
    16
    0 Votes
    16 Posts
    194 Views
    ustkU

    @David-Healey Here it is

    HiseSnippet 1379.3oc2W8taaaCDmxwro1qCXEaeZn.SezYnHvN+OYeXMI1oyXyIF0oACXnHfVhNlHRjBjTIwanui6YXOA6MX6nnrkbrcrZPawvTBRD4cGue7Nd+3otRgGUoDRjS0yGEQQNOC2aDWO73gDFG0tILO9bpRe9PhFcznHhRQ8QNNq7ZibmJkQIO+8OdDIfv8nYSgPWHXdzegExzYy18U+LKH3DhO8bVXNs25Us8D7iEAhX.KqfqihHdWSthdJwnVIL5mHpgHmuGuI0e+8ZP2cm902ciMp6sKcG5Va52eO+sZP82hR1b+s2lt6FHmmzxmoExdZhlpPNkOR3Op2PwsbqCtfoX8CnlAMP8.Oam9DQfuYKZlEc7PVfe2wAIEB4f6lExVwFx9FbGlOax7YgtuJQfalE4CfNklFdqLE7ZjGd0yAu4.ImbPprEROG2ySxhzYRL34Kvs4Zpb.AxS4ghUWTo2VFer.zfqWOjbM8DILXhE01od8W5B+YsenZwdFDy8zLA2UvOUnomwqsV0+nZE1.2ZMacwkcNqYq0pVAloh5Vl1anasN.Vgb95WQ0FKNMNrOUVaMPqD0p3QTT2M24fJ539z17nX8qIAAT4niz70UT8EjfXZMsLlBfrRxy7zzaHgeE0u1Dk5KojqgAY9X2CpvELEcoq+80p.q8dGTgdmGChqKc0mUuBr96aiOmEqKZ.ZFUWtW1pN3EIgqFHjgEXmLecKfefnUnvONf.0JYVp9s5uaAdZQZW.es+B7UiOHe0nH9Z65KvWa7A4qMd.eU48UgeeeU26WHNXfsR7dxL09RgYsmqXCgs7gLrFOod8kt2X.+DEARooY5vKloKOQrmkJJmhBdaNSeVDkuH5YTJ+E71aa2jnIF5wz4.8hnRMy.AmlzafKmrjkUvMopq0hH35oYXRAN7ww87D6lq+RE.wfoXSMLlbESOJ+0iezX6KJDeNtqgSc9XrzbvHDo9Tfwz6H+RbqACnd5L.VFexu9o4Bw7t+oV2+s3WGH5SBxBTvYB.IT6EiuHUr6D4tYJr3td9yh10STg65490JkKVsxRZZo7+4ZZonGi+5YxLpOiEaS0Z0Srv7EosVYxjWPjLBWOAaIP96RUv0ngapJY3e4v+HVjHfHy0Ylyegy3aijzHhjdtna.YTMEILJf9FXi9RW66ptT4QABuqmkpNxtaRjVqeLTQJmGed9t093c+wxtk.W3jViG9nU1c.mR02JjWmjISeGnDrmq5P7jhFW1TEMVxgAAhaOVDFwRYLSbE7cGmSXAoey.UpRjrJt95vOVa5JBFEMTvYdlblcEnvYXNmFbXnHFvhC1oD.nL53jbPO1uSMhL48dwJ3hM+y38.iS3TfxMmSE9vaqdBwCBMi5RzCMT6diImLW9OoRY1cT1QMC3seJ07zyDl6RjfbnYSkcea77XlIKBgMVnItZ9ZLmULxsA1DH9DCFvXhuOZJvVEGB+ecy7yCMVKVhuJkCalZxwi.piNLdRqRlUxjO5Ptax3FvXCpVEam5vXs..yDdxbMD.CVjKVM+RrL2A427r4stCVB9jqcRN4TE2joHvIYeTS5.RbfNcEfc5TqcRiKbZR4iBM0PPYSHqs+3.3D7ZlZLXmZClPkYFATMkLaomgaqtvH0iDL1wvYzOksM8f8jrx+u6I4MhXMieUGhVxtCRav211CNm3MlmPMlhHcb8I7B.oPxf+AdRE1vL1IUXiwBQ1E2l+9r3vPCSxkdVhcygrmlLCDD3IU2UrbMtMP2XOfkkXCglLtzya5kZFC23wZ3lOVC25wZ31OVC24wZ3tOVC2a4FZ5ALkuzTmB2b0sUxAKGmVbK6ETdf9Wn6hrpD

    Screenshot 2026-04-25 at 00.59.27.png

    AI fixed it by adding a samplerate > 0 safety. This is confirmed working in main project, bt the same assertion fired this time for master FXs. So I have made the same exact safety and all is good (for this assertion at least...)

    Now a new one with MPE connection... Not done yet but at least I progressed!

  • Phase Correlation Meter

    Scripting
    17
  • Kill the audio

    Solved Scripting
    10
    0 Votes
    10 Posts
    187 Views
    Oli UllmannO

    @Christoph-Hart
    That sounds cool, thanks for the info! :-) I'll give it a try. The question is whether the reset message is also forwarded to the RNBO effect if it's running as a compiled version within a network. But I'll give it a try! :-)

  • Airwindows code into scriptfx nodes

    ScriptNode
    8
    0 Votes
    8 Posts
    251 Views
    HISEnbergH

    @Jeetender It looks like you didn't grab the source code for the Tube2 implementation. There's usually 3 things you need:

    This Airwindows.h file, which is the main wrapper for all of the FX.
    DspNetworks/ThirdParty/src/airwindows/AirWindows.h

    The individual wrapper file (Tube2.h)
    DspNetworks/ThirdParty/Tube2.h

    And the source code for the individual FX (Tube2 subfolder)
    DspNetworks/ThirdParty/src/airwindows/Tube2

    *Note 1: I had issues compiling all of the FX simultaneously so I initially broke this library into 2, so Tube2 wasn't included in the original version. I just added it, checkout the dev branch specifically.

    *Note 2: The individual source code for all of Airwindows FX are basically the same. There's typically 3 files:
    Tube2.cpp
    Tube2.h
    Tube2Proc.cpp

    Currently I accidentally pushed a version with a .inc extension. I'll try to fix those but you can manually remove those for now.

  • Setting a projects minimum MacOS version?

    General Questions
    2
    0 Votes
    2 Posts
    55 Views
    SifresS

    @Orvillain I ran into a similar issue with snex nodes and Hise defaulting to 10.11 and the compiler wanting to do 10.13+. Both are at the DSP networks compiler end.

    I've got a feeling it's more Xcode related and dropping support for the 10.x range slowly.

    Claude told me this but won't be able to test it till.tomorrow. Let me know if it helps.

    Got it. So the flow would be:
    Export/compile the DspNetwork DLL from HISE on Mac
    The AutogeneratedProject.jucer gets regenerated with 10.11
    Xcode refuses to build it
    The fix is to patch the .pbxproj after Projucer has re-saved it but before Xcode compiles. The easiest place to hook this in is your batchCompileOSX.sh script in DspNetworks/Binaries/ — add the sed line right after the Projucer re-save step.
    Open that file and it'll look something like:
    Bash

    cd "$(dirname "$0")" "$HISE_PATH/tools/Projucer/Projucer" --resave AutogeneratedProject.jucer xcodebuild ...

    Add the patch between the resave and the xcodebuild call:
    Bash

    sed -i '' 's/MACOSX_DEPLOYMENT_TARGET = 10.11;/MACOSX_DEPLOYMENT_TARGET = 10.13;/g' \ "Builds/MacOSX/$(ls Builds/MacOSX/ | grep .xcodeproj)/project.pbxproj"

    That way it survives re-exports automatically without touching HISE source. Want me to look at your actual batchCompileOSX.sh if you paste it here?

  • Phase Invert?

    General Questions
    10
    0 Votes
    10 Posts
    517 Views
    J

    @Lindon 11.jpg

    this did the job for me well, eventually, inverting the phase of left and right channel independently.