• Modulation is deleted when loading a DAW project!

    Bug Reports
    2
    0 Votes
    2 Posts
    32 Views
    Oli UllmannO

    @Christoph-Hart
    I tried it out a little today, and it's not that the modulation is deleted when a DAW project is loaded, but rather that the modulation is reset to the state with which the plug-in was exported.

    So:
    If the plug-in was compiled with modulation of a parameter, it will also be loaded with modulation when the DAW project is reloaded. It doesn't matter if the actual user preset was saved without modulation. And vice versa.

    My ideas for a workaround:

    I create a panel in whose value I store the modulation matrix data (ScriptModulationMatrix.toBase64()). The panel is saveInPreset.

    Saving takes place in ScriptModulationMatrix.setConnectionCallback.

    I create a load callback (ScriptPanel.setLoadingCallback) for the panel. When loading is complete, I load the data stored in the panel's value into the modulation matrix (ScriptModulationMatrix.fromBase64(String b64)). I hope this does not create an infinite loop. I could also try UserPresetHandler.setPostCallback, but I don't know if this will also be executed when the plug-in is loaded with the DAW project without a user preset being loaded.

    I'll let you know if the workaround works.

  • Phase Correlation Meter

    Scripting
    11
    0 Votes
    11 Posts
    218 Views
    dannytaurusD

    @resonant Here's a solution using ScriptFX processBlock() (no nodes) and a global cable. It's a mashup of Claude code and my own, and it works quite nicely.

    Just put a knob in the UI called knbCorrelation with range -1.0 to +1.0, or use the snippet below.

    // Interface inInit() const rm = Engine.getGlobalRoutingManager(); const corrCable = rm.getCable("correlation"); const knbCorrelation = Content.getComponent("knbCorrelation"); corrCable.registerCallback(function(vNorm) { Console.print(vNorm); knbCorrelation.setValueNormalized(vNorm); }, AsyncNotification); // ScriptFX 1 onInit() const var rm = Engine.getGlobalRoutingManager(); const var corrCable = rm.getCable("correlation"); corrCable.setRange(-1.0, 1.0); reg correlationSum = 0.0; reg sampleCount = 0; reg smoothedCorrelation = 1; reg prevSmoothedCorrelation = smoothedCorrelation; // ScriptFX processBlock() function processBlock(channels) { var left = channels[0]; var right = channels[1]; var numSamples = left.length; correlationSum = 0.0; sampleCount = 0; // Process each sample pair for (var i = 0; i < numSamples; i++) { var leftSample = left[i]; var rightSample = right[i]; var normGain = Math.max(Math.abs(leftSample), Math.abs(rightSample)); if (normGain > 0.0) { var thisCorrelation = 1.0 - (Math.abs(leftSample - rightSample) / normGain); correlationSum += thisCorrelation; sampleCount++; } } // Average correlation for this block if (sampleCount > 0) { var avgCorrelation = correlationSum / sampleCount; // Apply smoothing (same as backend: 0.8 * previous + 0.2 * current) smoothedCorrelation = 0.8 * prevSmoothedCorrelation + 0.2 * avgCorrelation; prevSmoothedCorrelation = smoothedCorrelation; corrCable.setValue(smoothedCorrelation); } } HiseSnippet 1650.3oc2X0sTaaDEVBPYJNoYZ5jNs8NML8BQf.VDBgVZZLXfDlFCdvz7yjoSl0qVasCR6pQZsab6vyPeE5aRyiPeDx08p9Fzd1URVq.kTvSaZR8EF1yO64aO+sm0si4XRRBO1vr1QihHFlWwpyHlvuoOhxL1aaCyqZ0BkHHw1oj1ZTDJIg3YXZN88kDLmcFC0m+3dagBPLLofjgwi3TL4gzPpnfZ6FeKMHXWjG4HZnlzq1XOLm0jGvG.3YZq5FQH7wn9j8QRwlxx3AnDeCyaXg8VEuJdstq5hP8tia20HcW28Ntj0w216KwXD91cwt25VHCyKsiGUvi6HPBRhg4Law8F0wm+CrTC7HZBsa.Qtv0nCX4Tx6xC7jGQIUil9z.u14NpDCCSq1EtsoScaW2pE0iNldg66iTLrKzP2AZNUY3McI34pCu5ZvqBHYpAoYRgz0r5fioQhBNR7bYq8XPzrGBhS5PIUVio9cSqlbPBlXoPzwjcigEi0vYs50WzF9Z9MpUChUIB63P66ZuCqOkQVpOQb+.dWTvg7ABJqeKDChdwNfzoBi4wwMQvIBzINTJuZkybRFj.jfxYyMV5iYcaVPGTIGXR83gQbFrvYtxhMWJzxryRwj9TY1aSTPPWHaxo2.FVJmyv84wgyW6mpYCefcNgChGESgsLk0FJNk28kRHhGgBFPjRfBn+Hwarz0NYQ6MSFwv6yEzdTrRAfdtEs4LfC4.lizpyV6jZ1mlUudUxSdti4AARWYErkUQwuIEcXCB6RhWzdnD5iEDxTJm9Y85S+zqNvogAMA4r8XTwAQD1qqlwHK1ISUyPEHpPknd0rD0NATORrA0SV0T1uanPtdiEiuausQBT99AaMXtHRrfJOIlaSFBMdRKDl0ZaRxwBdjR1r7Fn0v425uXrk+kdMFMdwq50HrTGveMj54EPZySnJ8zw6YKPgVCbuAfIJ2uP1UMigbOzKRkEhLXuGo208erlHmWHdMq1TA1uZLNUEXDBR+afwrVuen0N85QvhB.Ni0tO4sWe1ZYIPfMkF+JYKs28ItU1g8msrR6uMDEewZeJU372BMuEHzx5PDqOw4ltKAcugujMqfFi1ZpzYfDH0Wp9FJNInvn.RS9.lPRNiXHmK7IdkaJ6lxLJlLrSkBTgZaLtGEnVDJlbDuc.ZjSpYODBRKZ2MfiOtCzg8rM1hRiAaIkvA6iXLRPhRLoGJfzSB5b5Oq92m1IW4to88KwzUiIzkriB.IfDxcYo.BquvOUB0WU6wjbNiGarNKub9s+1DD1OSR6HDMVwuGO11QZepRQ3OesFTf0Krv7JASupJGsR.lJSFZeFM6rT5vNVD0pRxTRXFbIlryCHYKjvGt7+ENp+A0MwovVyun8XpZ6+7yWw1R6Y6Lda+FoqZ9w7JNK4.P3SSNUl0R0suocUn.Hqab6kGCeMbTQ7Zg6dZyTVbsf3BKTv5jZEemGR2bHIFpN0sfJRJ2+zb2Z49.8TCvMTUvDMre4y9o.9x5PqBWsDPQQAixJ1flGJyRrQ.XfwdHLuuBB.qaeCUgJkOHwdAfvJ.A7.vTLQQro557BsqpLOeyJePJP5Eq8vYOfkZmol.yoBEyh9mbAGCx5be6f6a9xowMtEwTXlAq8gxX3wLXRyr9M.MyojSCktttbs79wNP.Rs3OgOYLckqMyX5lyrXPpIZBH86O+7TlW15wngD0q9TWf8Ip0Ptbn88ILHKGbMtug288am228Ecte22AXA.gihQrjHdBwUameYGRH8HXDtDcpmViUpTCcpFaSDCX5a8pMRIURJoqXWvU3pOwUNwUzI1FwzD5ouDVqw+oMZQKlhz3U2aGlLatCAN4dGjfAGizOWZCGDjPdL0S36pqXA4UzI+.TrGDCw5fGRniEs8Qk8fZjKcTMm9M8VY2I7sxW5ct2J+dvj3kFyb1bL1gJuBXG1PR.Tmqv3GCE18PCBD4TKWn1hy3Q9bFsTZwgDn8TeXxRcrW4AZSg.t7nfx0abHIf.INEj9hFODlcEEC9IxD5KbuvibWY75yrRgqsr6h86uufZ5+W+Bpye0Gzv7c6n3mZAMtWwVEJs+uIV91Xfi2F1HDgi4OGmNmlrn+CTTfyMS8a+NqUK4Za2y9CAEBWY7bLt7VcFEWYRU7VSphqNoJd6IUw0lTEuyjp35+8JJuQeyABdXZsggQq16nFa0zLcDHUYhweQsTysb
  • save start and end positions in preset

    General Questions
    11
    0 Votes
    11 Posts
    52 Views
    dannytaurusD

    @treynterrio What's in your preset XML?

  • AudioWaveform.setPlaybackPosition()

    Bug Reports
    1
    1 Votes
    1 Posts
    23 Views
    No one has replied
  • I'm making progress and finding new issues

    General Questions
    2
    0 Votes
    2 Posts
    75 Views
    C

    I’ve completely cleared all relevant directories and rebuilt HISE from scratch, but the issue still persists. At this point, I’m wondering whether this could be related to a version mismatch of some sort with my OS. very frustrating been pulling my hair out the past day and a half.Some thing that is confusing me is even though i get the message that the build failed, it still produces a working file in the dll directory that loads perfectly as a hard coded master fx in hise. plugins with hardcoded fx always crash the daw how ever, i think it 100% has to do with the lib file.

  • Happy New Year! 🥳 🎉

    General Questions
    12
    7 Votes
    12 Posts
    132 Views
    YinxiY

    Happy new year !

  • Octave, detune, unison not updating in real time

    General Questions
    13
    0 Votes
    13 Posts
    109 Views
    D

    @DanH @Oli-Ullmann Seems like I managed to make it work by retriggering the current note. But obviously this retriggers all envelopes so not really good implementation.

    HiseSnippet 1817.3oc6Y0saTaDE1NINPVnsPUjnWNDUI7BIKq2v+onDH+wJRHqXCjdGch83rih2Yr7LNjETtqOO8UnuBH0Wf12fdQuu8Li8tdbxRZRAp.DajRVOy4blu4Lmy46LNsR39DgfmXYWYydwDK6y6ztGS1YwNXJyp4RV1S5jxnBNal83TP1Y1kw215g8hwBAIvx1dzUURZOwXV5O+47ODGgY9jhgrrdtR00ncoxhQasvioQQqfCHaR6ZH8MVnoOmsHOhmBnZTm5VwX+cw6PdBVI1HNVOBK5XYeUmFMB8uS852Y1YuYcLd1.L9FdjYuKI7Vg92r9cqGr8MqC+bKK6wWNfJ4IskXIQXYO1C4A8Z2g+RV1B7bpftcDQ8fmUaXkyFdEdTfZKpF0ZwNznfV8cWBKKamVENuQybdS5rNMfNX7Bm3EzSfJzvzAZORY3MZI34YBu5FvaHPx1.RikAoK5z1OgFKKlQgmy4zjIIIgX3bxDJYxZMRx3NKxAIXxZcw6RVIAdXfFt2pd8oQvupNWkJW+5HuZn1DYZbE3bSHQ6gSPqlvSi8P2GoClpsCQpAq9I2oz+gHnBReImp5bHC0eLDioztOFT5y6FyYvCtSomcJ0hWnA1WR2i7DN3.A8VlsCkQp4mP.OpxyuFUHcAMNrBOmDcrxaX1ZgP3p6Ldp0UYfHrP4RVirGIBLwLdv3TVDXGTXJCziyPblFqPb.aGhqe+svz.BhRIUq75JH3C3BgM5djDIpds5y3UqNRxQdy3cK8zQbebDRm8sHOkIgEacL3TCi37DWskPWE4cypnqg.PnTQ+KZHx0PqKe+RPtpVlL.jCh1atbKj28TGlnmoy44Hclq.41jEP1Gc6pCjO6bqlfHefTlP2NURbu8zFvr5bCj8HKRi6gVgm3SPSosO5AcUZLExcStD1qs3Q8h6vY8ppbDBItGBKQXTG5NcPgz8IAYNPS6lAvFHp.AwVJkXA3j.zUJp8bETHOA0FVp.zpDFIACIchZkfWyPDUhB3DA6JRzK4I6NMRlzK27yh.CbiZGqSnwzHuF2QEOejsOr7tT33q9bHJ5GThAe4ZWqvoVbbTbvSC.MLiCgjgmq18tTCWbo0I6z2Ez7xp.ypkln7Zn9jkix.iuQX3C6s7dPHZy.P8CY+BLwHurYvfr63HbOEzboSajVYhygXHycjXfjSmY5CI+AUN52NT5WQbWlpGT4fJUzIeJqqpijviVDGEsMPl3VJur5bF4qJ.sAyUkZNwPg35PQTfLRs6Ty7jztaSRbqNMxXh9dP09dBCOxoxHfFbeprm1JGbXHFFlgQHjcKBJUPfyYcxBcGFMrmNGPchpxGfz3HNrQSPcHQAm18kthm45m6LiTSqf.3oMq3oXyG9L4J5xz11nHnVPfwpLMnyamFzjk1OiivPPNqIiJ2Hlvdab2V4DKJJybTAhJ0DlecNgY6HZ.IwhB7hmwQGtXoAbQmJuYdqm0bIrD22LfEgUIFJjSUa.6kH6AQkY7vS3rDQrqjGqkMmH.Hh+WWz8AOg8eAKWO0WbguHj8Ttgw0BX0kFDDQZwETka1nQreUHIwsouRi3WO4ur5e7ped9tl8pAlJMDpmp6pBn25JfhXwM6BwAV1eqyyfnp.RHNMRhD6BJBja6RB1jqk25n8Z.c4vCRiTkUMa8Q0fX9DJDZ1ugpmBFf7dlMPd39gF6j0Ozw2t1IEtWzoEU52Y33cjgfW3v+CMdy6t7qbVNLj3KK.6XNq7iGaqju2gx2T5VBZ9u7aIbzl5debKge5DeKgkYXXmsx5lVbQbRBkjnIuMyLFbtejYx66QCkrtRJl8BKjO6RP2tr9fYgYm82lOeh1wPGjAlaSE5aS.nFj0IUo37QOwGVmhqkblOTWK4+0zv28pFuetE0D8wXaZ23HxxPa5QPE97REKkUcbvnlfbcHdP0DK02Lh7oDnD6N.WrIzG59A5nDZUoXjIW3ojHBVXjD78KrFbcCbB3lH+GcEdm5KTNziquyICtHUVJ5yih8i9tVr26S8h8Gmq67NYUAUG1ejeJCjU55xej.0KkA0y4rEdOhl0TiRGmsV83nLeyIkxL9DSYtguDfvlIXlHlKHdlVtMoKcSnIUQoQOjFMFpFkFMKJw6nCURJkqXEdRWC4N6B8Grg4fsvrRFCdtjkVmZvm+6ym0UPFC7FBevwnhMLOuakFIHaQCjc7LUrX3FlC+Hbh5sXUpl96LO9PK8N9W3w+BgvmPDBpXv8+zg5+RNP4fFH8wM5Cz48o.0OkmJorcVGCsGptw+SR61FpS6STuiJFIR89PrGQcklrmqqdNqpKKP+veCexmzS8rc9jd8m7yl0nK1Og+B+r2aipT4Y0i.9Vl9eQz3NqsxFG4s0XodSIzW36W1NCzZDmunw6SMTLROHUx6lkWALysVV+xxrsyHk0oXV+CPVH1hA
  • Making a counter

    General Questions
    2
    0 Votes
    2 Posts
    57 Views
    Dan KorneffD

    I'm using Activity Watch to track time on an app.
    ActivityWatch - Open-source time tracker https://share.google/Edb7SuzvFWQrHf5ZR

    Maybe you can borrow some code

  • 0 Votes
    3 Posts
    53 Views
    Felix WF

    I think setting isMomentary to Enable would be better.

  • Enable Multi Output in Logic

    Solved General Questions
    9
    0 Votes
    9 Posts
    131 Views
    dannytaurusD

    @daniloprates The guide I linked to above has all the info.

    You need to compile HISE with 2 preprocessor definitions added to the Projucer, under Extra Preprocessor Definitions:

    NUM_MAX_CHANNELS=16 HISE_NUM_PLUGIN_CHANNELS=16

    Then in your HISE plugin project settings, under Extra Definitions Windows & OSX:

    HISE_NUM_PLUGIN_CHANNELS=16

    This will give you 16 internal routing channels in your plugin, and expose 16 outputs to your host/DAW.

  • 0 Votes
    2 Posts
    35 Views
    LindonL

    @WepaAudio you need to use the full file path in the load command

  • The big bug tier list

    Bug Reports
    85
    9 Votes
    85 Posts
    27k Views
    DanHD

    @dannytaurus working 🎉

  • Custom Keyboard

    General Questions
    6
    0 Votes
    6 Posts
    105 Views
    Felix WF

    @David-Healey Thank you so much, I'll give it a try.

  • Colours added/removed in UI XML

    General Questions
    12
    0 Votes
    12 Posts
    98 Views
    OrvillainO

    @Christoph-Hart Interesting, I did not know that! Looking forward to the designers whining at me about Figma pixel-perfect accuracy! 🤣

    It might be worth performing this rounding/clamping in the UI fields too, for consistency sake. I totally get it is a JUCE baseline thing, so I'm not going to whinge about sub-pixel accuracy or anything like that.

  • Notes off by half step when using Arpeggiator

    General Questions
    2
    0 Votes
    2 Posts
    42 Views
    P

    So I solved the problem for now by setting the Notes Number slider Pack to Step Sequencer mode and the min max settings to +/- 12. I didn't figure out the problem but this works for now. Thx

  • Automation problem in daw (get stuck when hit play)

    Scripting
    1
    0 Votes
    1 Posts
    21 Views
    No one has replied
  • Neural Amp Modeler (NAM) in HISE

    General Questions
    40
    0 Votes
    40 Posts
    8k Views
    C

    do you need to add anything to the extra preprocessor definitions when building in projucer to get this stuff to work properly? had to rebuild and figured I'd consult you guys before I move on.

  • Faust Ambisonics (HOA) library doesn't work

    Faust Development
    3
    0 Votes
    3 Posts
    76 Views
    JulesVJ

    @sletz Thanks for the suggestion. I tried that and same result.

    Now I understand that rather than versions, it is about input output numbers.

    For example the below one. Naturally Hise complains about the input output channels. I am not sure how to handle that.

    Screen Shot 2025-12-30 at 23.05.26.png

    Screen Shot 2025-12-30 at 23.09.38.png

  • 3 Votes
    2 Posts
    68 Views
    B

    @the-red_1

    thats really great - awesome work! Thank you very much

  • AI and Hise

    General Questions
    3
    0 Votes
    3 Posts
    81 Views
    pcs800P

    @David-Healey Ok, I will keep that in mind