Modules in 2nd container not working in exported plugin



  • I have an effects plugin project where I've used a separate 2nd container away from the main one with just 1 LFO modulator on a filter inside with the container output turned down to -100 just so I could use the filter LFO display animation to show up on the GUI.

    (I'm using this because I'm modulating the gain from a simple gain module and there is no floating tile animation for that, so I used one from a filter and linked the controls to match so it links visually but so the filter is actually muted)

    It works fine inside HISE but the animation of the filter LFO in the container doesn't move in the exported plugin.

    I first thought about putting it on a send effect but then realized filters cant be used as a send fx anyway, so my best option was to just put it in the container and turn the output of the container down to -100 so that the animation works, but it has no effect on the signal.

    I can't think of any other way around it now though. Any ideas of how I can get this animation to work without having to hear the effects of the filter?



  • @SteveRiggs I think it's because you've made an FX plugin that the container is ignored. Try to export as instrument just for checking, if it works, you have the answer 😉

    I can propose another solution for achieving what you need. You can use a timer panel that is updating a slider (or anything else) every 30ms for instance.



  • @ustk Cheers dude. I had a feeling containers might get ingored the same as synths do in fx plugins.

    The timer panel sounds interesting? How would that be achieved? I'm not sure how that would work as its actually the animation I want from the muted filter of the line just going up and down. Can that same moving line be generated for the gain modulation then? 🤔

    I have the intensity amount and smoothing of both the filter lfo and the gain lfo linked together so that the animation changes properly when either of them are moved.

    Screen Shot 2019-11-21 at 18.06.12.png



  • @ustk I'm just having a look through the panels and floating tiles options now but can't see anything for timer panels anywhere....



  • @SteveRiggs All panels have a built in timer object.

    9143c258-3dbc-474b-a6dc-2014801150ee-image.png



  • @d-healey Ah cheers! I still don't see how I can make a panel replicate the behaviour of a floating tile attached to a muted filter but actually running from a simple gains lfo lol 🤣



  • @d-healey @ustk

    This is how it works in HISE and how I'd like it to look. It's linked to the muted filter in the container though. The actual module changing the sound is a separate gain lfo making the volume go up and down, but the controls are all linked so that when the amount is changed or the smoothing is changed then the moving line reflects the same things



  • Ok so after racking my brains for the last week on this, I've thought of a possible third workaround making a filmstrip slider (Knob1) to do the animation and having that linked to the lfo modulation (LFOModulator1).

    I have a similar thing in another project running gain reduction meters from the dynamics module reduction that works perfectly so I'm trying to adapt it to fit this, but it doesn't seem to work the same way trying to link the slider to the lfo modulation.

    I think I know where the problem is in the code but not sure what I need to replace it with. (I think 'GainModulation' needs to be replaced with something else. I've tried a few things but I'm still stuck 😞 )

    I'm basically trying to get the slider to animate up and down on its own so that it reflects the behavior of the custom table in the lfo modulator (so frame 0 on the slider when the custom tables volume is 0, and frame 128 when the custom tables volume is all the way up)

    Heres the code:

    const var LFOModulator1 = Synth.getEffect("LFOModulator1");
    
    const var Knob1 = Content.getComponent("Knob1");
    
    const var t = Engine.createTimerObject();
    t.setTimerCallback(function()
    {
        var v = LFOModulator1.getAttribute(LFOModulator1.GainModulation);
        
        v = Engine.getDecibelsForGainFactor(v);
        
        GainModulation.setValue(v);
    });
    
    t.startTimer(30);
    

    Snippet here if anyone can please help...

    HiseSnippet 1229.3oc0X0raaaDDdoj2Fa0pzjzbnGIL5AEzTEo5eZKJJBskrBD7ORnz0oE8P5JxURaL4tLjKkqRP.xgdnOFE8InuR4MnuAsyRRQsLQw1PMoHlGHzL6Ly9MyN+rT8CENznHQHxXsimFPQFeD1dJWNt0XBii51FY7Y3ioQRyNhPyc8holGv3vqN8Ls8XtzPyc3LeztSCHQQTWjgQ4GnzzXsUPIO+882k3Q3Nz4rPnSDLG5ALelbN29V6y775PboGy70jdSqtNBdKgmHFPYYbCT.w4TxH5QDkXkvHiOXOWlTDZKIRZDxXkcEtSsGKNimJ+IrH1.OphnIxFLTJ6NBOWEhUbQsFy7b6OKZDg.qzedrobZr413CYtrb9yiQ2HYAy4ZnGOLJcdvqoN7Zb4gmgF7VIEd2Da6DxBjyWQgsOD2kKogCIvQfNrRkEUpUIbKAHAWV2mbJsSHPjqQssaz3tla0nwc91pUpV4d2qZE3v.RGlPBUIAGJbi8Hfy0z76LSRbpOhJ2a3Ppir15EDX8TSLW884hAJ0ls6fhsD9ABNPTa8jUeMcjf76wGAof0cBoP7TkqD1aviU6mRXY8HpLgYKhm2.HSo1vXtijI30tS0JOqZES3QYpIfoJ.PE.1QJCYChkzZEWRkSmQBVRsQJyjYr4XBrPapCa.0KBpWTJ0g3.Fn1jhpTzbJHeBApsRE64oNM3IRRXpuTaijCfYdhofejPR6AtTkmUYsJOuh4qtzvgKbMUrNT34AlbQKmtYmih03w9Cng2Ehf.dyEDRAKliiey435kfNoG8ZBJ3c4LYu.J+Mk4ixxWfZfRYnBDUlTAb8rJfzVSHFjneMbRlDJAv58fP4JuRpxUyT9XhBoJcWEm76EnrKQRPFag2X65Eelz6r8eb8OW8yuoUBM7ZnNMB8CcaqTGJBybEv8BngRlJxYzlNAZNlVQuFtMM5ToHHwWypMfn6E5s+ZNXew.qo4Dl+hUjjFXyd5Luw5kO82tORy1W6BCFZ19.Ma+hSsBlcL0Ej+iwEJgPmwbkiyk9udh0XJaz34C.9CWKzq2SC5rNyD5saKV.Unulp2EOhImpOC5cRO3KKbuItOS5Ldw3szBvqJ09cLdylnUEm1qdNXWA24GW1wWKd5ZiKZ70p427f4G3QevLnTUiQyy4JFHTapGoP76gER1P+j0BtDRW9DnnquviD9pQ+xEc4xWNW9BtDw4mhnbIy+KozKOH0OKtdJHwph2Dj8pkwWHt5DReRLk6nw71Vpq00svQ1CISnCEg9YM5x3+oVGPGAajtjGSglSvcKbz2EaegPNlwGocYQqW9m+t0ABQvdbUmJWc46OlDolJBiZ0scq3HoveFVV1N51PO0jV5F+Ld6MqWb8M581gF816.uzkLq7STm8l4mxpzy2ya0lh37Tvq.H9V3jlWlWYllcKbRy0qN.9F39D96Av86EwRng0gD3SLf6PgOJ12F9lVGJ.UNG9jAfmQIUSoT5FJZEfrob2Dh+AdxVroh1HawlyV7+k8vm3DJdjS5smUsSVMgC327juHeM7gJZy7qMiwMp2.4Ceg7ibbT2v3Kf3yh04KWBc1XIzYykPmsVBc1dIz4qVBc95yUG0eNwNwvftz7efQ+8RmWYjOpznL5eAj9CDyF
    

Log in to reply
 

10
Online

556
Users

2.1k
Topics

16.6k
Posts