*Feature Request* Extra tempo synced speeds for modulation



  • Would it be possible to have a couple of extra speeds added to all of the tempo-synced LFOs? (and maybe the delay module)

    2 bars and 4 bars would be especially useful.

    Maybe even some cool polyrhythms like:

    3/8
    5/16
    3/16
    1.5 bars
    3 bars

    ...or even triplets could be good if you wanted to really go to town 🤣

    1/3
    1/6
    1/12
    1/24



  • @SteveRiggs it's possible to do that via scripting, if you have the LFO NOT set to "Tempo Sync" you can use this:

    LFOModulator1.setAttribute(0, Engine.getHostBpm()/60 / rhythm);
    

    where the variabel "rhythm" is what kind of rhythm you want, so for an eight note the rhythm variable will be half a quarter, ie rhythm = 1/2
    the

    Engine.getHostBpm()/60 
    

    will set the LFO freq to 1Hz if the global tempo is 60, that would be every quarter note, and if the global tempo is 120 the freq will be 2Hz and so on
    so I think it's possible to setup whatever complex rhythm you want



  • @SteveRiggs a small example

    HiseSnippet 1709.3oc4X80aaaCDWJIpH1concqXXORXrGbvbisSRy5VwPUhSRa1RZ7hb61PQWAiDsEQkH0jnSiWQA12f80ZOtOB6iPecOscThxh1w0wMqcHCSOHYd7Nxe2e3cGc6XtKIIgGaXVpyfHhg4GX4LfI7a4ioLi811vrrUPWNRPRDFaMHBmjP7LLMm+9x4MKsfQ5yqu2V3.LykTPxv3wbpKYeZHUTPss82PCB1E6Q5PC03dc68b4rV7.de.Kya0vHB69bbOxCwR1lyxv7J63QE7XGAF.ig4Baw8F33yeAKi+GSSnGGPjCZZ3.KTF4c4AdRDKoZzxmF30NWmSLLLsZWXAlOyBbSqCndzgzKrDWOcBTgD51Cy4lF7ZpCuFyN7L0f2BYv6FVNtwzHQwLRrcUq8XBRbWL3BzgUFuFy8mVVs3.GLwJg3mS1MFFLThpaznQMzsazX46tTYvMjHPmfiQ6u6gGv85GfA0pI5qPoAFqziHFRsZEfGTASUjKvRkqWGgb3gDTr+.geHhbJNLJfjrTY4xlQLYy3XXMeRy5qWC0r9cpgVS9510atg7mx2Mqul7U5uZtp78pq+zga.mEL.0kGi7nIQA3Ann9wQ7DBpZhHlx5s736liHcCq.6XkZH3ycjeVK6ibeyFl8E16rOpQMWM66pqWICBYfniOMAkDP8HwH3WBeBJgFJsFDOTkGvSDaEEVIElBIqJKgtUVwD.sbGDXgawCi3LXP0gKhzzlyQBQ59iHwBJIA7kgesygOrf0ZuboxH3oRHkU4KQq2nV9X7ov3UaLjPhfD4P+YBPsY4WU385.JRbpgCgV4rO53+nLC7aD+p4mE7myZMznJvX3uvktR.g0S3itEp4zzHUj..wl2EgpW+DbPeBpKrunJEKVkggtJO3PWC7bqo8rTYJKfxfkrOyUP4LH3TIqTii4AUcyMH0Po6NDcB5XocX8.4j1CE+UylEfcoQN9IYYSADXebeAoJbZspRzdEhtLDc1X45nXo3uJUyOmPJ4ppPXKbPvwPJ2piC8bS3YUQk65bTwLt1+3.4lUshfbp.bvibr7Io7+zTsV5kJlTMibBEpVw0Gy5Q7pddJ4v3tIqjiB9Lkb7fZ.zmSXMvgJmmlc4gbA4PV0kK+xxkJ+pxnwmpa2INmBJAj3INsrdY7zDrJqe3wj3bqeNiPgiQqLY8lqLoW3zMSs0Xjy1iQEGFQXuo5UFJaET4ZNEp.VEo0stlptkSZ1RCJTdpjkxoZjB4htA9QaiYRbkSbbwgmGs21XAVVAUAoh7M.ssIm.sljUOsj01jjmK3QoXV4egBpy.pOUeKGnO3ETOgeAgmY6Sn8705C5A1PtLX3U9MkD44sjzLUzBoddAj17DpzSqad7Hcw8CDOdbyVXZSYWoZNNzTnxyfcTSgpYWnP1eq8nJze3NtB8KcrSfHkNvo6s3mlEA81nRKlaOVTwnzwMD6Klg8kTXee7wjfTneUqgmC0A+dZfGFLl23GNi2Xa6HbLrSZaYgQQlwBN0XA8M.8udl9wftByyRq2pnr+X0DREUumLYeWLv.LPu+42K8ONqv8FVsoBW+Ii24l.dkGveOiWU23KYsS2tDWQAXWvZ2u+8eq25P4ZYP4pVNPEvztfSAxGmNF8c3SHn6SXj3zJ0S4VR+9rdKonY9VRG5JfsuSLlkHa9UegcHgzNPzbhNwGk.89S9oijdYc5s333IN0qu2tfRNQYbvh9wogKaFx6yDiDdL++vaq0XRWGZgK02V6RQxg2Bq4bsOys+uNDRKufxNrSHAPAyT79gPExzxM4TGMF+.NiG4yYTW8.fiHPyp85Qh00iIpbPasPKYETto8Qj.BVOX9Ss2GBBwwfMiLM6x7ylcY1tn8D8cehUFbQxClnKUI3UYorrfKNnhyF814mOFkGy6SXt5Y5skog1qHKl8uZKy3AWoMT0.0Pw2mzC1HcJcHPAUHi4HgFNgbNbaXVuQStcS6847ncXXvJ3ouHs8gfAnqYnO9QRY0OQvCywR5+QjCzwQZeelOwZi0k2Ts6mIe+EsfWqc36lwFu6h5laFi59nTO4PWlzmdIuihLDOLd5+.Hdp8.M++O6A5HdeAbN8.LjKGZu15g8CcfVObI.RXLRf71jlyIOKlMtgbbVuGLuzA+E7nlrobroZxl4S9uxdDhci4OyM6JkxCdKlRAzaV5eubIqCjiQMyuIokUiUZHurB8YttRy8s.6yjkY0KfLqcAjY8KfL29BHyFW.Y97KfL2YpxH6cay9P98rih.g16jkY2bXEBy4M9a.hWOVJ
    


  • @ulrik said in *Feature Request* Extra tempo synced speeds for modulation:

    @SteveRiggs a small example

    HiseSnippet 1709.3oc4X80aaaCDWJIpH1concqXXORXrGbvbisSRy5VwPUhSRa1RZ7hb61PQWAiDsEQkH0jnSiWQA12f80ZOtOB6iPecOscThxh1w0wMqcHCSOHYd7Nxe2e3cGc6XtKIIgGaXVpyfHhg4GX4LfI7a4ioLi811vrrUPWNRPRDFaMHBmjP7LLMm+9x4MKsfQ5yqu2V3.LykTPxv3wbpKYeZHUTPss82PCB1E6Q5PC03dc68b4rV7.de.Kya0vHB69bbOxCwR1lyxv7J63QE7XGAF.ig4Baw8F33yeAKi+GSSnGGPjCZZ3.KTF4c4AdRDKoZzxmF30NWmSLLLsZWXAlOyBbSqCndzgzKrDWOcBTgD51Cy4lF7ZpCuFyN7L0f2BYv6FVNtwzHQwLRrcUq8XBRbWL3BzgUFuFy8mVVs3.GLwJg3mS1MFFLThpaznQMzsazX46tTYvMjHPmfiQ6u6gGv85GfA0pI5qPoAFqziHFRsZEfGTASUjKvRkqWGgb3gDTr+.geHhbJNLJfjrTY4xlQLYy3XXMeRy5qWC0r9cpgVS9510atg7mx2Mqul7U5uZtp78pq+zga.mEL.0kGi7nIQA3Ann9wQ7DBpZhHlx5s736liHcCq.6XkZH3ycjeVK6ibeyFl8E16rOpQMWM66pqWICBYfniOMAkDP8HwH3WBeBJgFJsFDOTkGvSDaEEVIElBIqJKgtUVwD.sbGDXgawCi3LXP0gKhzzlyQBQ59iHwBJIA7kgesygOrf0ZuboxH3oRHkU4KQq2nV9X7ov3UaLjPhfD4P+YBPsY4WU385.JRbpgCgV4rO53+nLC7aD+p4mE7myZMznJvX3uvktR.g0S3itEp4zzHUj..wl2EgpW+DbPeBpKrunJEKVkggtJO3PWC7bqo8rTYJKfxfkrOyUP4LH3TIqTii4AUcyMH0Po6NDcB5XocX8.4j1CE+UylEfcoQN9IYYSADXebeAoJbZspRzdEhtLDc1X45nXo3uJUyOmPJ4ppPXKbPvwPJ2piC8bS3YUQk65bTwLt1+3.4lUshfbp.bvibr7Io7+zTsV5kJlTMibBEpVw0Gy5Q7pddJ4v3tIqjiB9Lkb7fZ.zmSXMvgJmmlc4gbA4PV0kK+xxkJ+pxnwmpa2INmBJAj3INsrdY7zDrJqe3wj3bqeNiPgiQqLY8lqLoW3zMSs0Xjy1iQEGFQXuo5UFJaET4ZNEp.VEo0stlptkSZ1RCJTdpjkxoZjB4htA9QaiYRbkSbbwgmGs21XAVVAUAoh7M.ssIm.sljUOsj01jjmK3QoXV4egBpy.pOUeKGnO3ETOgeAgmY6Sn8705C5A1PtLX3U9MkD44sjzLUzBoddAj17DpzSqad7Hcw8CDOdbyVXZSYWoZNNzTnxyfcTSgpYWnP1eq8nJze3NtB8KcrSfHkNvo6s3mlEA81nRKlaOVTwnzwMD6Klg8kTXee7wjfTneUqgmC0A+dZfGFLl23GNi2Xa6HbLrSZaYgQQlwBN0XA8M.8udl9wftByyRq2pnr+X0DREUumLYeWLv.LPu+42K8ONqv8FVsoBW+Ii24l.dkGveOiWU23KYsS2tDWQAXWvZ2u+8eq25P4ZYP4pVNPEvztfSAxGmNF8c3SHn6SXj3zJ0S4VR+9rdKonY9VRG5JfsuSLlkHa9UegcHgzNPzbhNwGk.89S9oijdYc5s333IN0qu2tfRNQYbvh9wogKaFx6yDiDdL++vaq0XRWGZgK02V6RQxg2Bq4bsOys+uNDRKufxNrSHAPAyT79gPExzxM4TGMF+.NiG4yYTW8.fiHPyp85Qh00iIpbPasPKYETto8Qj.BVOX9Ss2GBBwwfMiLM6x7ylcY1tn8D8cehUFbQxClnKUI3UYorrfKNnhyF814mOFkGy6SXt5Y5skog1qHKl8uZKy3AWoMT0.0Pw2mzC1HcJcHPAUHi4HgFNgbNbaXVuQStcS6847ncXXvJ3ouHs8gfAnqYnO9QRY0OQvCywR5+QjCzwQZeelOwZi0k2Ts6mIe+EsfWqc36lwFu6h5laFi59nTO4PWlzmdIuihLDOLd5+.Hdp8.M++O6A5HdeAbN8.LjKGZu15g8CcfVObI.RXLRf71jlyIOKlMtgbbVuGLuzA+E7nlrobroZxl4S9uxdDhci4OyM6JkxCdKlRAzaV5eubIqCjiQMyuIokUiUZHurB8YttRy8s.6yjkY0KfLqcAjY8KfL29BHyFW.Y97KfL2YpxH6cay9P98rih.g16jkY2bXEBy4M9a.hWOVJ
    

    great, I was wondering about that as well.



  • @clumsybear @SteveRiggs
    However maybe you need to get the hostBpm from the NoteOn CB or set a timerCallback, if you have tempo changes in the host



  • @ulrik Thanks, man. I thought there would be a way with arrays and halving the values.

    It would be a lot less time consuming if they were already in options though to just select. I have 1 project that I'm toying with which has 12 different LFOs, so that would be a lot of unnecessary code to link all of those.



  • Yeah the problem is that it there is a index to tempo sync value and I can't add new ones without breaking old projects. But triplets and duets are already included.

    The core.tempo_sync node in scriptnode has a multiplier value, which should get you to almost every imaginable sync value (eg. 3/8 can be done with selecting 1/8, then set the multiplier to 3).



  • @Christoph-Hart Ah no problem. That makes sense.

    I'll have a look at the scriptnode way. What is the LFO node called? I haven't spotted one so far.



  • @SteveRiggs You have to use the oscillator followed by a sig2mod node



  • @ustk Thanks man. I'll give that a try 🙂



  • @SteveRiggs If you're using a scriptnode synthesiser, you can also use the core.hise_mod, which is connected to the Pitch, Extra1 and Extra2 modulation tabs of the synth module


Log in to reply
 

10
Online

552
Users

2.1k
Topics

16.1k
Posts