• Better Table editor

    4
    0 Votes
    4 Posts
    450 Views
    lalalandsynthL

    @Christoph-Hart understood, thought i would put the suggestions out there.
    Isnt the c++ code in an external tile disabled when the ui is not visible , seem to recollect we had that problem. Or do you have in mind that its just a ui object that then runs the underlying default table?

  • Link tables between scripts

    17
    0 Votes
    17 Posts
    1k Views
    d.healeyD

    @Christoph-Hart Any way to do this yet without resorting to global variables?

  • Load from Purge

    9
    2 Votes
    9 Posts
    610 Views
    Christoph HartC

    Alright, I've added the feature using the first option as this is most convenient for the standard use case.

    I've also thought a bit about the option of purging only a subset of the samples and I added a function Sampler.purgeSelection() which you can give an array of sounds and it will purge only those (while unpurging all other sounds).

    // I'm pretty sure nobody knows that funky function... var list = Sampler.createSelectionWithFilter(function() { // it will be called with every sound as `this` object and you just // need to return true if you want it to be included in the list... return this.get(Sampler.HiKey) > 72; }); Console.print(list.length); // now you can purge every sample that is mapped above note number 72 Sampler.purgeSampleSelection(list);

    I'm curious how it will hold up in a real world use case, but the only problem I can see so far is that changing the purge state of the sampler will overwrite the "custom" purge selection so you need to make sure you call this method and restore the sampler in the correct order as the information which selection must be purged is handled on the scripting layer alone.

    It might be one of the things that I'll regret adding like the Ghost panels, so take this feature request with a disclaimer that I might remove it if it becomes too annoying :)

  • Time Stretching

    36
    0 Votes
    36 Posts
    6k Views
    B

    @d-healey Excited to see where this goes. I've done some experiments abusing the timer, here's an poor man's old school timestretch:

    HiseSnippet 2440.3oc2ZssaabbFdWKttgzwEMoBEs2MUn0cYprDojkRRUULsN4HDqCQT0tWXffQ6NjbhWtCwtC0gDHffhh9Zzq6M4YnnW0K5KQAJ5UEn4Mn8+elYOQtThV0IF09Bat+Gl4a9Ouy5CiDdr3XQjkc0iuX.yx9scZeQnr2l8n7Pqc2xx9tNRdeVrLhI85YswECnwwLeKa6YdLJhc0JVp+7MObCZ.MzikQxx5oBtG6I79bYF0Ca8I7ffcn9rigENi9CZsqmHbSQfXH.mYbZXMf58BZW19TTra4XYe6s84RQTaIUxhsrqrgv+h18DmEpk+o7X9IAL7glVsgERSdGQfOhXjp0l83A9GlbrisrrcNLyHLi1HLqydbedJ8LiwOPwfjoQd6g8sJBuYJ.ul4gWibvqDHYmCRNZH8NNs8h3CjYbP7bGmcCkrnNTvrmGJ6Ore6.tOK5PvDBPww9VfEVuBV1+EmMEfZgxE5SeAamH3gzkwc0FMlm.+U80pUqyvPOIWDRDg6KjrCBcqW6KqUs1k0HixpSmR4gaTjHHfEUJaLBH5pTzMbX+SXQySNkFLjkJH36KZqclrsNenfm9bmSPQ3tgb4ACXgSJ.wxXrfe8a1cKpjhNHCMPtArHIGgf8VrSgncs6ppyVr3WHECf38LeYEMSHJR3OLfJKFZg4SFFfMnf+DcOgwb4E4y2FMdqxzEuc0oCSKbeGmC4PAgxw6sJAufU6aa7Zxduqy1c5v7jYfshyN+1qLUsxzE9L8P4Gl.kGMzmKdh.CSTPYVMEBRhbX.8BVTyIUUkr7e5eLsUUsl5ppP8cOvswxGJo7kGGAEK3gcyy.g41gTvV3mGAGIDRLsOkVqOsUaZ+AALvhFIgkufzrSYQwEWgc3AlB6+Bms+UOGLceN3xhe9wa7wOeCFUR1fJkArmCtGobgynmZ0GsKN1nx8omi+rxezxJ..nZOS3EnPreBe6YtQEJx6oO.P+ob1YYzJsnckWC8QZN88QpbU8QtqywSnIuomws9muaZSiXl7YbeYO2UVF6Rji7Gy3c6IcWQ07XwEeLSRnpnczoPFnh1qAgiwRnddDIM2vjGPVmnF9XgtLohmNjJEptyMdtyb5sBKhShUhSDc5.XIlzQDQDfuKfNX.DVaXGWKhk7aUfySoAvF2XsRnuDvXDI+kiPXwkzG0Hv0Rh4eAi31GRD4wL3b5GWWspcQtsQlqSVogRg1ZaMg1WLLTRbg5CdfUDF2QqhwW7n9RPmlKzvbJgtzPmPxIWPNqGGTWJH7PuHFMlU73SfEj.KQDuaWvniKIOQ60y.z6ksOY1QHcEfztaoMUpm10uAhi0xSoolhhTDTPHDJH.jV0XJy8nIVP1KAjQPjMwsixBfT0QIcfZBDZnOo63B2IRzGnAEF3P3Ci5WOm+RIw5jsC6xCYXziNv4HfracCB6SCGpN6xngLEjvhXJTZBIiLE0.YRhoo99eRn3D24hPFyMOAlMBCtSDEC5cmSxNWB7lKcAmaLQ5CEbQQdB.PZz37giz.ze.x.N6w2Bn3Gv5AkvfdNv3Cd.dL4gAvxmeJpDYSllxSzefHDNY4GnJmuSQbsZWBKVhI.rlalnUhcnNt2l0bSZPvIPiC2w1MDR4hzyhvIu.roj6kBTi82DJVl42rFn0YYiKvHcQOPhbixWa9ZrPiliwQY+VRayGQGeen3i.FiAvXlionPF+59hn9z.vA5eX5wbLT3y5PGFfUMFlyQWhayn0U503cb0gzquNFQWuVUfXUPkXQ.agAQP1tqV50.5EJmX7xUurVUV.T3H2R0gBDLqkGMvCGtiYrpXpDpy0VGo53UQGM0LdGQzdXcx155jtIKZcrf5ji+RcvkGAVzvoaMrYxwHM.ymAi66isD.qsJx2ssnOS1CIcF75PcqOlSYbigwInz+ifxbFqVAK8dTna1.wYtP.172W8D8jXkN2OIsq9hMAt0IuW9hYKl6ghdJ098qml86+4sqjMP0IB3eIZY2SWREZyR8+7gwRz7AMjFfCSZxo2KopatT5MFJkhPL0C4gYeqB4zMwbAs3Eyo0zlq7LEMyqKQ4mZdpp5.UMsUfJZGSOROviHftWAxexgjliwDhHK.v5iNqP4EBSypvhekUNLU.v9r7GZJHVPqhlvrcbtxEb71SkIjpH5RqLAt5BoMl.TFo1mZUJweVPyqzslelpjBZE2WudzvtLeUYqWm0rx7VSHForCsNT4X83aD7J3hFOPAGh1Lgm5lTx.MNRnT8pfQGbB9lUnUHunHRT+HEG44tINTJKpLeTIhkTKj3N5X0vb0lxT4lhTOiO91.3vBOiK6oT3.0bqtMmWURFJHrz6O+HCaqakM5n6iMg9z63VarVliugY0dG678QjFj6cuQA.TbdkFMdC+fu5JqjdDK6ko9+6C9kS3lO2CdOTXxtE3cCEQrswSnqZ5KPKyHzIh.XA0be08WpdKjpuLyYMEUrJY7sbSBVnscxXn.nTUfeI1BchcgRG7X0+dzvvPnkuacLOWcfvjgjdm5lmo8be0EM7JObnZw5h3xnuW5TiRc8L.4xGtI1iDe9aNFjKqMoOCvHqfXf4l9GqQqoZgAfPuHbYhUqCPNmQBj5xWCeXga+p5CKbM2cb5GYvthAgfnR0U188MWYmdtYKNrHukiNrxRg97WXq0jzV+8fTZ+8bTuF+nJ+oslFkq5XJSUP8uZ1u9eOU68cbRChJr.+4+1+5YstQefEzfYl0xx145MY5qN11x5B7G0f8FGSFEPOqN5KRWupWqQ77jKd9hzamtvEGjYeOnkditiS5EEouT6p210bq3pK1t5sO17XxsBMhCNEc0lBujBe+toAeeyCiG1oC+bLF8ma0W8IB9QNkcyFV4mlO+BnONU9xY+5G+2+he+C0GmzuPwzYXyGgn.+ev95AekuxXbeamrW1Iw59SJZc+qlGK+P7gs9t6K18p4KDWMAis4Xk0sCOkE.YMJL9tPZh5TlPcoBnbOQnXPOQH2q32qwT9NO1K8.8HoDd0gLJy15HV.dYzYj9YszuT4nexouU+JGk5u9wNZ3RvlCj2L9Rqy7FzWZ8k.JGIFh21zdTHPEqQf++cPLDJOAHILDlRK4+xClmajT9nMKzW8v+A9igYS7YaCylIL+NYO5S8hDelmtsIFK+VJJv4NT8sQqB8jfmIMS5U53zXgFXQP9m44gl662zxpbcV5Fnyx2.cdvMPmUtA5r5MPm2+FnyGbk5fe21GMTJ5qSEABGtsZlEa6zuSt8LV+WzjHKyB

    Works alright (for samples shorter than 65500-whatever samples ofc) and I managed to build some other variations for detecting and adjusting according to BPM, beatslicing etc. Pretty fun for lofi and breakbeats but not really for Hans Zimmer stuff lol.

  • 0 Votes
    32 Posts
    5k Views
    gorangroovesG

    @Dan-Korneff Are you referring to the regular GM hats open/close/foot or the variable hats?
    My plugins utilize both for compatibility.

    The design I came up with for the variable hats is unique to my plugins, and they work with e-drums. The basic principle is that there are 2 notes: one for the hat tip and the other for the edge. You use CC4 to control the openness.

    The way I accomplished that is by having parallel samplers: 6 for the tip and 6 for the edge. Each goes like: tightly closed/ closed/ 25% open/ 50% open/ 75% open/ 100% open. So, by operating CC4, you move between those samplers and mute notes in others that are not within a specified range.

    This system is not 100% compatible with e-drums out of the box. They still need to set all of their tip to one note and all of their edge to another. I made the system that is the most practical, in my opinion, and can work with either e-drums or keyboard controllers, as well as being able to edit things easily with a mouse.

    I'll gladly share the scripts with you if this is the system you want to implement.

  • get/set sample gain and pitch tables

    1
    0 Votes
    1 Posts
    185 Views
    No one has replied
  • ScriptPanel.isTimerRunning()

    1
    0 Votes
    1 Posts
    88 Views
    No one has replied
  • Saturation modulation

    5
    0 Votes
    5 Posts
    219 Views
    d.healeyD

    Looks like the poly shape effect will do what I need.

  • Macro Control for ScriptNode

    14
    0 Votes
    14 Posts
    353 Views
    d.healeyD

    @toxonic

    But won't I need to use an inline function for realtime?

    No, and also your UI script should be deferred (non-realtime) anyway. I think all callback functions (except control callbacks) are non-inline.

    Yeah a loop inside the function is fine. You might want to reverse the order of controls in your array, it seems strange that element 3 is knob 1, but it won't affect the functionality.

  • Can we get a Compile option on windows

    7
    1 Votes
    7 Posts
    224 Views
    LindonL

    @d-healey @Christoph-Hart -- ignore me then - back on yer heads...

  • drawAlertWindow customization

    1
    0 Votes
    1 Posts
    69 Views
    No one has replied
  • Amend the "Something went wrong during extraction" message

    3
    0 Votes
    3 Posts
    129 Views
    LindonL

    @d-healey said in Amend the "Something went wrong during extraction" message:

    @Lindon I always do a check before extracting to make sure the user has permission.

    if (!dir.hasWriteAccess()) return MessageHandler.showMessage("Unwritable Directory", "You do not have write permission for the selected directory. Please choose a different one.", 1);

    MessageHandler is a custom namespace I'm using.

    yeah nice - but here the application is using the default extraction system. Not my nice (I will check before you do it) installer.....

  • Scriptnode Zoom level - Component list Colorcoding

    3
    0 Votes
    3 Posts
    122 Views
    lalalandsynthL

    @d-healey ok, :)
    Removed from feature request .

  • Scriptnode Temposync/Unsynced speed.

    3
    1 Votes
    3 Posts
    160 Views
    lalalandsynthL

    @Matt_SF Oh ! cool. That was stupid of me :)

  • 3 Votes
    24 Posts
    2k Views
    d.healeyD

    Am I being silly or is the favourite button state obj.buttonState inverted? Aha! It triggers on mouse up not mouse down :)

  • Element groups for saving in presets

    2
    0 Votes
    2 Posts
    256 Views
    Christoph HartC

    I don't think it's a good idea. A preset is a single state that needs to be recalled on various occasions and adding another abstraction layer on top of that will lead to issues and regression problems pretty soon and the possible use cases are way too broad to be covered with a "hardcoded solution".

    You can achieve this kind of customized loading / saving with the pre / post user preset callback where you could remove eg. all mixer gain values if the user chooses to do so.

  • Native SVG import?

    16
    0 Votes
    16 Posts
    2k Views
    d.healeyD

    @Steve-Mohican said in Native SVG import?:

    @Christoph-Hart that's amazing thanks a lot <3

    BTW if I understand correctly, we have only draw path option in the Hise SVG to Path converter.

    Could you add also Fill Path and Close sub-path options too? Because in most cases just filling the path is the way to go especially for icons, personally I don't use draw path way too much.

    If you add these options, I hope it will be available for this current .createSVG method too.

    You can do this from within HISE. Use the function g.fillPath() instead of g.drawPath()

  • Feature request- multi out in standalone app

    1
    2 Votes
    1 Posts
    212 Views
    No one has replied
  • Prevent loading hxi when using encoded expansions

    2
    0 Votes
    2 Posts
    270 Views
    d.healeyD

    Never mind: expHandler.setAllowedExpansionTypes([expHandler.Encrypted]);

  • This topic is deleted!

    9
    0 Votes
    9 Posts
    53 Views

17

Online

1.8k

Users

12.1k

Topics

105.0k

Posts