HISE Logo Forum
    • Categories
    • Register
    • Login

    FX Plugins and child Containers

    Scheduled Pinned Locked Moved Feature Requests
    16 Posts 5 Posters 1.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Christoph HartC
      Christoph Hart
      last edited by

      The problem is that the exported FX just renders the FX chain (and the MIDI Processor chain if MIDI input is enabled), but no child sound generators.

      Like if the APR is only sending messages everywhere but in the processors that are in the same container...

      Yes this is intended behaviour. Sibling processors will not process artificially generated events (in order to prevent recursive loops).

      The solution? Scriptnode :)

      HiseSnippet 1551.3ocyX06baTDEeOKsIQxwD6PXnfFMgFmgfFKGSBLTXY8gyHrU7gOGi6xr5tUR6nS2db2dxVIPETPG0PAzBMzSW9CfLCyj+BnjtPCEzDd68gt6jTDxNewUn412tu2626suuNo5v0ottbGjRtCFZSQJWDqMzRzsZWByB0nFR4MvMItBpSg.RUFZSbcoFHEkL2VRPIWVj+yS1rBwjXoSiIgPGxY5zcY8YhXppk2gYZtMwfd.qehSuQ4F5bqpbStGfmL30P1D8djNz6PjGaALR4b0MXBtilfHntvYpvMFp0kerUv4Oj4xZYRkKJgz.AEPFUsKyzPMxVcQHkrpwVdl.K+J3lLC1H5wdfk82nPLGI8AJKjFRYSAoROKHsM2zPJfmA7TlDdKg2xwl1oCi.ZK7lIAkRoQUlY4nJM+NJTUtkfZI.Lsh7UGtIbTgOhdCrltCyVTwSH3VHlgjT.JBIMfX5kJb.MGxXI79TWpHsHvJyjcMSlA0wm8KguiWeMA0Nj1HAjcNEvhXI29X3TX.IDvx9BPqGaBHnLmt.PBbGwNzgmdGYZCwlRM1wh2JFBKNMlWNj4p79s3U3m3y9kwZzO2iBIziHOeFRBHrDdOcAY.cehUG5o+tLGVqqW61lzY4.xFv9kSwtJT4vWDWArh9rC3VzDaLBHY.AYPDDjx6fKcyhvyfhUKVrcsZvqGM.9wbqsNE55PpIWmIFNothQdJ8098prUwhezNf9tgmZv54VeWFuK0pin6zrrIzTwckZ5vOAzzQbol5kRSyJRXELTLzxhZpQMo5xxOyNPXpB4sw64Ir8Du.D0J3lp0gRaNQBKVHKL2B4RRgT2xXBQrreOp35uYOHTHM4FdlxZsIaMH6AFtAimt8XCYkSWHZHYOxSQ+h0lZ+hRSqJ8bB2UvpLgd2oi2ElBdgx9urw6n1a0a2FhHhAaV71G8JtUanuKeX7BneIPtX3xBaeT5trAjQJ+LttUGlEsntCEfVMW66PEGyc5s5UMbsu50J7wKkusmktziWv1gZSbnGvUMICW0kz21DJOJnWuPKn1QOM18oWK+CxmK+WluPBl7wXE4IVUOHh0cxiImdxOzeUKu9snNWufeT8nCNw.Tme9bgbqFVLwd1zvikxFhHCiqk.kwTGApXRSIhXetmfY0oIQ3vNARCkMwg4.glOgVaT1c350hJxoQsL7W7T3IbyRQ0SjaVJZy3YYPg2O92+guCuIurwX3JSRka.tgKrMQVjZnJQzUl9.ymJf3SpSQ8QwomSxQID.3wg5tfeHEYkLRwFMgKNrhW+9RPImuM78OiYHUGV45vIBB31GhSjSK2zM47xAxSZEKDf2yKAzh39v7pA.LE9eqD3O9Hur.dL3hblAdKolSiqEAb4P8gzqI2XbEwCHNcnBeTONQnRfTuMLjQItCZiTINvWl.eaTC+os11IXdogn8rGUHgJNzuwRcKBjXEVmc.0QDTBoIy5vzCHrQ4ljSRS6adb4c4GScF66n1n7cssGmJbV+oOgxHRZe+2Ie90M05QONvmKAeohqgpeBjE65JaBH8YxRxfvDLZTQQ4JnUPF4sVdbUhoYK4DFgPaQrmkAsMDKYfT8ZYxzklVrKIPJQq.nLaqFglvpQWXpVMBMEqFNaRqNpYaRqNlZPXXSYL4DZLkAjxmfRDDGb8mJFdIbalojshxs9eSTb5KDbhKj7utCCyk8Qewedqup+i1LnnUb5SZ0V9aKOYlXxPsYDbcC+mGuYRa4Q+l74cGyVhNYZaI5r+21x+7C+zee0+528skL3Oc7HqmrIZ9SFV+gSlLr9T88q+vokLr9bf2zIC9+SNSjRhd9xeexlye9Kjql.xO3J+xs+i6+0iA4mN7GUeyZONLbQqOmK5BiLDi6H1dNw8xmh5NK+Boty3kZd1EgtaiZxOpCLlvgYRrqhRM5.lNMn2SNbMpaOA29UyrU8I5N76oGLomrVyE7o.ICV9+6c4vMkqKTZzGZgWC5BI64eOcc4z9uO7kBSmm0OC7biy.OabF34CNC7byy.O25LvyGNSdj+ola4I38C9RPffZc+fKEk3gUxf9WvR5Dt9
      

      The patch contains an arpeggiator and a scriptnode master FX with a midi note to filter frequency modulation. Note how I used the container.midichain container in order to process the incoming midi messages with perfect accuracy (it basically splits up the audio buffer for each incoming midi note and makes sure it's calculated with (almost) sample-perfect timing. If you don't do it, all messages in a buffer will get processed once at the beginning and with bigger buffer sizes this might lead to timing issues.

      ustkU 1 Reply Last reply Reply Quote 1
      • ustkU
        ustk @Christoph Hart
        last edited by ustk

        @Christoph-Hart That's what I thought. Thanks for the scriptnode hint.
        This means we will never be able to use global mod in FXs...

        What I am doing with the ARP is triggering a callback in the main interface script (via component.changed()), another solution would be to call a function.
        Is it possible from this snippet?
        I just tried to link a parameter in scriptnode with a slider in the main interface, but the communication isn't bi-directional so I don't know how to send information from scriptnode to main script...

        In the end, I want the ARP to read the sliderpack indexes. In my first test, I used arp.CurrentValue() which is very convenient as it directly passes the ARP index... But from scriptnode I don't know how to achieve the same thing...

        HiseSnippet 1807.3ocwX0raibbDdFR0qk3ZYuZwZjC4x.dhBqBA4t1qyhEAh5WCEIthQTQYuDX2Zlljs0vtGOSORhdgA7A+1Df7LjmfbIGx0j2f8ZNkTU2CmeH4JOhI1gBPfc0cU0WUS0eUMrWnzkEEICsrW67IALK6OjzehPMZuQTtv5n8sr+HRWZjhE5XDs6j.ZTDyyx1t5WfBrWaEK8m2s8tTepvkkIxx5BI2kcBeLWkIsWmi499GR8XmyGm6zeZmibkh8j9xX.OUIsrBntWQGxdMEOVEhk8CNviqjg8UTEKxxdkckdS5ORdivb9K3Q7K8Y3h1V8ACYDenz2CQLJ0ZuQbeudSi6HKvJ8xxBUMYgmP5x83oxyxFORugSlF4yG1UtK309GGdsVD7pLO7VmrSX.a3PNE7VxSobRZWDUUKhppkCUyiDq8jBESn.LsA90PoObTkFQeDouaHOPsarRIEVbOTjAEIhtl5GWnzvpD1XcxYrHl5dah99bOVn1DeL40wi6qXAIxlwHOpSYLxCInEzXY4PwizFn+U72CLd21kIc.VQFpNlMI5+lLBDLALl2wB4kyZfmLe13QIFXO43Kk6JuUahGS5y9lXFbYOUb4CnbPYcxotJ50rynhgrkKZVizeT7fA92o5qXT+wETuGvtnMwSfnYL+bofkaiDqQrqBFxipnV1+RR6Wzb5mA6tO7+y5A+6q2Ym6gutf4Kc4pIy6qLjWveCd5t6zr4KOF72yi6YVWZ+8XxILwP0nR6slmfd6heK3s2HQucUAucWUEaP.hRgf42m4ybQpoe7hhEZneA4zXUPr5+QlaCR2dG.zegSM3bofRV1+wngNP38dLSqNV43pWwvUuQhgx1A4qeH4HfKMb.EZWlmr1bVqJ+KaRBaaywzqXGFBKR0nwKZ0ZKmOqUqMe050fiEI8YMc8YzvFnDyePqzHky0zPmrG8scbb9MNSM7PFFcAPYuP0ndtSUGsRl9mPuj4ipp+79z2bp5Y.fK74BlyfXgqhKENgLpW+dM3d2t450d650PiglGRhfQy4dzvlkWf42cTZcdkQCy+MNqIPG2nthcqp9VN0OR3wt0otyScfiC+uNXUbEX+MeUsuSiqDL7rMeUJrjhWKUrSEM1r1aqsVsuqlyraMXvB2KohwmEtvswYaBuKEaHhGeIKbKGcUT5AgBmh8qeP45W6Zdpj6fRwQBt5z.Vx56dLnbc2qTBZ2OjnB4CGxBOVTrKRmZ+8+11kkcZcRtm6ye8tHwzyaBDSM0zt+Nj1UzDHl98GsOdH3tSB9gXJfEp3Xpyde10v7mlKhqQ1mEckRF.gUZcKjdKWHdaJt9GzNSRW7UeUmfoIwiz5XLiyguoML9ZHL4Jbo8HcepDqgY5Tu+A2izSFD57GyAAGYmwzr8rp2IRqzNikwBU9IchvQP3eK1UiztYqB.YMUxjkFfnufowvpDyksbt+6y69+x0ctg6oFgsJ+qv5QL9vQJb0SgUCfGJFWNEFurCCJuo5JXn9Bt7hd0b48YvU1WZs.RTXraoWrONba9YwwW.IYC3pUAhTjrTDAsYyWOcOFPuUoe+gxB2MH83J2QKFuUV.dwah+Di2z2m3fACfVrYfcExgu4mg2swd9bWsjJPv+HPJbgZAcJs+SjCDCgFMMcAxcEa+nfWyT2HCupQcunf5a5nI9SoeCBYv0R14xd9zIMhniC7goOUrsbtDFK6JrVcdN6jq36hmngqo4ezxPsOy6utZ4RhyRjWHFlJFda4bnLSZJnxDMaqhE9xdmIiUbwvtTf1Bt5qeKJ3EygI9She7JdErugYcKbMVz1mI7zK92vmjMaiqsS1r8zMyZ4Xk7LSWSj7c3aXA.g.OFQoROjE4PJNI3jdTjwYCBFJPMKKroaZs6CPMZaA.dVndBjYJH1tJZ1o+jCF7Cjhi0ThUHS+9eXJA2VvILEgmAUNXK9tQ4+ALvTZuor9n8qX7fItzQvGXF+aL2iafbgH5SxEQYG4mpPYNvspI+gdtHtdHfqPlFR+eIwZWMi27bZHLgnF0yJD3KP+h8aSpB5s3dvmFjx1vT5wLsNPfMkRHiuFFgvvyzkKtX1WXpK81KlcVkSj2vBm4W5BFOIHXNoua69oMhWak29j+7W7O+1eX69WwtwjxyexCtEtrGEgcKvzlUtoaLrm3JnmQU7AWMxdTe+KwoGRf2CIwPi0AP4jmUu3K84tX3YkqDEsxzUfiu+Q9pcJejuZm7QdZ1XgQtoRrKVVNmGKD.ExIu+PSeuKq.nrOVK+ip4Tc9hSfN.GSUvz8KlC6Kyrr+rvSOl5FJ+RWSeDLwtpVBT1Iz+zrqQ5hqcRGgmPZAyWhrEeoqKNMwuBlDYw57rkPmmuD57oKgNe1RnyKVBc97kPme8cpC9qTuSrRN1LoIHn2A5hKa6LdtpV+GqHXYVA
        
        1 Reply Last reply Reply Quote 0
        • Christoph HartC
          Christoph Hart
          last edited by Christoph Hart

          So you just want the main interface to show the current arpeggiator position? If yes, just use a timer, poll the attribute and change the slider if it's changed.

          If you need to know more specific stuff of the generated notes, there is an advanced feature of scriptnode and this is to hook up a inline function with a single parameter to a core.midi note - it will call this function for each note and expects a value back. We can also use this to store any value (in this example the note number) into a global variable and read it in the main interface:

          HiseSnippet 1799.3ocwX8zbaTjEuGa2lXEbHNUn3.WFxAV4ZCBIHI.EEkk+aJSrhUE4XxdYoZMSKoFMS2CyziiUR4p3.UAeEfODvYNPAeG1Cbl6bfK64ceutGoYjkhih.1cNnZ5W2u26W+lW+68Z0LV4wSRTwDmUNZPDm37xzVCj5da2iIjj82g3bEZCVhlG6ZEs0fHVRB2m33r3cQANqrDw776arEKfI834hHjiUBO9AhPgNWZy52SDDrGymejHrvpuU888TxsUApT.OKRqRhXd8Yc42mgKaAJwY4c8EZUbKMSySHNKskxePqdpGKsq+XQhnc.GGTizBLjU7dp.eDwnTx18DA9MGtuSHfUZlGEVzFEtNsgvWLRddz3plIby0nX7vYgKBd0d9vq5zf2BSBuUoaFGw61Uv.uk8UpfjZiipEGGUKNanZRjP1VI0boFvzZ3qwp.XoZChtBskWrHRuUpVqjDgOJxhhLQmvBRGK0fLC1XU5C3Ib8KrIZEH74wFS7Jz6mF1RyixjcNib05yhQtLEsfAKyGJtpw.s5KdFv322XVBGfUTw56wGj7GIh.alHN2+dRU6yaf2bxnwUyLv1pv1psTmZLw0ns3edJGNrOR7rugJ.kUoG5oYmve.S1kOe6lUns5k1oSvEp9RV0u1Xp2DXWLl35vtITbjRxKLw4r1kp6yzLhyqSqcmJvyIU1tRkN6rC75iNA9IXyMeA72w7.kmPO3Y6OBYL+04uu0lUp7A2C726l1zNdl820nGvkc08lYuU4.zaG+wf2djB8V+w71EkYrFEHKkRdPKd.2Comd9IFS0PuF8vTcTp9OIysFsQycAJv3gFbhPvLl5+Jng1U5+LLS05jB70KY4qWKyP4yfb1WltOvmF2gAkLKRXaWKYguZAZFiakPVe9dwvfQZT9NUqdS2aWs55e3pkVsDT3LQ6dBK1EOVWy8ibGpZWNh+HH4VpKeCyr2vpSQsvJwwfV6J6Jj7JdwbnXgQ3gs+LHvW1phQRkDLLZds7sy7eLuqa.zmvwXz.rS0JUMxe621ceoPKXAhDtKysafpMK.cofAEcbEcbE5+VhqToc84c.e6uZIQmxugHYG6vxVULFd80WszSWsjK7jYnBSl40RmU.nbKL2lEDzFR6K2IU5oEJY40K8zRq.9IGyuwGUzXqa8Rlyvmh6tBK7CyWgI1h9zLQtoWeh030C467gfpYhyJcF71Pr4pj2Wo4GlAxRmUx87S0oyTmKK+M.9tLsosewt.EKKSCayiuoqImdzBgz3w6fX4YqCBOaFXgEpjXxvgQ7rwWbiYE52vYFJD7RTSvM+.4u8uexO9O+9eYCxC2eGjcKyLfEAuDwi0Bby3rC+DnGU6A0Un6vS5qUQl0lcpAZJ945zSGw.7yp5CFM3K9G0SzCvPyxlERBE99A7lpDAF5KPi8SIX+AhmXP9Su92c2e8Ie4FgE6ulPBYmVj3KAJ6IN0zXbGQPXhFv19gP+xHi+CgiavAJVZf1MoOXm.grO2+HkY8SgiB5rU4mFf8OVrcWrG+rIP.WjmB4hjvFYPQP8BzCb0YtE8YEtqQaJzd8lNdWXJ3Eau9uX7Npk8c6zAHRyA6Rz8dz7d8gYGJNNSF6JkkGC9GAxKmMzcuGUapEhV1gNVcgcRhtOW+XUb+x2vOI5Fq6Z35ERHGimyqj.M1cj5tFtxxBITKOm9tHI9PVUyRx3Ji45zXYlnRmMxlQw7HVLX1lArAkSXgQAPyiZ9McaCcT0GO.MIAWjMBrEthxd151IyCO3x+YcSpGnR0BY2FL3LKbB1bEE3VuP6zYnCj4r.RAZGWEGioqs3Reyf+C7jMYMbrS1j0FNYN6II6ikIaH6c3M7SOkBe+PoJe.1WZOF1h0flLcO7vDRfCYqPgTuQYsKiZTi..97P8.H5NlXmEQyN797V7CjpgFJUfDJ68OQ3iti5bSXE1zuG.eWwpUMRJ9uCXsmcWXv6KYydANUgAfPAkhafWsvFXzZ9KC4SftKYCWnmGGWWFvUL2.o+OEGyIHOhECMHZP84EBgVzu66ioIImzgzjEyB4P+m6atD4dw1q.NfbXzHdkrleH6Jw16xJSbBTq09dCg73w6W9V0avNcbYe8+p9ApGyiO2eazsp+vnnyKEVaqBEN+1uAe9gMZ0m+XaLGAesJUI6dJPcjjXJ5lU.bXK.VNRbDTYXQ7qVI5vNFIYP6JzhrYjlosCDdXQk7nh0PCGAn4h23DxDab3RlSaiSHSYiCqs3FeX42ha7bo1LwFXZ4wSbqmhafwBKWvLySGU+OgzKj4Eq9TOKON9E4RFIv2Uo4OQbEZCbr6n1DoT3RCXaYhO0yCKJ+V0Hjoqy6LG57tygN2ZNz41ygN2YNz48lCcd+KTG7+ScyTsJz1vFHn4tljKGmBjHj+KP6Dj.E
          
          ustkU 2 Replies Last reply Reply Quote 0
          • ustkU
            ustk @Christoph Hart
            last edited by ustk

            This post is deleted!
            1 Reply Last reply Reply Quote 0
            • ustkU
              ustk @Christoph Hart
              last edited by

              @Christoph-Hart I got this part working with no timer by just calling a changed() in the interface script from your SaveToGlobal function.

              Now I got another issue because no global modulator is allowed in FXs.
              I got 4 filters for which I need to modulate Freq, Gain and Q via custom tables

              So how do I sync them?

              Side question, do you have any example on how to use a script modulator please?

              L 1 Reply Last reply Reply Quote 0
              • L
                LeeC @ustk
                last edited by

                @ustk Did you ever find a solution to this?

                ustkU 1 Reply Last reply Reply Quote 0
                • ustkU
                  ustk @LeeC
                  last edited by

                  @LeeC Nope, I haven't yet. The solution would obviously be scriptnode but that means I have to move my pre-existing modules in a dsp graph. In my actual case it's not too much of an issue because my FX is based essentially on filters.

                  The main problem I can't resolve for now is the use of a table. Modulating in scriptnode with any waveform is easy, but the implementation of a table that is controlled from the main script seems to be rather complex, for me at least. I haven't a clue...

                  1 Reply Last reply Reply Quote -1
                  • Christoph HartC
                    Christoph Hart
                    last edited by

                    There is a unified way of how to control complex UI types:

                    const var firstTable = Engine.createAndRegisterTableData(0);
                    const var seqPack = Engine.createAndRegisterSliderPackData(0);
                    const var audioFile = Engine.createAndRegisterAudioFile(0)
                    

                    If you call this in a ScriptProcessor's onInit method, it will create an object that can be accessed using the processorId property of the UI widget.

                    Once you've registered a slot, it will also become visible to the DSP network of the script processor:

                    UI <-> DataSlot <-> scriptnode
                    

                    Check out this example how the slider pack and table is used in scriptnode:

                    HiseSnippet 1675.3oc2Y0raaaDDdorW+ibbSSa5cgbxA1UfJ9GEifVqXI4DkXYoX433fdHflbkzVSwkgbkrUBJPOz68b6k9FTzq8PAxKPO0mf9F3K8TOzNKWJRJIZaEE3TmpC1bmYGxuYmY9lgRUcX5DWWlCRY185ZSPJWCWqqEuY9lZTKToBHkOBWVykSbRIEsYWaMWWhARQYhGHDnL6jHuOmtwlZlZV5jPQHz9LpNYaZKJOTZ0bOlZZtklAYOZqH6dkbkzYV4Ylr1.dl.qhr0zORqAYGMw1RfQJSUzfxYN03ZbhKrmMYFcq0jcrkb+6ScoGZRDKxfpA2HoXT9lTSip87UWDRYxpgd9DRO+l3xTCZf7vSfO1SQpPKhdFnjneHMYePJyYAosXlFhavY.OkHvaRI7tAtltC0lGpQfs4vkrffScM3XOJrj6Eo7FbdFrAKd5VZGQ1xAVDXvBqoptTpUUUu88p21RmSYVoXV6v3jJVKb6juN4rI+ljoFTU85wpS7XbXllDmXUKhzNmmgKX0t0gDmkR0QyrMIXif62+46Ti14qtzqirQlUIKJuhMwecXDHSLQ.j+wFDKR3iP.JbuHw79Qh8zDOXJbOlA6ccFjG3il+anw0PJDb16jN3y54g+zoxAauZo0CD1oRY99e85QzaPKlMT+dUV7w0NXwpcdbqkE5cq.+o9hQ1uDyQA5m3CzZlTChSUnXxCs.9CDD.Yrx0Cf6WgWakz4eVkGs31c2ta17q8jFcq7vh7cV7v6Z0IasGc3c6HVu95h0q0UktYaAbRuXAvnr0Vd0mbbEXSObwrOowKyR2a4U8VasdZD5okJHdHPRp+QLbraSb3TQzUo.oCPXHy3mEWf3dDmY6ECZYyrDADkouvnvIgQfR45FtnPtioF7lBm8uUPnlDZilbwp+BTZ2K5WxviEz6lmZqCDYGC8vGoS1PX7suHBLT44N6mU..c5Cfc73MGhS.XlXFsM038SWI3k8U.0X8wKHJ9sbo7tQ4seK3vTikCK1JnQDt2.Wkx0aFOdSDCdEkjWx30uiv73h0qSz4gfcR7VG7dl9eJIVR5mk.OeAP5KoIJf1ocqvbPWQtCjHg.od0FAB76OjfqfmOIPV5xAhWmTFt1o9hTEsZPsHo0cHfSUv0dGB+XlyQKbKP8st88lOYTSpScbkEgCZ48sL1kzfJFdvSunteAUg8gV6Rdo.nmiogdSb1q01fx1hdtO762aOfwAMdrcH1ZNj8XUM05tfqVKaSxtfcKk5PSl9Q0nuhLb2J+51ME6XA8lZVVDS2woo1.ywL8nk0LXKr97gdhUQQQYnz.PEJJlhfcYs4TqFk03NTf+BKRmfwwzI488VQBTBQ+Q4ZUwZQMYMhkg2h+A93qLSP1FnLSOkgsVQ9IVdo79WCWIxuwXHWSHkY.GCyrklNbb0splfb7FXQ2cnjj3jVOnzbJgEYDY5CB0sgyg9DCUIvss2flR7Cb7s7X3gwL8u9Y83hWB1grFaWHOQLJSY2nispLQjdXfWA2bgKkPB9oEnaZrqsILD7Y5HR0WVneDPXRbKlg73rOPdyHfLXG+2fyYjwYMCHYpOLBXG9eZPw6Nxl.mbPngWVU8sIAHrW1dZNMHbutKZNvaw.rQR98dqf6RIqNfkR16xTq8GbDxxZmLfrS2Xa1wDmAdsJXzJa6gjd5F03DaAclP1qu4O+f+7Ue2F0Nhbr7DL5NkIpxG1Pv.EIFLMl6M0UeAgqAIJNjzRMWAJCiIJnnLnP.1BPHlCaJbCQpcPnQJy6cbqXGzDlvkmLEsD9o+LJmW.74uY3.n3vX3.3yeSbAPf8LR.7G+Awmecf.3Wp+a+die4yxU7DnkfqqXHJwA3Ujjt.YmYR20jStWxxfbRLYdQcCTDJq4Bnrxb0lyBK3rt7nrtTpU9Pmw5zMP8EAfIMGLB3wWIj++D1p4v0ZwX7lv.buSTVwDAy884F4HHr2Klx5e59SU+zB+wFe3RYE4c+u.JqX3u7GkowPiaMmLqrwkIi0nmVpjveE792SHc6cIt8RnFxsq19PSpt.TnAr653m5RFQSuPxnDQRKRd0o6qLj5MvvvImCUICgyQ2MdeVQJ6rFxjL.TVI246Khn037c78d4UOaoo6vdgt7EgEoRy3IARRs79MFlEWVrNU3WKJVMsJpE0f9Bccw2+ymmAgh2l6LF1r7XXyJigMqNF1r1XXS1wvl6dt1H9oWteaNqk76FDDTsnWxkhRX+rIP+Kpn8FRA
                    
                    ustkU L NatanN 3 Replies Last reply Reply Quote 2
                    • ustkU
                      ustk @Christoph Hart
                      last edited by

                      @Christoph-Hart Amazing Christoph! I tried something similar but without knowing the how to... I'll make my day around this tomorrow 😃

                      1 Reply Last reply Reply Quote 0
                      • L
                        LeeC @Christoph Hart
                        last edited by

                        @Christoph-Hart said in FX Plugins and child Containers:

                        HiseSnippet 1675.3oc2Y0raaaDDdorW+ibbSSa5cgbxA1UfJ9GEifVqXI4DkXYoX433fdHflbkzVSwkgbkrUBJPOz68b6k9FTzq8PAxKPO0mf9F3K8TOzNKWJRJIZaEE3TmpC1bmYGxuYmY9lgRUcX5DWWlCRY185ZSPJWCWqqEuY9lZTKToBHkOBWVykSbRIEsYWaMWWhARQYhGHDnL6jHuOmtwlZlZV5jPQHz9LpNYaZKJOTZ0bOlZZtklAYOZqH6dkbkzYV4Ylr1.dl.qhr0zORqAYGMw1RfQJSUzfxYN03ZbhKrmMYFcq0jcrkb+6ScoGZRDKxfpA2HoXT9lTSip87UWDRYxpgd9DRO+l3xTCZf7vSfO1SQpPKhdFnjneHMYePJyYAosXlFhavY.OkHvaRI7tAtltC0lGpQfs4vkrffScM3XOJrj6Eo7FbdFrAKd5VZGQ1xAVDXvBqoptTpUUUu88p21RmSYVoXV6v3jJVKb6juN4rI+ljoFTU85wpS7XbXllDmXUKhzNmmgKX0t0gDmkR0QyrMIXif62+46Ti14qtzqirQlUIKJuhMwecXDHSLQ.j+wFDKR3iP.JbuHw79Qh8zDOXJbOlA6ccFjG3il+anw0PJDb16jN3y54g+zoxAauZo0CD1oRY99e85QzaPKlMT+dUV7w0NXwpcdbqkE5cq.+o9hQ1uDyQA5m3CzZlTChSUnXxCs.9CDD.Yrx0Cf6WgWakz4eVkGs31c2ta17q8jFcq7vh7cV7v6Z0IasGc3c6HVu95h0q0UktYaAbRuXAvnr0Vd0mbbEXSObwrOowKyR2a4U8VasdZD5okJHdHPRp+QLbraSb3TQzUo.oCPXHy3mEWf3dDmY6ECZYyrDADkouvnvIgQfR45FtnPtioF7lBm8uUPnlDZilbwp+BTZ2K5WxviEz6lmZqCDYGC8vGoS1PX7suHBLT44N6mU..c5Cfc73MGhS.XlXFsM038SWI3k8U.0X8wKHJ9sbo7tQ4seK3vTikCK1JnQDt2.Wkx0aFOdSDCdEkjWx30uiv73h0qSz4gfcR7VG7dl9eJIVR5mk.OeAP5KoIJf1ocqvbPWQtCjHg.od0FAB76OjfqfmOIPV5xAhWmTFt1o9hTEsZPsHo0cHfSUv0dGB+XlyQKbKP8st88lOYTSpScbkEgCZ48sL1kzfJFdvSunteAUg8gV6Rdo.nmiogdSb1q01fx1hdtO762aOfwAMdrcH1ZNj8XUM05tfqVKaSxtfcKk5PSl9Q0nuhLb2J+51ME6XA8lZVVDS2woo1.ywL8nk0LXKr97gdhUQQQYnz.PEJJlhfcYs4TqFk03NTf+BKRmfwwzI488VQBTBQ+Q4ZUwZQMYMhkg2h+A93qLSP1FnLSOkgsVQ9IVdo79WCWIxuwXHWSHkY.GCyrklNbb0splfb7FXQ2cnjj3jVOnzbJgEYDY5CB0sgyg9DCUIvss2flR7Cb7s7X3gwL8u9Y83hWB1grFaWHOQLJSY2nispLQjdXfWA2bgKkPB9oEnaZrqsILD7Y5HR0WVneDPXRbKlg73rOPdyHfLXG+2fyYjwYMCHYpOLBXG9eZPw6Nxl.mbPngWVU8sIAHrW1dZNMHbutKZNvaw.rQR98dqf6RIqNfkR16xTq8GbDxxZmLfrS2Xa1wDmAdsJXzJa6gjd5F03DaAclP1qu4O+f+7Ue2F0Nhbr7DL5NkIpxG1Pv.EIFLMl6M0UeAgqAIJNjzRMWAJCiIJnnLnP.1BPHlCaJbCQpcPnQJy6cbqXGzDlvkmLEsD9o+LJmW.74uY3.n3vX3.3yeSbAPf8LR.7G+Awmecf.3Wp+a+die4yxU7DnkfqqXHJwA3Ujjt.YmYR20jStWxxfbRLYdQcCTDJq4Bnrxb0lyBK3rt7nrtTpU9Pmw5zMP8EAfIMGLB3wWIj++D1p4v0ZwX7lv.buSTVwDAy884F4HHr2Klx5e59SU+zB+wFe3RYE4c+u.JqX3u7GkowPiaMmLqrwkIi0nmVpjveE792SHc6cIt8RnFxsq19PSpt.TnAr653m5RFQSuPxnDQRKRd0o6qLj5MvvvImCUICgyQ2MdeVQJ6rFxjL.TVI246Khn037c78d4UOaoo6vdgt7EgEoRy3IARRs79MFlEWVrNU3WKJVMsJpE0f9Bccw2+ymmAgh2l6LF1r7XXyJigMqNF1r1XXS1wvl6dt1H9oWteaNqk76FDDTsnWxkhRX+rIP+Kpn8FRA

                        This is gonna be so useful! Appreciate the knowledge @Christoph-Hart

                        1 Reply Last reply Reply Quote 0
                        • NatanN
                          Natan
                          last edited by

                          Is This Work With File Player Aswell?

                          L 1 Reply Last reply Reply Quote 0
                          • L
                            LeeC @Natan
                            last edited by

                            @Natanr Do you mean getting the arpeggiator to trigger a file player on/off in sequence?

                            NatanN 1 Reply Last reply Reply Quote 0
                            • NatanN
                              Natan @LeeC
                              last edited by

                              @LeeC Nah, I Mean Showing The File Player's Waveform And The Start End Loop Markers

                              1 Reply Last reply Reply Quote 1
                              • NatanN
                                Natan @Christoph Hart
                                last edited by

                                @Christoph-Hart Christoph
                                I Know What The First Two Does, But What The Third One Stand For?

                                const var firstTable = Engine.createAndRegisterTableData(0);
                                const var seqPack = Engine.createAndRegisterSliderPackData(0);
                                const var audioFile = Engine.createAndRegisterAudioFile(0)   // << This One?
                                
                                d.healeyD 1 Reply Last reply Reply Quote 0
                                • d.healeyD
                                  d.healey @Natan
                                  last edited by

                                  @Natanr https://docs.hise.audio/scripting/scripting-api/engine/index.html#createandregisteraudiofile

                                  Libre Wave - Freedom respecting instruments and effects
                                  My Patreon - HISE tutorials
                                  YouTube Channel - Public HISE tutorials

                                  1 Reply Last reply Reply Quote 1
                                  • First post
                                    Last post

                                  29

                                  Online

                                  1.7k

                                  Users

                                  11.8k

                                  Topics

                                  102.8k

                                  Posts