• Best Practices for Multi Vel/RR Mapping/Keyswitches/Chokes?

    12
    0 Votes
    12 Posts
    1k Views
    T

    @Lindon

    How I assign choke groups for multi mic hi hats in Kontakt:

    HI HAT DIRECT MIC

    Hi Hat Full Open, Direct Mic, assigned to voice group 1, 1 voice polyphony

    Hi Hat Fully Closed, Direct Mic, assigned to voice group 1, 1 voice polyphony

    HI HAT OVERHEAD STEREO MIC

    Hi Hat Full Open, OHS Mic, assigned to voice group 2, 1 voice polyphony

    Hi Hat Fully Closed, OHS Mic, assigned to voice group 2, 1 voice polyphony

    etc...

  • Instrument compiling error on Mac

    4
    0 Votes
    4 Posts
    350 Views
    gorangroovesG

    @Christoph-Hart Thanks so much! Yes, that fixed the issue on PC and I expect it will work just as well on Mac. I knew it was some minor thing somewhere .... 😀

  • LoadFonts...again

    18
    0 Votes
    18 Posts
    1k Views
    Christoph HartC

    Ah yes, that might be true, it's been a while since I've implemented it, so I don't remember the exact details :)

  • FX not affecting the Source

    3
    0 Votes
    3 Posts
    344 Views
    JayJ

    @orange it's not necessary those fx that I'm using it was just an example, thanks buddy

  • This topic is deleted!

    1
    0 Votes
    1 Posts
    1 Views
    No one has replied
  • This topic is deleted!

    1
    0 Votes
    1 Posts
    2 Views
    No one has replied
  • Commercial License Requirements

    3
    0 Votes
    3 Posts
    546 Views
    d.healeyD

    To be clear the license is a proprietary license. You can release commercial software that is freely licensed under the GNU GPL.

  • Solo Buttons

    17
    0 Votes
    17 Posts
    1k Views
    JayJ

    @d-healey How do I link the combo box to the buttons?

    HiseSnippet 2858.3oc4a07aaibEmJ1Laj1nrdK1dnn.KFXzBXij0QjT9ijzfPKY6D0XGqX4Dz.TzjQhijFDJRFxg9iMMno.sE6st8+f8OfdXK5kdLnW6kBzi8Rtz6au0aoyvODGJQIQZ4OJP0gDyYl2a989MuYl27Hm51lsPNNl1B4xu+wVHgbWUrwwFjtU6BwFB01PH20D2A5PP1.+hpbrEzwAoIjK2L2mUPt7yJ3866tWEnNznEJpHAgmZhag1F2CShJst5Cw55aA0P6i6w05xp0ZYZT0T2zkhmYDKIXAa8RXGzifrlcIQgbWdSMLwztAARPNB4lsho1wM5Zdnge6eJ1A2TGwdPRnAUQ9EukotFCwrREp1EqqUOztcDnZodDKLiOK7Yh6f0v8KOhMlyqBPjD77QtKMN3IwCuRoGd43f2r9v6SEazxFaQhpggsOVrlAcfpMjNDvCK+1Jbo+8bhUMosvfrTO3KQaYSenuDKHIsRoa.VsToEuSwBEKPGIbHfCfzwc5eYpiX8rSCHAbWfmGxRcPjMa2F0hrv7Czj48UwMuI3to+Wk6CZfzopCaZv28UtuLsKCANsSqZ1yxzf9vBySqyqu3asxXZsxPst7XZc44GjJbHGqipXPjFoT8aw.8TX4xSTR4QHY4IJY4QHoxDkTIvRKV.aniMPf1tFdCD.lxBrHlJrM0WnUn72f1K5tnEKV30EKjmNZWgNcsisoqglDa37P5rb.T+P3wNflH.jpwCPzVNf2xRNHx5DhMtoKAsvfUtioF5F.4EuC.P6g0IPC.qnhEdCEwSbLfo6.bWEpq2jBvEF1jlrwKOdiGP+cBrpxAVUCbnQwTD0olI7Byef+xEyG1U2IMFs7jLZ4TazJmIF8JgFMj3ZSWmLlkqLEVtxjrbkTa4kOSrbk.KeenQ2XVc4ovpKOIqtLmUeya9EmN+nlwDWeOjh.dzv3ZZf1NMwV12+Yx3CjBi0A7T1X23L2zvcYFaS810QJf5D26gFMG4lFA0GrkwvShZ4qcoJDiS4oQr3MuAPRYIusCXSkBcwXF558n67PNIyNwGQ05Rk7TZL0RqIlZCLcl57FlGRUc36mUVLPioTqs5BM5fzVX7S74n2QM0e3QfILVIOwwp7mjApkWZUVGmO6iFkVZMOIyFgKIsXLoxDgJOYBUN0DpxYBgJWZJHzkYRlcmXONMzCdHQCT6IiwUlLiqDmw++mUzO+1+B7TSc2dT6Kfmc.q63f6XziNTkjQelXrCOQJviZZlDII0ORJtkgSd9QJh3p+9dI6wFGvmedqiZ7CctN.Vr.2X2iLIncMVXwButP9BuYnZZ2NopBfuNxNoZYYJxdLhsfgaulH6vAxf1Ija13YjQbzYjgOgQs7c.3ZnoQMCLYWKjwnxSiPfWifPtue.nnMk3kulqEjulJtDhog.Vikrl9mBUvCyTvkyKMXYRX4oQXkoQ3xgBGk+uznfhhbQmj89uu3xSm3JbhmBCngNVCY6oh7hAyzGT72Or3ECDeaXSjd.+0fweNzS8EJOsn8e11a1fUTJzvUizPeOmORb+mUeyFYT799NUE+IziM8.yCAZlfZ.VxAAjtXG+IS.hIK8MlGfrsor.3vtHCfC7.rQG.DXYinKGduL108879pzz0snqxlb2RO8LpEz0I.UGaBrQsoU0EfIfNlz9hs5LSMjtHfNjdDmdzCdCvFdETlzEzz26Ha3uuyunH8fCYT3kiDlFmaFEdEdgWNiBuZnvWVjkIsLJ8ZQccCbVE9VgBWPLLyOoQCE471KEg98gcMxp3RQHvoKzhFswQCqh4BTAce+llULOJXRaKBys44UGZR+moJ7jZa.IPVh5C1AftqfExlfYa3jaCzA3VH+z1mWbCjyKIlVB49g8CrPH2Uhi95Pi.zOqHcIgih5raodbzCKqdHVizseAa+GT6hvc5F8hVp+aTwDTuvWnR9Kesqc8OvpHpTY9hE3vT9QgIQQ1BGmhf55+nqkDnBK9fvcnidmRoFmJml376c8DwYXwS.mWYb3r74.eFhSdPc0TEcxQ7u4tHr8tGq1Fq2ygtanUsdvNTEADec8818mtY08e9V6t8Fat2a7iJqARWZIKiNBwMl293AMFZINzE6QaAaQ7dmjrhe2m+a+m2yFpgMuusoqE+90DSScB1hMss5yYyw.dS2ARBXm55tcvF0g1vdHBx1OrMq3E5+hEGR3rxQ7yGT6ch4H4yUNRNUjg7nXxrxQ7yEUO9DyQJmqbjxz3GojYNhecf+yu9DyQkOW4nxohLJOc9QwO0.2JROlikdg0Prz7CwRA5g0SItlzOeHdZqD3oW76+q+qD4IAUddh6Efj80jhKbF4I4wvSBjrwSxmq7jbpHD4SI+IkwvSe6gYimTNW4IkTwSJogmlKEG1kiib43HK6TvQMbowC+PCylRk7myQWppASBmnsDd1.Q5718Gj3DdRBDG82e+dYYhE8rCTKRnGVSSGU2zAyxiD+g30Psgt5942Nw0+973Lre52tM30Oc8sexlugxHA4DplF6C0YfrMJXEBmZdA+sC9nXCEeT73D8oznQhZ85vMRThej.7J1HQv2J0OXnwfsqtQRtm6MDKulJ6fLov23pg9FTUy6dHvuTy2cuQyzzCyipYT26j7ruSIusAY58Al13ujdVJn9.QwJJIIsV40jDhExqnhxxKWtrhPyNgkUPTZkUWcUYokGvfEF1fWQkfNhDJ4UEKKu5ZR2pTo0Xe+Y1TRf+3F8GEzwFuDosuI+bjQ45LlCrjblghXy2VkmMusGTimxn1ThpA9K45P0AlJ8M3gVC5ApHMLA5cfkbyjJ7EKuSGwSeQ.783..FlPpK.vEKX7i3.2aeU.3NMR20jMrWb3PdZsmJCiOB5+xui2v1Nvv9eljoMY1w5nAYGP2ohc3icV8WvwNkrBXG+T0cA3Qt7nf1bj9PikHvK.nsxnf1aOjCZKeQ.sUismhPDzTaF.sfjXdAfs03v16zTS.a9oH8B.Z2hCZumjDz3R.64E9hmE2H.Z8qTSbb0K8tWDfiemMfE+Vuy2m85m73SY.9wjfO8be.tktIjPWedeZPcd37SD4KhGoTkFgz5uVMHOz9Ic9SD8ivphs4gNzP2hBRJ+kY4YHdtBYk9m9vWmTFD+au6CdE6ks6bein2Wv07r2QZCZfb9GtZ9aCH1tnazuJuusc6QTI6sA6LTor2Xqu.CW2VvCnwFRPrKJPrJejKCpt87jQoXg2LPbe+wudvQh2qqlPBZmX9+iX8u8Wx6enp1CdD6UQlOf4nms4thaiMPP6Br0oJvbpKPWUnv5NX1eELIrPiW4RCyL3+1yzjTnpq8AnLcPhKKx9dRoC9CcUAliUiqNjD+VLv9fhBpfEUN+0Efck.LnQqGKJ9yjq1PZg6mJVGSZ0MY7doDvqfvYNdCtnHEE8+nJi.6rha8yNo2JjjuzJklzsBYtvWuTC1RSzt2mzFzigGT9tX49whxkWJ9uC1k9OsuN6OuUUumEpfgNaiZS3IXVY6EO7VAgGPKnNsO3uSOaadXrh9p+gpmuZ+lbE0cowZ6.6YQOSUG9WsF28KRU4OWVcOjla7qWz5tDyNCbKj7tsQ0LrbI7ktgM9fXhxN4M2gQyMS7QoYR2nTBNI6Y5xVjdGH8XgrUDnKM0ftFZKD0Gwv.oy9LTxcI1ahw+4Rge.CMPFZdO7A5ufJkXOmKnRovJOW5idvV1lOuUvWUD0k6JdkPsaCubLjWbG1yf9uWUFePOsO94sZwlF7EzoPIKgblkPIyRTNyRrblkXkLKwpYVh0FiDrqhFaFPO+EEoETeS+cmysoAKDCuo5B+WX6+EIJ
  • Stereo - Left - Right Channel Selector with Script FX

    5
    0 Votes
    5 Posts
    453 Views
    orangeO

    Ok, now it works perfectly.
    Now, if we can assign a Mid-Side Processing to this, all of the spatial process will be done in just a Script FX :)

    HiseSnippet 1550.3oc6Y0saaaCEVJNJM1cYXcHEaWrMHTrKbVaGrc9qCAqUMwNYFKN1v1KcECEFrxzwDQlTPhJMtEEXOB6EX.6kXWsa5ivtXO.cuA6MXiTR1hRQVQJsInnXBAwl7vygemyg7vOJ2xhnCssIVRx46N1DJI+AJcFioC2YH.gkpWURtfRi5Uuam5UqIs8XSfsMrujrbt83xkyOuj6y+7fsAF.rNLnKIoCIHc39nQHZPusz9djgwtf9vtnQBidMs55D7NDChCCK4TJIYBzOFbD7..eXyoHIuPs9HJwpCEPg1RxyuMo+3NCIOC6M9CQ1nmZ.4MJK0gYHut2kXzmiXduR6LDYzu0De1VRRVoUPDHmWDXYkFn9no8GDI9HWApAZHFOjmKI3UVDdkRO7jEf27dv6FJczsPlz.Ibrcck5XJzZ.fkBDgk2Xkj+CkcHrAfoe8HvwvcsXMlpPwMJU5NpkKUZksF3f0oHBVkfOfPgMwEWovKJjuvKKDUxfAwIhOIVDCCnUbR4obqDTqH1YzSgV2Q8DfgCbx3Xdd3PqxrCshYdcOGVXfDbcLh1zDhmU.WxOJwB8y6CJ1PotA9OzOvusCkRvRHV7MuhWixRtHlAMY2UyYP0JWbUW8hq5ZSTMXCrzOTuJfB3K57CBr.iIzhh3wb4pvSX6l8VBlWoJz9XJwzMJMxjf4gL4BoHNc5zoT6IZiCl+GpQgmxrwhJc5VqcslROC0mNLPdWsgPzQCEpjrklEnOhrmEwwbZuupkl4jzYc1D+I9lqWilGzr2NMO3vZsYcvJtXwpqvV+6OH12fjd9qD54iboL4aUD7sewJNeaAk8qsa2qRO6yU1GNf1iUBCigFuY92ph4tSiy+tlR6568cWoN3Wnzla52Nd3ZBd3qQwmA4f4pMC1ffIyz+N6wCrCoH8cL.zvmbwOt1W.qjaniH3mCfsQzwhUCtTNNKsv8FJsPT8gwi24hAurhVW130mbvRJ0FL.pSC.67J69iWTl.wSToTJYBTveoLa94.YVqmhgNvb+dNE1wi1T1IsVpwV8S8aUmvX3HHc59nh2J1QeqU1ZoBAVLg0ryztInSDqmPMsYZ8DzIh0SpfxLMeRJ4Z+ojcLsfrM3vtjVFfwEsAiLMfsYKTti5SMH5G2A8b3YHH4W1Xa9.Jp6MI1qrTgWrTg7nAEiMivA3g7y3KtBajprmW38A+YhM9oROQ8qTKuULRJKJ4kde3McIjnR8jd6PSz8uenl2NzPCCAOXv+OCIIjTSMRBO2w4uIkaS2zDwEKILMr+VJCLgUBWZYwzUZILuW1UqDWCJ1cvxr.RxSwTv.OKy5Xpc1l3PQ3iZ.nVH14p27.mQcXWtSG5GI4D4kKvos50tzDdrcf39tM9W1iuvx71x9BKGQXkIs4BqDQ3phBWMhv0DEtVDgqKJb8HB2PT3FQDtonvMiH7dhBuWDgeinvoMx3sRlEe1LeagjIeb1aPjJSlDizLivyg+WX68FeAmExbHOfPozlhDJUiif3O2J3RPtVKD+0EtfooS49+uxL+X9WtF6KIM0K3ZqTOwIkLC78RgtNzmokL.31Lk.3bR+AH32dd5Qv07LZH1eK6st35JOBbBz8Ej4R45ltsGPrFotGDCs3zXKmvqI6OS6qIyL0ulrl5TFD5ZAv1lDaXYQKGQVk.YKpUERcvgGtWWUD6h6d6xbuxhpNoyJha9aAvBC5wuh0VP9i0ZfljMz96m+WOnFFvNnpCj4M8aZqybVdrKjAcLrgOheSKA69ZgtqH1sbtKCR2ua+1Au5t8WtzA2y4ZK4mfwNHNq2Z3SfFrBvtX7iYUbG.bLnS5M71HdQIygDLRWb0YaHiawQGACstIVG5gTJP+3fdVVqMz.BrE1Z8kZ6ivPfEKNAufwhxoOVjT95SU7fqJeuu56G2ZO26Q2Z+xXGJq736.Y5Hb1Uhky9buQb1++6E7V7dAi.5Vjd5d7j4kXVzsGV9E69ylkWoAus5zeeB9ZfQrio5oqy2CbW1pf30nRl0X0LqwZYVi0yrFajYM1LyZbuDzfyI3gNTxHu80rNZUy8VHxxdTfb2hK8evApXg.
  • Rhapsody In Blue

    26
    6 Votes
    26 Posts
    3k Views
    d.healeyD

    @ustk said in Rhapsody In Blue:

    @d-healey strange, I thought it was because of Safari, but in fact, it is because of my provider, I am not authorised to open deviantart 😵

    :( that's terrible.

  • Stylizing build-in elements

    3
    0 Votes
    3 Posts
    401 Views
    gorangroovesG

    @d-healey Thank you so much! 🙏 I will check out all of those resources carefully. Hopefully, I will be able to make them work :)

  • Parameter Modulation Within a DAW

    3
    0 Votes
    3 Posts
    432 Views
    J

    This fixed the issue 👍

  • Setting up loop points in the Sampler

    3
    0 Votes
    3 Posts
    296 Views
    LindonL

    @d-healey you mean in the table?

    Edit: nope just in the sample editor - strange I tried this 5 times and it didnt work but as soon as you mention it - then it starts to work....lol

    Perhaps it ONLY works if you have the table open...

  • Comparing Values

    2
    0 Votes
    2 Posts
    292 Views
    d.healeyD

    @Jay said in Comparing Values:

    Let's start with this

    if(value) bassfreqPnl.set("visible", true); else bassfreqPnl.set("visible", false); if(value == 1) AnalyserPnl.set("visible", true); else AnalyserPnl.set("visible", false);

    You have two if statements that are both checking the same value, so why not just use one?

    if (value) { bassfreqPnl.set("visible", true); AnalyserPnl.set("visible", true); } else { bassfreqPnl.set("visible", false); AnalyserPnl.set("visible", false); }

    But we can make this even better. When value == 1 we are setting the two panels to true and since 1 and true are the same thing we can get rid of the if statement entirely and set the panel's visibility to value.

    bassfreqPnl.set("visible", value); AnalyserPnl.set("visible", value);

    Now let's look at this

    if(value) midfreqPnl.set("visible", true); else midfreqPnl.set("visible", false); if(value == 1) AnalyserPnl.set("visible", true); else AnalyserPnl.set("visible", false); // Comparing Elements (Buttons) to close the AnalyserPnl and shuts off the Btn if(bassfreqBtn != midfreqBtn != treblefreqBtn != presencefreqBtn) // not equal to //if(bassfreqBtn == midfreqBtn == treblefreqBtn == presencefreqBtn) // equal to AnalyserPnl.set("visible", true); else AnalyserPnl.set("visible", false);

    So again those first two if statements are unnecessary. We can rewrite them the same way as the previous part.

    midfreqPnl.set("visible", value); AnalyserPnl.set("visible", value);

    Now the next part
    if(bassfreqBtn != midfreqBtn != treblefreqBtn != presencefreqBtn)

    When you want to check the value of a button you need to use the .getValue() function. And when you want to do more than one comparison in a statement you need to use logical operators such as && (which means and), || (which means or). You can look up javascript operators on the internet to find the complete list and their use.

    There are several ways to rewrite the if statement above but I'll just show you the way I'd do it.

    if (!bassfreqBtn.getValue() && !midfreqBtn.getValue() && !treblefreqBtn.getValue() && !presencefreqBtn.getValue()) //Not equal

    However I wouldn't do this as an if statement, because all you are doing in the if statement is setting the visible property of a panel which is a true/false, 0/1 value as we had before. And we can get the value directly from the line above and store it in a local variable. I'm not sure if you want it to be be visible when equal or visible when not equal but if you want the opposite behaviour to what I've put below just remove all the ! and it will flip the value.

    local v = !bassfreqBtn.getValue() && !midfreqBtn.getValue() && !treblefreqBtn.getValue() && !presencefreqBtn.getValue(); //Not equal AnalyserPnl.set("visible", v);

    We could drop the local variable and just put the comparison directly in the .set() function as the second parameter but I think it reads better to have it stored in a variable and might be useful if you decide to add more code that depends on the same value.

  • Viewport esthetics

    4
    0 Votes
    4 Posts
    393 Views
    d.healeyD

    @Lindon The list is dynamic and I can change the number of items and their labels with a single variable in the panel's paint routine. The controls (knobs/buttons) for each item are manually positioned in the interface designer but it would be possible to add/position them dynamically too.

    Here's the code for it (including the styling)

    //GUI const var pnlArticulations = Content.getComponent("pnlArticulations"); pnlArticulations.setPaintRoutine(function(g) { reg text = ["Live", "Sustain", "Staccato", "Releases"]; for (i = 0; i < text.length; i++) { //Paint background if (i == Articulations.current) g.setColour(0xFFDED7CA); else g.setColour(0xFFCEC9BD); g.fillRoundedRectangle([0, i*55, 316, 50], 5.0); //Draw text g.setColour(0xFF000000); g.setFont("Arial", 18); g.drawAlignedText(text[i], [10, i*54, 316, 50], "left"); } //Set panel height this.set("height", i*55); this.data.numRows = i; }); pnlArticulations.setMouseCallback(function(event) { if (event.clicked) { var value = parseInt(event.y / this.getHeight() * this.data.numRows); Articulations.changeArticulation(value); } });
  • 2 knobs opposite direction

    3
    0 Votes
    3 Posts
    426 Views
    JayJ

    @ustk yes, thanks

  • Unable to compile HISE VST plugin x64- VS2017

    3
    0 Votes
    3 Posts
    438 Views
    gorangroovesG

    👏 👍 😀 Dude, that fixed the issue! YAY! I can continue now :) Thank you so much, @Christoph-Hart !

  • SliderPack Resolution in Compiled plugins

    5
    0 Votes
    5 Posts
    475 Views
  • noteOffDelayedByEventId time limit?

    5
    0 Votes
    5 Posts
    389 Views
    ustkU

    Working! Thanks!

  • Knob.setRange

    4
    0 Votes
    4 Posts
    514 Views
    JayJ

    @orange Thanks buddy, you are a genius

17

Online

1.9k

Users

12.5k

Topics

108.8k

Posts