assign FX to Effect slot
-
Forget about this, I didn't know how to work with this, stupid me :)
I've been experimenting with the Effect slot and assigning effects to them, and noticed that not all effects gett assigned usingSlots[i].setEffect(FX[index])
for instance Reverb and Phase FX will not be assigned to a slot using scripting, is it a bug?I have not tried all effects yet but there might be more that is not assignable.
-
@ulrik in this test I try to assign, Reverb, Phaser and Polyshape but those 3 will not work
HiseSnippet 2378.3oc6Z07aabbEeoo1XQ5Zml.2zbpXJQOPVSISpOhKpp.oLkXrPjrXEkicfpq5pcGRNvK2Y6rCkDShOVfdqmM5k9uQuYfdp.4PAxohdwnAn.AnG7+AsuYlc4NqzpOrhkrfhIrj479X1ey68l27dypVLpMNHfxLxjaig9XiL+.y1C838Zzyh3Yr7hFYxa17Qn1tTdfwcG5aEDfcLxjI6GK3mI2XFxOur1csbs7rwwjLL9TJwFuBoOgGSsU8Og351zxAuAoulzyTeYapWCpKc.fkrlUL7srehUW78sDhcESiLuyRNDNk0lawwAFYF6tTmgs6Q20SI+mRBHa6hECpZzFlHE4lTWGAhETMZzi35zJZMGXXjwrUrEHqxBbSyUINjQzisD+PICTrF51iLW4nfWUc3U4jCuLZvaLE7dOy11LhOOli.aWybYONl0wBbA5vRIqwU9y4LaPAI73S125I3lLXvHMJ9QUpTFMakJklKedvMDvQ6XwPfeedzl4kwCS1EyWpSGrMuXg0w6fYaWnT4CxR5swrT40pmUvgvpQOJaPP5ZQcGFzyxGWnT9GOW9bvGjFFkAlIgofTyGUrfZFjRTMwTmh.ScbBL8wIvLGm.yJDHbEjCs+0QyG0xxC6BqjH2DLKMn88odvfhEB4WP3gt8sy0FyQTlClkahT9jm34R7vnNC7r4DpGJ.yWSHcQoNkx+E4QvGWpskKh.OyJyIIH+UGJqnhFv5WA.aRWrWWdOX3stUIoHeQjrZyhmCdOPK4CXSximaD+PNyil.UEUS4v.Alz1EawJVB8KiIELxs27QaJ06wByvxNEKUZtbiP3Sy+TkQXWK+QqwbmH6.nQQhydUKifeOkvPjSg+N6UEPeHR.ADNpHNSoyYJAm74.4mTNa.6RRJgdnIYXeHgAuHP8ofyR.zVqqit7QRBK2VBQWmNfCvrXDLK1UBrtS1ARUtfqaQdORfvPTrv1cUoHKTR8PEgN6BvKRhGRb38DOZImdZbtGlzsmDUgpE.qHfeOzsUKtH2rfuRBB7cHZ.oGNjPTUDQN.q.XCDwqBroAWHWPec.KmVOHidrEU5gaLfwfv7PmeoHmtPiPoE+2jAC1NfyHdcKJGJiPVqSwBaUnD5VHvoJIq.mTY3ejNHEfbr3VPPGw9IXGzOcdDAPtD5gFZvK.ymy5.Br755hKt4TkQSAyqzP8yQjxfkdBzLkUDfu83xnokOlPPNOpvR884CK.g451iJ6cm6zT9QDsmtkhi2imvRAnxgYs6BtjtdXmM.1xEcYzlUJqCI0..JErAKHC6TPp9SgevtA3Ww0H70XiE7769YW.W0oBxC2N.oKByZtZi6t+zD5aFWkNH.2vx0canzi3civocdb4NRzQroBEx9v2VIjPDMJmuQQhe4WhTDDKDHjDIbWnjxTCcvH34QqZAm0zwkB4qUhODdlhGuvdWnfX0iD+D+L6KVfOvWD3KeL4RXGo99Gy7J8PpjnG.PkO3bEJeZXehpJdBjHBU2uCEDI1p7YyMRBsjqBEibrDOR34g4GcTmHhARI.A3SWFhZKM2nSAnd2mxwq4UT5TgCSP6mUmNoxSbzLi55BydZrEUzxNJEK5Mn+1XVYHPwc.djfPocIqcz7vqcTuzVaUkBZBR8VFrDq4i8NrJJMBKu.91CVdQvdKJxLjFHmOlwIBHjYQ7NP06pRNyYtHN3IbpuT1vZRLxLNWx85QEjJ1GYPbDxGtqxXO8J7GpOXWwIUwD9s06I2KMhxyY0iyN.Tem+G7Qv.1eR2MZWJfz20DNhDESv3fkLCEtScF3ZwSVMunElPFfaJQYyhRi8BH7g5s3blTh+IEtumYKB2tW538JofWvwdVi2vFltto5f6XvNFD.b12cjNTtgBJWyrMTIkrLbIP9.4XzCs1Ai9XrGlILpUOhFY+GmzFY8OwMxtFbX6N3MXVdA9zfDSbabexFvto.chOH.ZOC+6WW3k0o2fZwRk0Kq0DVjopSaK9.lLbYAH4uGOQ3Q1uiMTWIsNVG6BcC0meIGxdxf6wzyetHL1lz22Euj2NXWHIsDiuOjUti0.WdD0jw0qR8n98ndDacm95Xn.5tcwLcrm5BZANGxmFS4l0WGCsroG.+ypuBD3Yw.6D9TZKpdxsEGk+5CMUvEI1LhtbjTO6knj5uBIPttFVFOBKitEH.Bpq6ZDkDmCBMRti55BWHXXeQrNzBeLwEYjcRj.NYjqQ801AyBrfsZPSlmRqd0uS2tWpgIvNcAvuXEWGlZ5FgolTWJnDtiaFNP2yrNk1uM4yir1+km8rus1hfkN1PWe5o+lZODyWAT1MVr+dsEYC2Gsus1C0JeTR.N9C+4XM+IP8uV6nOi6T52LTWXSWnQIFApv079C52FNt2FCtLOnrWQI7Yth3Ha03Jhwpy68bjCDEyFxrpXblPlUiXpaoulxReUHeuq0PoIN565VXIEQ9uUvczNn+CqOhw5IpvFxn2DicDUMqoA3E95ZQz0UPxXE5tsfGnnViQyye7qqeOxAnZrX8UIZk++hZafgNGfRyrSDldYvAMdTaRgW+szEEOR2IsQOFNnmdD+ZC39C35TNv4ruH4gwfP+sZehGVKR+ed4vPlKteytLnz5PCYzHcC48vVNLHmhdNfe8.K8RbeQMnd3DlwVz.dShajLO+q9p+as6S8lXkQs.f9M+o+cRWxYWX5IN++6JdEbu4S9eNGLbUkEYbS0aGJ7nkvAINZI1KKSRoe1vy+I+g+0nzY5BoxedYKSzUi1.IeYagEKMtZTxDQhj0Cvd1CqFaDFVeD0oho9r56y9865z4+TKQx82zaPde0J76s6QtlYXi9idavwi0c5wWGfdwsPMW6+1AdYsVLbxaFAJ9CxdteZuY86+Xy3Uz2+b9YiRPpdayRKxML0es2IaWK6YQW4Yix3HeIPgn3l5nX5sjrNavx4hM+hlecpizV95oM7WMe7ru0G+Z1GO8ENeb025ieM6im4b1GmVE0+nD.ZqCVdc1ylxqeajxqRjxrmyQJodiFePhyf1Jkq2H6410a71vmKKOi9V1L5V1p+BIDwgiKo.9OO4e5u4LWULFU0P9WMAnmYkIqXzm3P1x1V7ZIl.JFOccl5TnyzmBcl4TnyrmBc9nSgN24Tnyu3H0Q7RaWX.m1W0rEPn0Rx+TRxjYIOKXWnLUfw+GrYmuJC
-
@ulrik You are trying to affect FX module names to slots.
But slots are waiting for FX names as they appear in the slot list, so SimpleReverb, PhaseFX, etc... -
@ustk aha, well that explains a lot :)
thank you! -
@ulrik Love this!
-
@ulrik Do you mind sharing the working example?
-
@Fortune I had to rethink about this, this is my progress so far.
You can assign any fx in any slot, you can drag to swap with other fx or empty slot.
You can set them bypassed/active and, I hope, be able to edit each one of them separately in the "EditPanel"I have not figured out how to know what kind of values all Attributes have, is it ms, percent, db etc.. I don't know how to automatically retrieve that information.
I could use suffix, min, max values...HiseSnippet 2662.3oc6ZktbabbDdAIWWBqhcjcTkJ4ei2JoJfPPH.dHkHFFQIJBGVwTBEA0UwHoZwtC.FoE6rdO3QEyGB89jejGg7HjGA+Fjz8L6wrfKAgojbIEKpKLc2yLeSeLcOMT2.tMMLjGnUo59m3S0p7Kz6chWznsFYw7z149ZU9U5cdJomKOJjzgGP1iZ4pcuS7sBCoNZUpL+2fBVo5BZhe9g6bOKWKOaZNIMsGyY1zukMlEkSs6l+MlqaGKG59rwJRu5l6Xy81h6xiAPMudKMeK6WaMj9.KTr4z0p7Ya6vh3A8hrhngZUV3dbmS5MhejmT9GyBY8co3f1Z8fERRtC20AQLRUaqQLWmtoG9PMsJ5cyUEyKUEWWeWlCKidtJ4ZBFj7YnpOpL2zfWaU30pT30pL3UQAdKHg2Wp2yNf4GkyAw1U02wKhFLvBLApvRJq1bO4qz2hCR3E0br0qocBfAYyn1Ma0pAYsVsputgAXFBiHGZEP.GfMHGXXt8X+nSLaXXtUbvgzs+N7i8Xi8co6QOjFzOeL5TfitO00RLCg0mFHoML.L6h0YDOHND+T2QVgzNOUrBVQwAVfFTH7IdViY1BY5MxxGkw34EPmz2DAnvys4PZDRpySqYt8fAT6HgDsMq2XpBr7EIvJWj.qdQBrFJ..9p3ODweUPK20xi5BmjTCDrJawG6y8fA0LS3aB1l7Ig9ZSeZYRfSzv3F2nZuir7ICh8riXbupKc1eLXdtLOZlLjPXF0XNG2tAA96kqa7OLp5xssbICNtMryBSvAn.3oKkyxpbVF4XTEjuoX0.10ETRNVMCn9fSSTMf5oqKvY28TAmQpfgT37.RtGONBPYsTTVan.WCaN.tX4ttt0hFwBQkQMy9CkWnXVWtmnl6H.coR7DlSzHbmEbFov4uRYCGI.UxzBgCDveD4FxyVSWp2vnQB9RIXvmG.2TViAx0ZcBi7mKJJgs3h0MpBXUH+fiy0SOWX7hCB.SmzwQr0B4hnGGIOFoTfPCJL2AGiyZGGonIDw+oYXb+vn.l2vZhgLOG5wObPMyWZVmrHArlBxRXIlL7a1.BXbZxBSu8nVcx2+8I60FjjKA.7KN.UyQErolsN9V2pi3GSb4NE9C0MjVpv4lmbxl0SmF76gnoVRWwVBWiLV0ZlhYgDNVQVMscY1ul5P95MHrLbJcK.eFPG3rGnXs7F5RqcvxMHKC5BgY8OPXM.+hkHq1PR.9zyaPVQrMEgSFhS44DXczccYC8nN6CLEJ7FjCZ0PcokCfkzzFLvATm7yqpZZFwJ7w7CMr+Ce16QzW5lc9mmSMNstLJd2st2j2wnFJuKONjtkkqaeHMedrLjOwKRDOSlRHIIg84GThRHVqli3PJJxcTNERJaP10BtwdfKmGH21lm.qCtj0I2lXZlrJnOljc.ML1E.WUBZsHvg.tmehksQxthdqnFUf1SMJrNo9oPzkj.pVyV1hxnh6TZyBxQnqtmiQ08i7wvBw1TsfUk66eAqqveQlO3L.pwYWqD4KC6K0VxCQBF.Lo6EHRtV4YqmIgRdBbhotY8nQxDfGGECYeFS8hqN8bZX3Pp70rBBrNQIuFZ2jEUT0bIxD+BJFopIExqRnh6nEig0iv8tAev.wv.5XvOf.N1hgkuF3mXdgzfnTRIYIEoO.H.bIIPSb0f.VM8iCGIXi5.zoRIdploO2O1eW37uCJrYC4Yo4q3LuZl+cOwslXF1hJfNOMQQpnDmVMBSQsBQCPBe49JTogGwhrGIOQIGDanbORIZkaWfmhtAYTse.050qmIhpIPvGIH2coi2DxqXhDhKM08SxyoVsRY4gKjRTr7SWbX2xj+qS2jRwkhuh.WByeHZ6E6.FrJSLTMDBfnVAI6+okrVxzy2dB3oNqxl.TU8LMEG5.K3tuIkENpIG6buxoTX2141spytmkhwUs9yKxrkUPpW736FAUC0OFdWVVYSOPkphzVphdPdYsGZ4FOIMH09qThayK6qvVpV22D6QFZxjFpliIz843PF1mMNotPDMRNSrBv7SLDovj2+UjMj6uY9xZdakyZCjmbQA5xO.qg3vk8PBzb+XjUMXEw8HmipsN2T6KdfRwx4SsxEV0oUW+kplcj0gJrjvNkCXdfxfhG6EJKuuohxVVAA4uPZeSH4atjvhsFjbs.gUWuvaCNBRVNwRm+njVGuxJxJjyeSQ.+HgOibjsXdIDLjEt0giOkKI5CtR+OUujGYTB9U84lwxoSJ9DicNHo3OIhxpEDfq7yKsZ5+97zJwKeSTKvOYSlrhSUvCuCBJ9b12775O2m6adNav1dCAuplN739tz848juK5vlRmbwVtb8oss3KlZMK6sbpKtnxiSXjeeAWlMTGsDoc1yTf8QNwpEbCxJoN61Pt2C3QzG5USDb.QajIYMXPo7v76AbWWZPorwtwELsIVCPder.WghKSPsJKTruW5meeuTaKmsroEJBx81wiE8Pep240rNsjNc.e5Q6benhQrAYIz.47gZFXHDpbe5gLaprcYU0uOM70QbesJyk0dDfbjf6mm1LM7pHMlCJeRBLsiU6N4IpCNBuCJmvK1bj3pmLJ+qfMyc8Ape1+E9AY.o54Gk9pG.o+Rc3tARNgh0voU4epelRkLTp9wHuxFi7hILN6bJVTkgH2uQR27LTakmQde7LDMwyHoCdFIsuyP16NijF2Yj00NizV1YjzuNzbkotMNO08U0yxDnnv+O1SSgCp2ypvuHUaZufPywadyadLNs7KAQpu3EuPXjJ2zoc1NwdM8c4Nwt3oWsIwnxKgADAUnarXGW8BYQmn14725NGWZrxLB2uTuKVjd43ctRvKDy89FuI8g+y0k0xkC1EfXy2sMc+hfxWHgxU06AIQD83U.jesXL4IVPD22P8nhHf1S46G4eOqe+H9y72OxCsifse+.KuPedXgEtGcLaeHxKTk3if30.52sGZkUouE2JnTV+vc5.GxRmSRTO3tb2w7XunBtGyOy1jeDeOMK7Ay2SyaSz1a+kCyOav8B9pjplhQ408a6cH0ExeJv3WAILE0alRsne8tbOt+HtGyV0nuGEpqZ3PZfJ1K8.AOTAtONmx02bOJ7jSUG3e2leK33YE.5I5kTWzd10ESyd8azkvkfAij++3R84+X6R8KuKeIe4tWQW9EzI15uPW8aJrHHl+8gu17o0jlz8EAJtdAT7RAq2OXQS9F6g6ZAQqP0V5OHdbOHghMELGdPIXX86UlCSJHG2BGKyn34HFfkCkvrMNtRBy1oL+IYO9wXWW9CB65xext9N1ttxGD10U9jc8crcc0eBrqWI6+zSYO2U.jeaAf7REtmeo8ZZhGJqR3IE6Ovy1rjh+2AptJHpK20JXxTwuyNxKLy0KfGoOdpuAKQET4eLAXgKwGO.9Z5cs9Pvg3miW.t1GDI1V6SI19YzdL1xNf+RaYq9QmkqHn.1OOw++aqpuKNlzVSz9eXd5sZ1RaLyg8Raa7QbKAwukOmkuDyYkKwbV8RLm0tDy4lWh4bqKwb9iScNXKttabDer79YfP2sEemHUprsmEDEJhX09efiH6N.
-
@ulrik I would like Thank you sincerely. I was looking around exactly the same.
I asked about it in one of my posts. https://forum.hise.audio/topic/4540/how-to-change-order-of-the-stacked-effects/5?_=1631765949078
@ustk taught me the theory and logic behind it but I am not a HISE expert . Suddenly your post and your practical Example showed me the way to achieve it . FINALLY. :) (y)God bless you @ulrik
-
@ulrik Now my Question is How can I add Knob Slider with it? If I want to modify the parameter of Effects with Knob Slider from the EDIT interface how to do it?
-
@DabDab that is what I'm also thinking of, to find a smooth way to edit all parameters without to much scripting :)
If you come up with a good way, tell me how you did it. -
@Christoph-Hart is there a way to dynamically check an effect modules attributes type (suffix), max and min values?
-
@ulrik You are the hammer Ulrik. You get everything out of HISE one after the other. Unbelievable. Admirable. It's fun to learn from you. :-)
-
@ulrik Does the factory method of creating panels, buttons and knobs when they are needed help?
HiseSnippet 1615.3ocsX0saZbDEdWGuowzRUhTkxsi3ltnPI7aRSnQIwXSiaisQkjzJEEEMr6.LMKyh1c1XPQ9cnW0mj9X0K50UUp8blYWXw1PAr.Ii2YlyOemu4bl8vzNv2gEF5GXXt2qlLhYX9EVclHjCZNfxEFGc.NQKpizOXB40GYr+jQzvPlqgo4M9dTBy810P84ud59TOpvgMaJCi23ycXujOjKmMa6m8ibOuVTW1q3CSIcsmcjiunoumeDflaXUxXD04Cz9rSnnX6XYXdyCc4.R5HoRVng4t666Noy.+yDZ4eCOj20igCJazALjd5V9dtHhwYMZNf641NIpCM.qzdFGbCMG7UVGyc4SmeFWba0BjYZjlOL2YYvqbZ3UZ0gmYJ3sqFd2wpiS.ejb1JH19bqiDRVPOJrEjFVZYM14O9Lql9fDBYwgzOvZE.Clpg8CKUp.odoR4ajMS1L2+9jel80ddjnPFY.BvfPRnO4LFwgJHTGzuD4.1PBiFx8lP7fXNf3KxlA1DCkjORCHiDduPoK4Ij29tFoWpqTrnk75dAsTv4UCXjdw4gCYxA9tYyvEdbALcjvQx8EDm.Ffh1TAyyV.IMEHiKPljOymxlg.e.qbLrQRFgBPrOi61mIyqVxy2g5Qzy.tMgmnttWxZMzFS+chfgLbyXDKPxYg.yN7G5b5IwZQhcO9I2.Fu+.YtGSJC7cp4AWKGfSWujZxym2OZjUzkJoE61WWi.3rz3VspT4QOpd8FJwRKKBIHZk+jejDXI6DVxtuNj+zTm2uXOnf74dd1xA7v4cR9FWEb.lDnFbSj.7IjFn4zTTItzb739QRI3bjRH2ijaeoHWAfDv+l21SyLJNJJbfMLbco7Y1eNpeDM.zqo+vQ9B3AfrU6OojPxFmLMZCBZjkD9dztPdzBH.HKddB3knzSw2K65EG+0tP7OM8WG+vvMI901eEh+4iO0WALYTfHNOpQlyajAqAmUfJ5pJJBg36AIkmMUkdDZHYHULIV2Pb7D+HhfwbSHJ8oIJkhB4h9DZ7TjeMBbvn.1GAzoTqGDUjyB3RTrJkHX0dXwhEylome.wl+jRMH7uKANvy26d4ylTsiH0IJXtXN0NB.uoSamSYgb.wwmmr48H1W1HOgDIbY8.z3leFAO8zt2xeG3nzGFkx9EHvd9zsb.1r02BWDQXvXmabt7KZoI4xCExmi6UHuep.NvFVFNK2yqK7RVBxmvypMntpJ0vKe7pu.JHP9Kv2y1IwCE.l1KhoI98zI+b2w.9mUIyA5Z7o8loDF+wxFhusDjVYExSI4N8jbjGC+qUqbnTnfcmxKtieGl4aqqUKn0Fs14MhyJ5hIZSccdRWT9XT2LNdsSGJn1ohwS7krSE1vaMxrWlyyPt3R85ckqEaLOVvUtL1pSvxTzVDMrKKHgMSDDdm+7MUXs3lJR2yiiNMOkf9hiDb4oiXhE0pgQbsAzzwMiQEHpT0xwWF2xg9XbCtK1ugJmrDvjFJPmtwOiU2.kutFnx00.UutFn100.0uZC75iN.dYL1DX7VyrS7g4Nf8Qn6ZcKg6Yc.K7CR+Qp8t3pL3YsiylzvH5KkeuU7lmwXHkx7eLMLlfObWvopVQ.KdyeOFE5dVvYbimwbmK6i+mLDkexXD6G7ArBF+0EZYvW1ZbgWQkBlFKNnTuXcN+Au76B9yFdXwFWiDKK3Hmk4nKwdk0d4uSXueaavdkWA1q7RYuxqE6Ud8XuxaL6UQ6klId4O2FrWkUf8prT1qxZwdUVO1qxFydU0d4t6D6k1laA1q5JvdUWJ6UcsXupqG6UciYuZZubPhW3aC1q1Jvd0VJ6UasXuZqG6UaiYu5Zu7hDujaaT4VeEXu5Kk8puVrW80i8pOO6c4Ko41VG66F4Qkye+Q3klEu.z+2bWTCdYLhPtbR5KUaqboRqJbuiUatzYvUi2ctB7haxaY7FeEcYsNrWOlibFX20p0ur8uONC88oz+XpLfioKmDMrieTfCCPh.+cnXlyNX2e5wkvwHyzgIbUC9W3S7hkwwlwKVNYQigTm.+26naeDuDvaolAvjPcWn6YcLNlTNomQKqREKYLj6xeuiCREeCf8qVmJafNU2.cpsA5TeCz4AafNObCz4aWpN30B+7Ho+PcYBLQ6CU8taZdnfBYYpLRi+Cr0gNYA
-
@MikeB thank you Mike!
and thank you for the factory method, it might be useful :) -
@ulrik Man! This is awesome...
-
@UrsBollhalder thank you, but beware, I'm only experimenting with this, maybe I'm doing something really stupid
-
@ulrik Of course... I'll just study your code and then try to come up with something myself. That way I learn how to do it myself and am also responsible for my own stupid mistakes!
But just seeing the possibility of it is really nice!
I would want to have the boxes move while dragging for example, even if there's no mouseUp happening, so you get a preview of things so to speak.
-
@UrsBollhalder said in assign FX to Effect slot:
I would want to have the boxes move while dragging
If you're refering to the "not dragged boxes" I agree, this is a swap so it would take some maths to calculate though, consider moving the last fx to slot 2 for instance :)
-
@ulrik I am studying keep practicing from the Practical Examples /projects. If you come up with the actual solution Drag Knob Button etc Panel and Swap FX Slot do share the snippet. I really want to study your works. Another Work I am big fan of yours.. That is Color Chart. I guess you made it few months ago. You are a big inspiration for us.
-
@d-healey @ustk how would you decide what type of value, the min and max, and suffix, to get from getAttribute()?
Would you make a long, long, very long array with the attribute names from all Effects and use as a look up table, or would you use another way, which?
This what I have so far, as you can see I can manipulate all values and set them with setAttribute, but I don't know what type it is, is it a boolean, values from a cmb, etc...