Custom popup values help
-
Morning all,
I am hoping somebody can help point me in the right direction.
I have a slider linked to convolution reverb with a range of -100 to 0 DB but ideally I would like to have it show as 0 to 100% instead.
If I change the mode to normalized percentage then it no longer moves the knob in the reverb module so I dug around a little deeper.
I looked around the forum a bit and found some similar topics so tried to implement a solution using custom popups. I can get it working and showing positive values as percentages but only if the slider isn't linked to anything. The second I link the slider to the convolution reverb the custom popup stops working. If I unlink the slider then it works again.I tried creating a 2nd slider and having that link to the reverb and then the 1st slider be the one with the popup but again same results.
Am I missing something really simple?
Ultimately, I don't mind if it is possible to modify the original/standard popup to show positive % values - in fact that would probably be the preferred option so it matches all the other popups visually, or if the custom option is the only way to go that would be fine too as long as I can get it to work.
Here is a snippet that will hopefully explain what I mean a bit better
HiseSnippet 1408.3ocuW08aaaCDWJwZs1adXcn6cg.L.YrTWqzO1.xJlabhWM5WF0osqXXqfVh1hqTjBRTIwqH.C6o8mzdL+Or+Q1y6ksijRVzoNNoAnyuDw63c2u638UFlxCvYY7TK656OKAaY+INilwDQ8hPDl0fckD1GmIbS3I4IV6LKAkkgCsrsW+6k2vtdMK0u+961AQQr.bEIKqWvIA3GQhIhJpC69PBk1GEh2mDab6a2cP.m0iS44.ZV2oiUBJ3Mno3mfjWaMGK6OZuPhfmNRfD3LK6Z6vCmMJheHSe+WPxHioX4AeqQfhzj6yogRDKoZ0KhPCGV50YVfVFVECVWGCttyiIgj4zqhEelhgakDlwC60VDdqu.77MgWGC3sDHYa.oZZHcMmQAojDQEGId9XmALANcBBB6lPQeWq09yZN83vMXh1wn2f6mBGlKg2c6zYS26zoSqsa1nYiadS2Gx3i8a1.dFfG7CPoZBt2ysTISwhd73DNCN3sgh6Fs19TBr0JEXqMzlivnDF1cRNKPP3LWNSoNofobpWPoTaB5klia0rwaa1vE9MDwvT+1gHApMGRQHhYfA82dAto3D3MS3IsU8BZYBTpPlyk54qc5iUHYkNW6LIUEl5gnzwPJo2hPcdzSaFyvmlxYFNzrUwiRHBYKkQfIHZFVq7RtXwPoW8Ldt.hcdkwNuosbmGdlpQrrJxS+mr1GRDQ2mlDglSYLEbjMcEQjrEhjsZscoZBSQGBVhA0NOCGHProTr2OBYLcJjCblWRBEQdspH7.LYZDD1+oMcu0lta0xsPcuOX6vHh.e9X69TxTFNbe7QBuGiDQsSkfU9z59U5DWIfdgL4wqUKf1Fe4Fa59d3.aD.uRo3PYF9wm9gPkGMOiX9KQUZpRglumhzbboG7N9l6Mtmam19lrMSg0jISb8dWI+VPxV5KTX5JyK3I5D9VaKIp3dr5KvgZzngQ02S3B7SAGnwaaTuwwMbOMqISVJuBuiJswRXWX8yVPOVd7XbZYUd4Eg9dK1L04ralZ1qOPWnYbQNa.iHdZBlcVS.rJpNkMdKPEbUgps6mVz1cDkDhSsHP20q3nZiYo.b03K+Srd9fcgGlR0.ZDrRBNUPjNf8t3Cfgg5t40c1Em8F30ALz7FBvn1y0nGAQB6+AL2L4G+N7QLILjhGxyHx.aEd15jLANYD4WAE5332tCbSC1u5jXzQlipyxmLgHUuia3NVIkwmAfw+B4PjC3zb0S2yvGfSG6CSmSgAyvrD4Up67RrPsPPLOrvACHiwTYzct+07b7OeqJH8aYcmM+vI+R2S6MYnCvCXCSwPwnbj2os6p81UD0N63.rBhrfV1wYG9QRiZ5bWQ6bMKGTKaUn7sq5naaX3bV+royMs6gx1PUDdc2HUanJJOu6AkI7fUe20CfES3g4TjXwsUjuHELjto4JBx0.Xf6OybEtSuBSsK1JLqdCqKJbulyPhHHZ43cskfWnR6CMdKVHroydSl.CAq.aMm9+vJ29q1EqgUETN2MA+7RrXTMpvxxqOMA2toyVba8WcRY8pQCrGAHmErP.dPbRNrFxivroFInPlRAtFvRxElzedFdGXh3T0v38iRwnPS8A0qgXJZAa7.ROCc7G+U2cQwID1Ty6zu+9EcNKHc8t8Izp+0.U0tispzFcT4mTNOYjbqOSB6wBKOZu9Edic+UtwtkdkrovdHoplGOIOdDrLS.FxXXPwubBl8ZxYM5ycJgvHLKTc3egeEL8kmsKX5Wx7+EaDiBR4uNPOETl.dUEEvuYpPccmGKO65WN9ywoiZzRH40AAxxha3aYsbY15RHystDxb6KgL24RHycuDx70WBY9lUJi7eH894BdrtkIPX3dp0Prs2igfrWUC.q+CJnWSgB
-
@rzrsharpeprod is it something like this
HiseSnippet 1455.3ocuW80aaaCDWJIpq1adXcncnORXfBHu4lZk9mMrrf5Dm3Ui1jZT61tggsNZIZYhPQJPQmDuh799X0uC6KvdcusuAaGojrjab5eB1peHw7Nd2869Guy8kBeRRhPZYWY3rXhk8m3LXFWMoyDLka0aWMggjDEJVDOM1ZmYw3jDRfks8peu9F1UVyx74uu+NXFl6SJHYY8LA0m7HZDUUPse6GRYrt3.xPZToaem187E7NBlXJflUcZYEi8ODGRN.qu1JNV1WZu.pRHGnvJRhk8Z6HBlMXh3Xd58eFMgNhQzG7rF.JJkbWAKPiXMUqNSnrf94dchEnk9EwfUSiAW0YeZ.cN8hXwmYXfJjnb7vdkEg2pK.OuxvqUI3sDHYWBRqkBoq3LvWRiUEbz34ic5wUD4XLD1KCkz6Zsxe43zQ.2fqVOBeHoqDNLWB260pUSzca0pwl0pV8V2ph9JHLRRFSjDHShTBjZBAAokiDroJpfCLOhHGUEHA0DcJX7DCcOzVHS4y5gD0diGS7Ut0KcKT10p2Xyp0.ShdHWLxKSaGgklya.JIG0fZ5HhhEb3facC25Z3VqJkynbBZ7TtuQyBtgqVPof45mKUSPurojF0p9xZUQvGvQ4BTxgjiQPT.xWYTYBeLCEBoZv96iAeXrTD0Znvy0nglnWVOhxq+sna5oCb0ivm.GZcJ3KY58XpZRYMCA2af1ZKzMuWvNl6rfM1nE5KSMDSD50J0JYJy7myFdWOgn1VojzQSUD2kv+4DktsrowFY5pOlSXdqGfU30EPOEUMCrt2l0JyURhAITt5fakLZIJrToaRktdoUImZB8uwjiFhYIgNXFaDzC6tXtIM+AI+TyTqT5Okx4l+SYaJ.xgHzdkmxGiYIjTkmykn5q8pmHffDm3lWr3F1.MudHLEw5mcbS+Wx55D41r3I34TFw.GoIzNPSVHR1nwl4pIPhOFrDGdr4IPgOlGxHt+DTozJSNvYdNMPMwsQAgGPngSfv9O2Dc6lnMZfxT26C1NdBUQd6XaaFMjSBFRNQ4ZJ6jZvpSsPcnIAoAzyzUgtMZf9JT8aTuI58vAp6CYIIIP2ce5qmHL0QyqHlmIJ5KMJrb9TImRx8fy3anatEp05dkYWtDNkLcLx8rR9cfjMRuPloKLuRDmVv2Xy4sgmZ9ltMuZ0RO2bfPQdL3.UeY0JUOsJ50YMd7R4k4cLsMVB6Lqe9B5xmFMhHyeVK+hvfhEm93b9SeJObzOsQqzEE7dbp5wwD94MxzJq6TOoJCUvUUl4TeZ1bpALZ.QZQgwQejio3xx.3h48+48sdZucgDStZ.MBVIlHUTsCXuK4HX6gzweUb1kjbHjcfEAl+f.n52pQOYtAaKZOq3vu1NhFDvH8EITc.tLtRlNdL8Ds2eCqHQ.Xfuv4.gLByn+FInOQpqygESzAh4P4RoPoV9bZcguAIW1IsInDTr9kRP4UgsOV2TUP3EsmXZpJn7z1Vmck.XYDQvTFVs3FJ52+yXn8qxqEnG8yA+cV4019Oask2UHdEm9Tk+jkiwUVBFgBj+OvX1xd0bRWTo.fq4z8G9.rY2mma+RywM1+ZNKYkoE.ztxYKt88O9prI+YjZe8qc8W8H.sb+EBj8hhmBSIeDgGVphCpBxvUOd7TUY5OMgrC7fcnYVwvIRBNnr95CO2SX3ErwCncJoie+OZuKNJlxCKemtcGl0XmQ5ps6RYEq5Go8DGaMGXMq7uxDh3A5kRJSXOdP9Q6UemySdu4xjzMFBgwjR8KANGLMZ.Lq0m.UIbnaV+.q8J5mBSO2JGBCH7.yg+A9jwzSe1NioWNyOH1HB6KEuvO8QZcA3kMT.+laB0Ub1WeF485uNCwc3W57Be+EU0YDbiKpf29hJ3ctnBd2Kpf26hJ3WeQE7ad6Bp+gnaOUIhReB0xZ+96YllZauGGCU4lGJr9WvDsEW0
-
@ulrik Yes that's exactly what I was looking for, thankyou.
I can mess with the local gain amount to get the slider rotation to match closely with the reverb knob rotation so it's more of a 1:1 relationship and it's perfect.
Thanks again, much appreciated
-
@ulrik
I am now trying to do something similar with a saturation slider but am having similar issues.
I want to only have the saturation go up to 60% but have the slider popup go from 0 to 100%.
Again I have got the custom popup to work and display the correct % range up to 100% but if I link the slider to the saturation the custom popup no longer works.It is basically the same issue I had before so I tried using the code you used for the reverb above but it doesn't make the saturation knob in the effect move. I suspect it is something to do with the
local gain = 20 * Math.log10(value);
line but I am drawing a blank.
I replaced it with the following
local gain2 = 50 * Math.log10(value); Saturator1.setAttribute(Saturator1.Saturation, gain2);
but it isn't working. I thought it would as I created a new local ref and also replaced the Convolution reverb references with the saturation ones.
Is there something obvious that I am missing?
Thanks in advance
-
@rzrsharpeprod snippet?
-
@ulrik said in Custom popup values help:
@rzrsharpeprod snippet?
Give me a few minutes as this is in the main project so is huge. Let me make a basic one and I'll post the snippet
Thankyou
-
@ulrik said in Custom popup values help:
@rzrsharpeprod snippet?
HiseSnippet 1808.3ocyXs0aSbDEd2jr.YotpTQaecjkPZMMDrMWZTCn3bsDwMKb.ZEpElr6X6QY2YVs6XBtnH0G6upJ9OfTetR8OP+CTQOyE6cbhsIDnztOj34LyYlu4b4aNyzLiGRxy4YNtyuS+Thi6m30pOSzc8tXJyY6MjB1gjKPo7zdoNq0OEmmShbbcm86jivc94bTe+0JqgiwrPRgHGmGwogj6PSnhBoMabaZb7V3HxNzDqQe0FaGxYqyi48.zLqWUmTb3d3Nj6gkCaFOG2SsYDUvyZIvBRti6bqwi52pKeeld7OhlS2MlHaTyoELQZwawiijHVJ0Y8tz3nlC104NvrzrvFLq1Fbdu6RinCkWXK9LUGnBMrsGtyLJ7lcD3UyFdUsf2XfjqEjlSCoy40JLilJJ5Qhmy5sMSPxZiAytMTzi0Yl+12acNLBlXwD7djsxfFC0H35Uqt.5ZUqVY4R99W9xyKGBBixHsIYDvShDbjnKAAtkmyi6InbFz4yIY65ChfXh0K53AJ40P2DoBeVrCQrY61jPQPYqQgLCqbkk8KAKI51L9t0Ly1ywYp10gIY.pgoYcdRJmAMBJq5srDtk7orXJifZ2iEplYNS0qTwLdbP3.sV.l23djJk7eYIeD7AaTFGkuGYeDXE.+kQZLODGi5.tZX8uKF1Csy3IU2gWKPMCKfdY4DJq72htTMogqbB9EPipG.6Ey7tOUz0dlAi6EP27lnKc8n0TiYj0ndUzE0KTLuSsp5UwLYp+bTy6h4DwpBQFc2dBRvX5+wDgLsbA0ZXlqlXFIt1hQXAdQNjSQE8gUu1xkr6MijBZHBjF24MxxE3LgLIMKnlNJ4.koepNGIDMNg0www6B4vAi5az9Ov4qWlRVtesjI5+0cqB.F.QH8ZfKuMNNmnm7A8RDMk6pGvAiDiDLHXInSEzv3gNZDKocBz+KeQoib03zt3gR1MF1HK.oCz7QrjUpr7foIJCuOrRLfr4APfOl0IlD7DHRopQOXy7XZjnaPkBA2hP6zEL6+3Bnqr.pdEjY5dWv19coBxaGaqFS6vHQ6PdgHPE1kIAqz0BwgJGjDPORFEFToB5qQkuP4EPuCafxgfWJiDIytO3vNBUbzvHhgdhh7R0DZ6OEY8HC1AGYugtzMQUWrlc21gvZwz1nfip4M.MqnGfYoKVdAOUGvWY4gogGn9kLMGBZaQDnVXAZOvdMf.aoCQfszTIvVRZdLZ.yTuLLvTLVhyhdUpLdFuklHim+K+eDemjT+ZSgvqXuNJGmkbyOgstldq9Pf79RTJmICqW85GknrnqhPrBYGlkDHI88mp6exTjKMjhzeHAY85Glfrd8oyPVWdFo+P7cTJR+hNmBCoI948lC5CG83UA5whiG+PBrIvMFnbJVzhW95UtH3kq9AfdbDmvjXGM9fIvMNcpwwwL5+13E0zhuSrhVDR2iKH2WC648OvGc3tZ2dr8Y1UwxUXLcaV6IqX.qWxtjLKhO0.ghmGshbuIWQt8EFB0oVVCjy1lQE2Okvlz0HbL4iP06yXPELTgp18O0T6dqXZDIygBkneZO0AtNJ.atCzyZ292Ww4Xq7Rinr96gauA3Qk2fv.G.hojLAUt6c2f7b35X56SLu2Fj78.GKXjFxe.S8aEwuX3B1f2neQim0HgFEESZxyoRuSAt9iUx60tM8ERS2EbR3QvB7kd2imkfio+LIpIISlY.2zSZEGBkSogRoAW7QlrnPxY7zUUXAEmexBJupSi8kogEBdZitpzvBIOrgy6vtdIqk5Wdh0R8r7FvohxlWQ88mqL0s2QsPZ0d8J1nYtIswm2yvXHgimaaWGm9xez0Uds5ibkQ3xp7ndwxCOsuAq7XOSGRPXesQ4UCY.35aes9Ces14NdWqc52593B2y40jJB6Nd7NyXvqL+6eY7ZdjfRd55zJ.6bda88S8EAl63w+T.kw95.yXgkOe.VrJwQgkuvaLW6dDvsQV+QeAme3UlhhLhZ7a2n7qtCfbV3HF3sSR6AkQbGBqiURFDoXv01rzdBa4OLmrFbrVG0Yp6zMifirmulvYhjX7HqwsnqaMG+5qarANIkx5XOls1ZGCWlQz4arEMt34hRj6DOYtgiJIU+yXNOskrjMaAaxhFzzc1i8q3TapuhiitlpNP4DYRxOu60KoETRRHAhXXPdr7.I2YjGcnaWc.DZQXQpFuA9LcVS110zYsAcZGVdZsw3rdCKY177cEkPO5aDMrbZKe0afPfUS.+jXTGKYzPEvowyEGV1GLS23d.rwRO7UdE6Bz+8jZeL73eLViDbXF+og5JQj9iynj.6alJ4Zdu6JaipMnDDOupKVUd7F8oggRhvKUywY75T+DnyUNA5b0SfNW6Dny0OA57Mm.cVZp5HeV5U6I3I53ePPyMUkB55tICCQxpTAm+ALTHIGD
Here you go. I am sure I am doing something very simple & stupid but I can't see what
-
@rzrsharpeprod If you want to display the range 0 - 100 % in the UI and 100% in the UI will set the saturator to 60% you need only to set:
value * 0.6
in the knob callback and send it to the saturator module
Saturator1.setAttribute(Saturator1.Saturation, value * 0.6);
since you want the ui to display the range 0 - 100%
no need for extra code in the custom display panelHiseSnippet 1835.3ocuXs0aaTDEdcRVnYAi.D2dbjkpz5RZv1sDhHTUmqPDsEq5zBHDzNY2w1ixtyrZ2YSpoJR7H+r5+A9CvKvS7.uvyvYtrdmMw1sMsk7PqmyYNWlyku4LauTd.IKim5Ta4CFmPbp8lt8GyDi1dDlxb1eGIgCHYBTBOIOwYqwI3rLRnSsZK9kxcTa4kbT+822bKbDlEPJI43beNMfbKZLUTRsW2ulFEsGNjb.M1Z2Wu69Ab117HdN3MK51xIAGbDdH4NX41Vv0o1qsaHUvS6KvBRlSsk1hGNt+H9IL89uOMidXDQtnsSePQZx6wiBkdrjpy1inQg8JN0YNfV5UFCVTGCdO2aSCoSnWFKdaECToD1wiZKT08Vrh60118ZY4dSwkpY4RKoco2wsePJMQTxQ5Oug69LAIc.FB61thduNK7mdtaygcvDqFiOhrWJrXhD9q0p0JnOsUqlaT2y6S9jkkaAgQojAjTBjIQBNRLhffzxw7nbAky.lGSROzCHA0DaWx3tJ5sQ2.oJeVcHQr6fAj.geCqcgLaqQyM7pClD80L9gsMZ6XbpZcGPIEdMnls4wIbFrvughaCo6V2ixhnLBZPNKPoYNSwUJXJOxOnPpU.8FkSZV26w08PvevAkwQYGQNAAQAHeYnFwCvQngPpFr+swvYXPJOt0A719JMrB5wMhorFeN5pskAtFw3GAKZcJbVL58DpXjslgf6kQ23FnqtV3Vp8TwFcZgth1PQ7gsaoshQYp+47g2UyHhMEhT5g4Bh+T3+sDgrsbEkML5pGlQhZuZHVfWkC8TTwXv5s2ntM2TRBHgvWFbW1PKSfSExlzT+15pjSUg94lbjtnIIrMNJ5PnG1uZtQm+fju1L0sR+ZJyL+qYqJ.JbQn8pHkO.GkQzJufKQzSdptKGBRLheQwh+vlnI0CC0drD1wW+eYqJSjaFkLBOgxgQvAYEncflUIR1r4FEpILEeBXIF.1bWnvGyFFQ7+AnRokQN3v7szPwH+lkD9JBc3HHr+iqft1JnNMQF0873amLhJHOceayH5PFI7.xiD9pxtToyJSsPcnJAIcn6KqB8a1D8wnFWtwJnmiCPi.HKkRBkc2md1DgpNZREwjLQYeoRg14SQZNo3DbtyF5p2.0Z011rsKg0joCP9mWxu.jrodCFSWZdAOQWv2biIsgmp9krMGJZ6SDn9XA5HHdU.fs9Y.vVet.XqKCOFI.MkmhAjhoBbVxUIxzQ7VelHddOt.WZLOGcBlITn4YEZUBuOBeLAA.Yn0.jpLdg.x8oTBhO.0d0VnQvMBHH4jGEhNj.Q90PCjZvVeEBqE7JpMYDIjinBE+xyTUrLK5leBGQyIQqqIvrunvhcjASMFWmNmGVrjUYAUIsyhIBPhddyMYOa.w0m.H5MANrSmyBG1oy7wC6HuQzah+cd.QuRlyAOzTs7Bi37xCL75.XX4kguLcrYfDpxIVXfWQlgewwAqD+mELnI7OCPv4iANMHPumF.nF+64B9yB44NbA4azt8xdm5gNKqAClJOyoJRZgov1X6YKnOKO9PRpEBmZivTxUG81c1ida+xf.cWk0F4r8YTw2jPXy58BNlVQXL8ELdErUgZH82xLjd+HZHI0gByh+5tpaVcTNb4ic98a57LK75UD9I+i+ecSm6s+NPFU9TAi6.tXBIUPkm9Z6PNFd2k9gCK6tCI6HHwBAoIPGfpepd7il3sc4cGWt3gcioggQjd7LpL6XenxxGLf9HYn6xNw7Pv.ef6c3ow3H5OSB6QRkcFvS5jQwItxqock5EuvQ1rn7jK4pGevxUb9IKW4IC6dhrMrjvC5NR0FVR4dcmholSntzT+xOXYpGl0ctmmYGRrM+Ry5jtrqAhvx9O7XK6+KG2047OJDdNJOLORdso8aTkW0YXHcF6GFJe7GCbxw1Ob+k1CWeVcw2wsGUDLZ593BSwGkMauB7Qyy8q6pm3pzAWxcuu6Uza6Wvx9uag8sFYQY+22cJOZthCsS53pe+ku+IlgbLj59Qu+G8jaAdKKnRfb+3jbXrfaQXCs5bfp.iesOKIWXS+dYjsf6pFpti7fQoDbns95AWzQhvUrwWQ21RG+5u0cGbbBkMzdO6s2AF.JCo2q6dznxO1Sr7j3VSxAlOs3mQbdRe4HX1D1kEVrr1hOy4o1yuLQOizPX7fTIhl6cxi6CiXDPfpDFzqJuko1Bx6CzqaU3B8IrP0h+E9yvrsbcMCy1ELsKEeccv3MbmLHr4iuUNXb0uvyjgjKx2O7O98aBk.aFC4IQ0DKoZoBjz3YhyR6kVnaZe9poBC7gtkmBzKBf0ROaciy+CA9+RF++CaDiCR4OHPOdgLebIEE3byTMWK6da4ZT6yNThi7ZL5CBBpppyIXmKpfW6hJ30unB9oWTAW6hJ3mcQEb8mtfxO97l4BdrtOww4181UMGXsZ6xvPEupkw4+..F6UiI
-
@ulrik Well now I feel silly...but it worked (again) thankyou
Just out of interest so I know for future, why didn't the snippet I posted work and change the saturation amount?
-
@rzrsharpeprod the percentage knob spits out a value between 0-1, and using
local gain2 = 50 * Math.log10(value);
on that value will result in a value between -100 and -11, and the saturation need a value between 0-1 so you could have set the percentage knobs value directly to the saturator, but you wanted 100% (1.0) in the ui to set a value of 60% (0.6) in the saturator so...
A good way to check that the value you're about to set to a module, other component etc.. will fit to that range. Use
Console.print(value) in your callbacks
-
@ulrik said in Custom popup values help:
@rzrsharpeprod the percentage knob spits out a value between 0-1, and using
local gain2 = 50 * Math.log10(value);
on that value will result in a value between -100 and -11, and the saturation need a value between 0-1 so you could have set the percentage knobs value directly to the saturator, but you wanted 100% (1.0) in the ui to set a value of 60% (0.6) in the saturator so...
A good way to check that the value you're about to set to a module, other component etc.. will fit to that range. Use
Console.print(value) in your callbacks
Awesome, thankyou. I appreciate the assistance and the pointers :)