HISE Logo Forum
    • Categories
    • Register
    • Login

    Scriptnode synthesizer. - How to?

    Scheduled Pinned Locked Moved General Questions
    24 Posts 5 Posters 1.4k 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.
    • Matt_SFM
      Matt_SF @lalalandsynth
      last edited by

      @lalalandsynth ha indeed, I didn't even bother to try them, I tought they would be the same. We should have access to a "Release curve" parameter...

      Develop branch
      Win10 & VS17 / Ventura & Xcode 14. 3

      1 Reply Last reply Reply Quote 0
      • Matt_SFM
        Matt_SF @lalalandsynth
        last edited by

        @lalalandsynth and replacing the 'global' envelope module by a Script Envelope Modulator doesn't seem to work...
        Tweaking the skew factor of the OSC gain parameter does the trick. This way the release is not linear (but the release time is not precise though) :

        f50fc763-6823-499f-89ca-c541a980f83c-image.png

        Develop branch
        Win10 & VS17 / Ventura & Xcode 14. 3

        Christoph HartC 1 Reply Last reply Reply Quote 0
        • Christoph HartC
          Christoph Hart @Matt_SF
          last edited by

          You can do the entire synth in scriptnode but then you must implement the voice killing logic there too or the voices will stack up until the polyphonic limit.

          1. Remove the default envelope and replace it with a "Scriptnode Voice Killer" envelope - you will definitely need a HISE envelope that tells the voice to stop at some point but this module is made for precisely this use case and will handle the voice killing when a voice kill message is sent from within scriptnode.
          2. In your scriptnode network, add a envelope.voice_manager node. This will send a voice kill message to the envelope when the value is zero.
          3. Connect the gate output of a envelope with the "Kill Voice" parameter of the voice_manager node. Now the voices should be killed properly when the ahdsr gate closes (watch the voice counter if it works correctly).
          HiseSnippet 1415.3oc4X8zaaTDEeVmLN0ooPpDRTwIefCoRkH6RnfDGhyeasnN0JNDwsno69b7Hu6LK6NaRLHjPhK8qPuwWCtUINwAjPhu.7QneCf2ryZ6cscMdcSbQhToJOu2al2ad+426May.oMDFJCHVkNomOPrVi1pmP0YuNLtfTeeh06QavBUPPYCoc64yBCAGhk0ROVSvpzxj3+d816xbYBaXHIB4TI2FdJ2iqFRsYsuh65dHyANg6kR5spU2VJ1S5JiP6YIZEhOytK6b3HlVrBThUwCb3JYPKESAgnL6Jc50pi7RgQ9S4g7m6B5EUIsvCxPlrWGtqSy920PBwh1b3MeIyM+CnM3N7AzG5AVOlQ4g6HsOvpvzLop4vjrRYRKaLo6RaYGv8UC4nsmaSqKv.RaF5pSaJFYIVuhtmDEPn1zi0ENL.WLXCa7nJUdPY7+t+W1NRXq3RQYo3HoBdlXi6u52uZoU+gUKOJq1smHOsZBjttPvDYqitASaiaHh7dND7fxWvbifABhW+r9zhylO01bqSInTTWvUOyGRVenz0Q6qz+d7H.Iwsg+5qquOSwzAkDZnb9PfhqMGq8gKvrZSHpDceHrqR5i40iE+vLGoSjKSkMcRW2jv.8GYhg5.kHjq5kttJG4XUlZN1rZh2k1jqr6LYarvDrQzScSXiIUl2gdP61fsZnAtL8vuYdKCmc0Wpu5MUVw.iwp+dITDRGnrlLDxCgfpSAc7OlUzQ+YFcre89Cn4o1ZDHzkmsZqrorojeB.YEeGfsd8j2+1WZt7rYhSGHJSqfhF68CSkxEm1nyR.SCgOJc5XLyxFtYSHaHER+NRA2NcN3wfJfe94PPZhusvPUu4ggV5+MvPSyEcK5AWoBXU+OXSjDS6gKRS6XYjhKNuACyouBmx6nHuVHdoMflkP.t3gSsJna0aVWQuVaDs.gS7h+F+KgYU8ZqDlU6yL0TBGApKkAciqXS9MVuZZPDNnh7rvTMH1w0Ud4dROedRFM5Sho0T51qewoUAiD8s5c7jQnBSL8mvBOgwc0hcJDDFeHqPqrI9OL8+HTinjGxrQGZulLriEVGoGMBiKPvl1ChOuQaLc7Reb864X7Tno4ou9wyiuTp4hLvV5UXvsfVCqQqGdplqMykbptOj1nI5yTK9RI1pQTYnMhYoSgHiY7AvloXOu1mlkuKbU+Q61mG56x5saDVUafcyPQeIDNvU8C7Gf8ScPT63s2OYnIK.ebhBRZ70eE96FbQxUdH5TC1UiPa8ZsTfeK92AoKHZ0Etz3DRSU6mJpqz.xXmLY5pdqZio5W7mip5e9ku7WFW009IueeayyNNL.91HPX2aD8+icq8un+Wu83W8J47puVr9KerttgL14SxuuGUVN88OFwmtwTMhy7FU8JzlcXg4Otecn6hwCEMgqcpx2UnrNNgiT4tNEDW.tXA3lFt4nvkNUfk2WCrmpzKw1L3ijVWpmZ3DVv4fRu6BoIj7lNADOub3HhOF2zKSPWq6nMfKziYclGSvziNMvVzLWipm9xLH10KnC5Yxh3TJ2g+W7qyXY+QM9ssMsw2QoX1cGMA3iqs.x8tShxeJfIRWGUd495Wj9DbVcxX3oK.UuBcevlMJX6qBVDN9RzVQgpIT2+WKBmdI5wfKLA.usVjIc6EEbAbcb+ycmlaSG9praJH+72oSezCdJ1.30zsAFEVLS6f6MrcPVoxQagBYlmKCTnUJ2xJ2LtkL.6icV6DojdnaK9ajkw1H6Jkc8XwuTX99zhKh203wrCjmYa97QZO5shofCQKh+96knMzqKWkbQR6V8iNHdbG9Y115GC+IUIjIumGNG64Smi8r0brmOaN1yili874ywd9hotG8mNKIqSOdBRn4AlAErNPvvWLGWRQ9GfgnxRK
          
          Christoph HartC 1 Reply Last reply Reply Quote 5
          • Christoph HartC
            Christoph Hart @Christoph Hart
            last edited by

            And a mono synth can be implemented using a ScriptFX and a midi_chain container. In this example I'm using a midi node to control the frequency of the oscillator so that I can smooth it for a portamento effect. In this case I need to put the oscillator in a no_midi container so that the frequency is not controlled by the note input.

            HiseSnippet 1534.3ocwY0zaaaCFlxIzoNM8KrMrK6fOrCo.cA1aYcCXGpSbhWMVcpQTVPuEvHQGSXIRUIpj3MLfsa81N2CCX+M1sBrS679CreB87tr8RQIaJaOuHiD2TfTwW9RxG979oT5FJbnQQhPjUkiFFPQVafsGxk8a1mv3n16grtKtCIRRCqpEs6v.RTD0EYYsxWqDXUYUTxOu8I6R7HbG5XQHzwBlC8YLelbrztM9FlmWKhK8Hlug1a2nsif2T3IhA7rBtFJf3LfbF8.hRsRXjU48cYRQnsjHoQfN6JbGZ2WbAWq+wrH1odT0f5HaXizhQM6y7b6lcWiPHqU6N9luh9l+93NLW1H4iYf6mLQ0wqvjCrJMOHUu.Pxx.RqpgzCv1Ngr.43YT34131bvfzi.TsITz5hrdCto.TfK2xmLf1JDFLZAa93Z0dTU3WO7q5EycjLAupfefPReNeyGt92udk0+g0qN4T85My4TGSnvyiFNyoUV2v4svM4w9mRCeT0yIdwzQJBW+7bZ4qFm5nu0FJJ3s4L4yCnoiaI7bUbk54os.nTZCd5aauGQRTFkTYfdAzPISAGq8nmCd0ZSTE7dznARQ.3WOk8C7bDtwdDYd2IUbS5D.ejyFpLT7HlbnYbUA7wpMWerqJDe.tKS5ze1XrzLvHvT2DXLMx7N3860i5HGCvUwsdwhFFVqvggqmFFBmo5v2HcX0Vun9LC.eEdrydPHMfDRORz0iLbyHhefG8P.iOp5odBmA1ruiNcDRfFB6pzXSm9DNm5EsHARkulRNgNTDKY7y5PjgrKQV3Ch8sgzzNzlonCjYURECoGWSMV4WXS4tIC9G3mzIqqFakNY8rIMB+NfJuPDNHwbj9LbWzbeTBIeRuKqi1wySbQSge.K0KErAIx5J7FFzWvYNJQZMxP5N9hX3PRg6SIQGQXdJ25iogQIaxZ3ZaA+CboOP3BjCtEwAHwgcIx9pXCUdFvQjFtkyHGxb3xzmPsEYkzzLB.Ge00Lof1JFIVz9dpQPjUI8t1N5X0rNDOzwJaqBnH0dp4FM9zEE7ghTZ.kCuefAdGqxxBhkLf3cv8XWV+wmj33mGjenAHMU5lElqLBlqX.yxILYd7c2D7AQZITXQf0p4fUoIfUEbSOXmZ6lgIXInIzorJCMMSgaiaEReYLk6LDgFmf9HR3YTYTZEKN0QGOjP+vtCM2D4KDx9T2SfzQP+TP+.ntYOozXMr9DTvGxQcYZAP7QDHCgJEfsGykF1EZISMZmXWlnESOE7+vtndZOVT.jna2XHgsNad1YnFXvxyDP437OZDmOCMu1bLxytqiel3hpcgstHj6FXQjCzRqpHZdRMm0xjJ.TM5tXsVGFOE.iKn1gb4Dxd6Srkz.UECS8rGPuPyalZptZYVzo15chkBenhPR0bjAPJOAP90W+5e6ISAjF+biI.Rhd+2.4dX6DKHT.Ioieis6u+kW+Surw7vPAHi2NGLTAuOW4I6hlZiLcKqf4hSlN9+8LxOkov6hr747zlprTHcKioWT7MQB.qIComPh5RvcoWlUFeenSDWnK6jkmUZOmqe4hasueihYsyGUaXpmeT21Ml5ne0eVPmcyP97a0ONnwUNxKY6llGpUPdXiDvT8PUZr4yF2PgckgW1QRuwN54m9qaeRzLR+sDN6xIui27t1yq13ZXRe2nIBvuOlxOm5Awoaoms.w234l+4dpt4MvRJp0MHiruP8pfiKAVxTP9RhQSn9zydclZIoUIy7JUJrc8U+9UK3twAc9iD65sv6HkPGPSZY+3FKAmp6jd3OiB9AWGgTE95WF+Tg2TUP2twR3nWCuG0gLYJ02DtLH9JX63H4+S.8M1MuB9PpGcFYx1dY5z0LN77oPvesLJgba39KCYmcFbF2T4xKdILzLeAg4jeeWgXfOI4iZrXedwkwmfwm3DJNI88tT4TuUhDnCQdx2fuBtiZb05nySKRn9VIHU+vm33n9tbeRcDZ1q4SWf07YKvZ1dAVymu.q4wKvZ9hEXMe4bWi5OMQZWkpWJEDzcec8QqrW3Q8gN9W.kYXt5C
            
            Matt_SFM lalalandsynthL 3 Replies Last reply Reply Quote 3
            • Matt_SFM
              Matt_SF @Christoph Hart
              last edited by

              @Christoph-Hart nice! I wouldn't ever have thought of doing this :beaming_face_with_smiling_eyes: . And we don't have to even connect the envelope to anything, just having it "filtering" the signal is sufficient... interesting.

              Develop branch
              Win10 & VS17 / Ventura & Xcode 14. 3

              1 Reply Last reply Reply Quote 0
              • lalalandsynthL
                lalalandsynth @Christoph Hart
                last edited by lalalandsynth

                @Christoph-Hart that is interesting but is it possible to have note priority as well , this particular one is " last note " but not really as you hold one note , play another , let go of the second it should go back to playing the previous one , and without retriggering any envelopes.

                Portamento as also strange as it glides to the note then jump to it at the end.
                prominent if you set the time higher like 5 sec

                https://lalalandaudio.com/

                https://lalalandsynth.com/

                https://www.facebook.com/lalalandsynth

                https://www.facebook.com/lalalandsynth

                Christoph HartC 1 Reply Last reply Reply Quote 0
                • Christoph HartC
                  Christoph Hart @lalalandsynth
                  last edited by Christoph Hart

                  @lalalandsynth That's the job of a MIDI processor. Just add a Legato with Retrigger script or script one yourself with the behaviour you want.

                  And the portamento might sound better with a linear fade in the smoother node.

                  lalalandsynthL ulrikU 3 Replies Last reply Reply Quote 1
                  • lalalandsynthL
                    lalalandsynth @Christoph Hart
                    last edited by

                    @Christoph-Hart great , will check it out.

                    fluff.png

                    https://lalalandaudio.com/

                    https://lalalandsynth.com/

                    https://www.facebook.com/lalalandsynth

                    https://www.facebook.com/lalalandsynth

                    1 Reply Last reply Reply Quote 0
                    • ulrikU
                      ulrik @Christoph Hart
                      last edited by

                      @Christoph-Hart Would this work with script node?

                      HiseSnippet 2127.3oc6Z80aabbD+NIcJlz1RI.0nOEfK7IJ.YERE2zhDzHJIJYQXIJVQE6DH3Fu5tkjKzwcud2RIQaH.i9TeqOa+TA5mh9l.5WfBzG5q4if6Wf5NytGI2ihhhQ.J01nDBPbmclY+M+Y2Y1UpVjviFGKhrryre2Ppk8cbp2kKasdKBiaUork8m4rifKbUToOmESib4BoarWDKTxE9Tq05FRhio9V11S+PTL6LyXo97lUViDP3dzAjrrdrf4Q2l0lIGPsVoGwBB1j3S2m01f6GTphmfutHPzAf3zNErBIdGQZRqRP1lxwxd1M7YRQTcIQRisrmYMge25sDmv07+XVL6v.JNnnUcPQZxaJB7QDie2Z8Vr.+Z8bEwVV1N0F3XlV6X9EN6v7Y8oOvA8wpIbGHgo+vdpzva5TvqnI7JX.uQ.IaCHMiFRehScUTXvLHdtsSEtjF0f3kNzn40Zp+8rNqK.N3xkZSNhtYDLnuD4+xBEVz8AEJrvWmMaDsoaU2eq6KxEFQQ0bDsabtux8fmdFLKDXhktGSh.SmIdD+PfydJtIUttncnfCCxmKY9bfNSKz1GFLVgf4QgxlkwCXbpaiNbOISvcE7DchxFIBx60SvEAkGzgtP1WjMSfviD3FBbJomJgU5fbaKNgFKysnatsI5euEqYKjzS+5rYxlIYUWJlBP.kBXomBNPo4mB.BM+qvTQMj.t0IAAGBos4GF0flLrnpvhrKOuB46.taHKeIVStHhtwwntkQfYo.I593f4ziK.BnvU6z9PZTdjGjiiSywiof6fI6lWqCVC27p8zJo6ztlNB+HHBmeA2uws3BYy..IS0kLh8KE1ItUdNpA0RD1.+F7S7ILoWK27I1mZ8PmU9E.0nzSFORL0svWk4y+7L5f.RbH0CovRE9fOgM.7mZ5CJ7T26Cj3ZFNLhRNR809punV8jDkOBUjd8Bn7lxV2u3Uo2kU5MIS4mNtmzEE91YZ+oNxP78qg9U7bw7UWh4unKr4LrA7KbwNCiizfX5UDoPIAL0WmIIZEWzkC6VRTFvElRwU58rrtCmX1ngNy7py8t5bqBI4VCRgRi8HZawwzDz++ytdmH6RKCWmJTlFP5R8Wqq5joJ98DegKFK8BnDcdQRFVGtOsAbXt+HxzRNWL.yjvjsglF6MXzyzqL.WkFZVC.YDJXltJrykWE1rIAO8Q7FLJ3U3L4tgzjwWrNsURcArIhDTArJU0qmKodc8.lOMxhAkky3jjTaofrYqSVSf3S6r50UvxCI3e5eVZxDrdJA+Ku5U267ISv8FZEeyenj02VoLQRv1aR7afuLjFIYXXxtL8XnWQcyNYbJSiORJBUN1jBt.Y8Bd2jEbaxgz.05MqCTGun0olsd10bvILeYq9DN+OVpEE1BZzTZ0RM.LUm87TMjhcBXY+oN6ra0cqs0tUqrtamXFuoasJ6u9VtatZ4MrnP1FoeacVSBbcP3Zf1yCJ00DJoQ6KIW.seyHPagDzNuS0c2eC2Z6UY28pr+2OF7c6IHS8R.4Ke7UCxxkhkcCTWyXKQD64.hIAVsIlQIfEZXZ63Mqzl46GPqIhY3NdyYhgcm6CV4ZhS0lClJMr8bQ+s1bR6yGeFxHMmPRDrNlA39tIsqGRCgBFVTN5uStvwnBTWdH4Nxj6enMgMCDDIjusOCXFsja6rZ4568vHRXKyPyglglFCEZNOZXa4kGTJYGXu6At5V8U6gM6cErLy95W+51n.LIs8.pu8su82kl5xIj+6HYzWjhYs6C25auoyKx55lq+gnU7gqXjCsobKhSTAJXbJPpfZDbws.wIOQDcTLbUPJPG6KN6YobYylNpWivSh5yq7UngB2dCRrO0LVNve8r3g7Wkd4HNcvdFikbtwdF8jliY86uv5T4h4XCaEswagCYZp6NatYBNSeTalh6znA6T7LG21wVWbq0+ABPuck+bovAgDT83hB2+NBt5MbaQj1sbVUJga1jx4O2XK5L.bkdVoOb7DeDTcxizMkiX9wVD0vQDdS4HvZldL7HOSi+0uB+72tzyTW971lOhy2ed5ymsLbZ9qYcktlLN06DivZhyR1yv47rS+.JKIiydTne3Xpk0EeMmO1YGgem.hL8iKgunVxD3xY9hN3q1vAXz0DrC+hSyLYu3zfGDajc0Ngv8SbTWoXz3cpQfWnyuaZ7l79c20YiFMndxAfcFmM+tw9XcyLYWSXxgx8zP41NOgbLUciJEPtmZbCQTa2GRgDTzmVbLOq5+XReV0vI9YU20SBPX+HBONTDSKZp4glaYy4JSkc3oYWSJEWn4sIXdF7cqR8HtrIQnTcJkAiSoocXFGE8iqrgpsp5TvZ72M1CLVz2YtcnVG3JrOAOznnofCHurI4sHQ9PbwKUB5zWqrhz6aM3eDus6r2TO27Oqa9uQOq5mvi2a9R4yqw6Go6lUAyjClMAG9W3HrkfyRE32iJiXMaRSkOMR6P2Ez5chNt+lr+0e8GWQ0RPJpCX9hT1ldLTn1X82BLyzarvNLLpU0qtpwMw6Uew3N1a3I1Q2Mvk52mdx76Wwenjwkab2jNEcUGD8tcQr45gUcD4cavdGcimuO3WmuWifuW3XmqWuZuO3ZGaeWS+ATeW2DUsfdJbeuoC6eoCzmyxtpvs6+6i26I5fOF0NDnTIdCopcZWGZpziBHlyoA3isaOE9r35wEvwHbpS49pA3cmRlrHN1NYxh8l7mk0nMwKR7Cd5mwFKrcKEEvt4p+SCx3rCN1sXu2v1wovREv6Bx9AOOLm99f+Yzxr70Plu3ZHyCtFx7qtFx7kWCY90WCY9MiUFrK3U6HEs04+.gZanePQ6M58Xq1Sa8ewHzTSD
                      

                      Hise Develop branch
                      MacOs 15.3.1, Xcode 16.2
                      http://musikboden.se

                      ulrikU 1 Reply Last reply Reply Quote 0
                      • ulrikU
                        ulrik @ulrik
                        last edited by

                        @ulrik or is it not possible to control the midi from outside script node?

                        Hise Develop branch
                        MacOs 15.3.1, Xcode 16.2
                        http://musikboden.se

                        1 Reply Last reply Reply Quote 0
                        • lalalandsynthL
                          lalalandsynth @Christoph Hart
                          last edited by lalalandsynth

                          @Christoph-Hart when controlling an osc with that midi node , its way out of tune.
                          Probably the Lowpass , it also skews a straight 440hz sent into it.

                          tune2.gif

                          https://lalalandaudio.com/

                          https://lalalandsynth.com/

                          https://www.facebook.com/lalalandsynth

                          https://www.facebook.com/lalalandsynth

                          1 Reply Last reply Reply Quote 0
                          • lalalandsynthL
                            lalalandsynth @Christoph Hart
                            last edited by

                            @Christoph-Hart BTW, I am always getting this issue with compiled dll´s where it says its failed the sanity test and I need to compile , after I have compiled.

                            https://lalalandaudio.com/

                            https://lalalandsynth.com/

                            https://www.facebook.com/lalalandsynth

                            https://www.facebook.com/lalalandsynth

                            Christoph HartC 1 Reply Last reply Reply Quote 0
                            • Christoph HartC
                              Christoph Hart @lalalandsynth
                              last edited by

                              @lalalandsynth Yes the low pass might have a error margin that is relevant in a pitch context (it usually stops smoothing at a difference of ~-80dB but this might be a audible error when you map 0...1 to a 20kHz range.

                              The linear mode should be fine though.

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

                              28

                              Online

                              1.7k

                              Users

                              11.8k

                              Topics

                              102.8k

                              Posts