@treynterrio Yes, my Mac has been working for two days and two nights, and it's still: in Processing................................................................................
Apple is too unfriendly to developers.
Best posts made by Felix W
-
RE: staple process error MACposted in General Questions
-
RE: The world of HISEposted in General Questions
Hi,大家好~I am from China,Is a composer,I am very happy to create with you all
-
LAF a vertical slider using CSSposted in Scripting
I didn't find any CSS examples for vertical sliders in the forum. I spent some time making one, but I don't think it's perfect. If you have a better way, please help us.
HiseSnippet 1349.3ocsVsraaaDEcnsYZI6CT2lO.hDDDo.KCRZq3XIDDG+J0HwwBUNAoqBFRNTZpFNi.4nDoDDfrneCcc+B5uPK5WPW2Us+AcSW0Eo2YHkHssPdHfPBPo6qYN26beLcREgjrLQJxv9zICIHiO2r6Dtr+d8wTN5n8QFKa5g1cxPbVFIBYXr78TBLrVAoe9m6rKlg4gjRVHziEzPxCnITYI2N6beJicHNhbJMoh1atyQgB9dBlXTpZybQCwgCv8HODqTaISz2hy5iLtgoKIHHJNXisI9dd9a2zs4VA9.qMHgX+3s1zycqla4uM.xKcPDUJR6JwRRFrn6Jhlzsu3477M3wzLZ.ij6ZcgcNmMZu9TVTmoQjLDxXkNkwmkyiOW17XZDcF+x3zWoE3TZQ0flwRuMH48A.IiJPZkbHspY2vT5PYoDEd9Lyi3RRZLFNapBkbcQK8mqXtm.zfKWOAOfbXJPLyhZ2z0cMG3S8111v4Slz4Y3Tm6yEAdN21Ypg8Hx8DICEbfn1UzRuREKDrmxvwUzOLk.9+CDgX1CDhA2kGcHgvpUuskkskcg9qmQ.fvnbRW4DFoaeBAVbaq0yzHOiQiHo1VVuz1xo344zHY+VN9tCG2tjaeBsWeYKGuywO.Rv5kJFwiZ4j1K.WyuYy0bJ+.NMnUo9w.5ajQeAokia6oLA.7pygoVsBHwhTh8LnEl62sbt90aOaEkhg.lTPxwpb0z+vHwfxMcu1TzJSw7LXMSZk+WFD9dRsFfF0mpRgueqRWbleuYE+tpSeUOOuY7Eo.zajhinixZ4r4LKrsdk5P47tHNFRQ.+ypz2t80aqoYhzVpzjZMZPkjj7ZZENsjjwPDrONR7bHFBudCGOeMCDRo.71D73Z.5WyARUBq445dMmaTXwyvrQj500pmp8z7.l07BVeeshXkUQbxqo1CslFj78yoeQCJOhLFXngQ0n01a6gUu436LgqBiCDim4d.ID8.WzwWIt.zA8Jbx0xkS4PVNnUCO3fSGRNe3v+7ppRYz+3bUWn5rXexsF91P4Y44yarl50ccuoKQilZ0ZNe01p9zrZa3H2VWAaoKlUkhWnZsnLsd63Q7PIUvcD7GJjjS30paCYF1ux147hhimqLUegTAiQRmqX0jhz2lg03iRBHoq4jmSLUQny3Ya2do2u1sEozUTTvOhSkmLjTPenfEoZip9+EaNiJ5yoZSWfPPUotI8WVzjtqtNBQgE4SL0AYjF7ESDe8u+u+0cPO5n8wR7zkAVQXWFRRkTkyXrO4Yv707d+Vl6SxF.sTz5VzJFY7MuyMc7rQv+FamIyHd8fcxTccgXlVQTBMJhQ5HxnpPekA++ZljLrKzUTw6kW9Wt2e+he7NIUua.BAUwUupP1n3X5X8P8XJKISBX6nDXVOx3qMeTFwIhDiGwjNYCf0Al.LfDcpPqut5EYXZ3CqTdsqh5m.pokVvNcoSN4j+PsWkkQJt+7Or7aNKWeE6UWc0+SwV0cpT42.OJtYPVvofjcEiUiMQWbtKLwWDMB5xb1qAntfTg.UDq5rW07UNDImTMp7Ab2.225cCdeg3plcnxv9yGiKMGLBIheLvXwMp9ByChiIgxR.th4gOYQu9z6X6+NwHIk26XLj6AmqlObTRW3fOj.6NmSXYprpkTkx4ztJZUDnKgGoIT4GEB8TzFEB8lJDx5CSEOMLuAf5NaeplCfIt9NsVlGqncNakedACbExmFFd1k5BF5unFtwhZ3lKpgMWTCu4hZ3VKpg25can5F92cDbAk7xFD53NGn6TaXb.GCYf5rUz+CvYqjRB
-
RE: Make the Gain knob smooth the gain?posted in General Questions
@d-healey @Chazrox
I'm back. After many days, I reviewed the code again today and finally succeeded!
We need a loop!
I would also like to thank all my friends who provided me with help and various solutions! I love you all
function onNoteOn() { local n = Message.getNoteNumber(); local v = Message.getVelocity(); if (n >= knbLoKey.getValue() && n <= knbHiKey.getValue()) lastKs = n; if (Synth.isArtificialEventActive(eventIds.getValue(lastNote))) Synth.addVolumeFade(eventIds.getValue(lastNote), knbFadeTime.getValue(), -100); for (i = 48; i < 127; i++) { local e = eventIds.getValue(i); if (e != -1) Synth.noteOffByEventId(e); if (n == knbKs.getValue() && Synth.isKeyDown(i)) { ADSR.setAttribute(ADSR.Attack, fadeIn.getValue()); lastKs = n; eventIds.setValue(i, Synth.playNote(i, v)); return Message.ignoreEvent(true); }else{ ADSR.setAttribute(ADSR.Attack, knbResetAt.getValue()); } } lastNote = n; if (lastKs != knbKs.getValue()) return Message.ignoreEvent(true); eventIds.setValue(n, Message.makeArtificial()); } -
RE: How to draw the rename secondary confirmation window in PresetBrowserDialog?posted in General Questions
@d-healey I am using Content.createLocalLookAndFeel();
Tried your method and it worked, thank you very much

-
When I clicking this button, a bug occursposted in Bug Reports

This prevents me from using this feature properly -
RE: Directly fade in and out samples from two samplers on one MIDI note?posted in General Questions
@d-healey OK, thank you for your guidance. I think I can achieve the effect I want in the near future.

-
RE: Setting the alpha of a color individually?posted in General Questions
@d-healey Ahaha,god,It's so simple
Feeling mine so stupid。,Thanks very much David, you solved my problem again.

-
RE: User-defined background?posted in General Questions
@Oli-Ullmann Yes, thank you very much for your help.
-
RE: How to set the text color of Combobox?posted in General Questions
@mmprod They are universal, you just use LAF
Latest posts made by Felix W
-
RE: How do I specify a CC controller for Knob using code?posted in General Questions
@d-healey I see. Thank you so much.

-
How do I specify a CC controller for Knob using code?posted in General Questions
How do I specify a CC controller for Knob using code?I'm currently right-clicking "Assign MIDI CC" on a Knob, but it keeps getting inexplicably removed, and sometimes it even causes problems with other Knobs.
-
RE: Sampler.setSoundPropertyForSelection(); seems to have a bug.posted in Bug Reports
@CatABC said in Sampler.setSoundPropertyForSelection(); seems to have a bug.:
@d-healey said in Sampler.setSoundPropertyForSelection(); seems to have a bug.:
@CatABC Use constants instead of magic numbers
Sadly, I tried using constants, but the problem persists. Also, if I swap the positions of HIGH_KEY and LOW_KEY, and need to move the smaller value to the larger value, the contradiction still occurs.
const var ComboBox1 = Content.getComponent("ComboBox1"); const var ROOT = 2; const var LOW_KEY = 3; const var HIGH_KEY = 4; const var C1 = 36; const var D1 = 38; const var E1 = 40; const var B3 = 71; inline function onComboBox1Control(component, value) { Sampler.selectSounds("C3"); if (value == 1) { Sampler.setSoundPropertyForSelection(ROOT, C1); Sampler.setSoundPropertyForSelection(HIGH_KEY, C1); Sampler.setSoundPropertyForSelection(LOW_KEY, C1); } if (value == 2) { Sampler.setSoundPropertyForSelection(ROOT, D1); Sampler.setSoundPropertyForSelection(HIGH_KEY,D1); Sampler.setSoundPropertyForSelection(LOW_KEY, D1); } if (value == 3) { Sampler.setSoundPropertyForSelection(ROOT, E1); Sampler.setSoundPropertyForSelection(HIGH_KEY,E1); Sampler.setSoundPropertyForSelection(LOW_KEY, E1); } if (value == 4) { Sampler.setSoundPropertyForSelection(ROOT, B3); Sampler.setSoundPropertyForSelection(LOW_KEY, B3); Sampler.setSoundPropertyForSelection(HIGH_KEY, B3); } }; Content.getComponent("ComboBox1").setControlCallback(onComboBox1Control);Ultimately, I set up two methods to call different methods depending on whether the value in the combobox increases or decreases.

-
RE: Sampler.setSoundPropertyForSelection(); seems to have a bug.posted in Bug Reports
@d-healey said in Sampler.setSoundPropertyForSelection(); seems to have a bug.:
@CatABC Use constants instead of magic numbers
Sadly, I tried using constants, but the problem persists. Also, if I swap the positions of HIGH_KEY and LOW_KEY, and need to move the smaller value to the larger value, the contradiction still occurs.
const var ComboBox1 = Content.getComponent("ComboBox1"); const var ROOT = 2; const var LOW_KEY = 3; const var HIGH_KEY = 4; const var C1 = 36; const var D1 = 38; const var E1 = 40; const var B3 = 71; inline function onComboBox1Control(component, value) { Sampler.selectSounds("C3"); if (value == 1) { Sampler.setSoundPropertyForSelection(ROOT, C1); Sampler.setSoundPropertyForSelection(HIGH_KEY, C1); Sampler.setSoundPropertyForSelection(LOW_KEY, C1); } if (value == 2) { Sampler.setSoundPropertyForSelection(ROOT, D1); Sampler.setSoundPropertyForSelection(HIGH_KEY,D1); Sampler.setSoundPropertyForSelection(LOW_KEY, D1); } if (value == 3) { Sampler.setSoundPropertyForSelection(ROOT, E1); Sampler.setSoundPropertyForSelection(HIGH_KEY,E1); Sampler.setSoundPropertyForSelection(LOW_KEY, E1); } if (value == 4) { Sampler.setSoundPropertyForSelection(ROOT, B3); Sampler.setSoundPropertyForSelection(LOW_KEY, B3); Sampler.setSoundPropertyForSelection(HIGH_KEY, B3); } }; Content.getComponent("ComboBox1").setControlCallback(onComboBox1Control); -
Sampler.setSoundPropertyForSelection(); seems to have a bug.posted in Bug Reports
Sampler.setSoundPropertyForSelection(); seems to have a bug.
When I changed the values of Root, LoKey, and HiKey in the sample from larger to smaller values, the HiKey value with the code 4 did not take effect.

-
RE: How to replace a single sample in the Sampler?posted in General Questions
@d-healey Cool, thank you so much! Let me give it a try
-
How to replace a single sample in the Sampler?posted in General Questions
I've been struggling with this for a long time and searched many posts on forums, but I still haven't found an answer. It's a percussion project, and I've mapped many samples from C2 to B4. However, in actual use, I want to be able to freely replace the sample on a key. How can I do this?
I've saved a separate samplemap for each sample, but during replacement, a sample on C2 can only replace another sample mapped to C2. If I want to replace C2 with a sample on F2, that sample will only trigger on F2. What should I do? Please help me.
-
RE: How can I make KeySwitch trigger only once?posted in General Questions
@d-healey
Hello~David~~, sorry, I've been very busy lately and haven't been on the forum. But I suddenly realized something these past few days: I just need to add this simple code to the onNoteOff function of the Interface, and it will work!local n = Message.getNoteNumber(); if (n > 25) { Synth.playNote(24, 100); } -
RE: How can I make KeySwitch trigger only once?posted in General Questions
@d-healey Here's the thing: I need to ensure the current functionality I've written works correctly before implementing the requirements I mentioned above.

-
RE: How can I make KeySwitch trigger only once?posted in General Questions
@d-healey
Here!HiseSnippet 2450.3oc6aszbabbDdWRtTBPxJw4kSkSiYkxFLllE.DeFYFwmPhEIkXQPKaeR0fcG.LEWLCxtKnHiJV4ZtkyImRU9WQNk7CHGxOgbOW7+.ktmYWr6RtD.Dh5ECnKyhSOc2S28zcOy7s166IsY99ROCy7GdZalg4cspdpHn4FMobgw1aZXdOq8n9ALOhlz5m1l56ybLLMG+QHAybSXn94Gd35TWpvlESxv3YRtMaWdKdPL08WcGtqaEpC6PdqDbO2paaKEaHckc.6YbqhFso1GQavdBEYaLKiGS8aZX9arVXg6uLaoZKrjcwhKTbw6O+BKu770qwVlUitTMaV4hTZ8kofQN4VN7.oW0.Z.y2vbh0kNmVso7EB8B7LtOulKCGTxnJrxZxUjtNnKh+swFM4tN6GEn7MLLs1ONrMtNr8yr1i6v6RON78iUSPhkHY.zbrzl23oLuRWl4kgIYlvjlPaRerUUaOd6f3YP64NVaKfcy5TXeJoon40Xr7lVaHANDAy1hdDqhGLnqDEVnXwYHvul9A42RzfKXy5yB1gcpdSqP44lgT7j4KVoR4EKu3kwz7oYpdGgc.WJHRwSjArmJJLc9WlOW9yxSN+T0qm4bnA6IccYdYNMlk40KAKH5zpFyaFxwT2NrtLBQxzaOSNXaO153WBFkhsE7fm1lENNN+pTFalFga.ve80auIMfh6ugz.9Zy7B3n4XtI6Xn5RuamyZSl+QAx1Jda0VJPMXd2fvzS89aEWIMfKZbHGLaNXA+HqjjJYbRxh2S6NX0+3pgFfd0xaA6m0jTOGiZMhpXyM4m+4u5UH67.VqXpu5Uu5WklZ4PxJlCXmDDybzZq76w9NSqWlmPlBVsug6DzbpeKozbyVbFj1lb+1tzSepc.8X1ST6f3zp41U9BPDX3xpgOlqGUp7hpwazwOP15Qdz1M419vD0ot9LsVY0ocbCVqcaF0C6lAyF30QO45tPCIPUG.QLILQwYgFO3OKsTwEWt3h5E+PYiFtr8jNrTZF6C.8EDBlaW67q8YOiYCoXIrktqFLYEWZP0fScOml1eqnv+4oCopdAwqR4H5aIbRr1Kj+LiWfwSnWl42NlgQSFuQy.bTEUG5KzLAZiIc5.VS5da3I.gS.UToZnfMMD97fSSdBw4a3MwkWQULy9wYVuLfl6GasOOvtY116XYXuPc2aZ6M73iOxZq50gDgXicBqJeaOOq3Z2Tt8kbAf6pNP.Fw7Jccb7e6A93eyweSb58juoN89sZx7nZuaR0d2SaJ2wpJTlop+TFxuPMl7MvAbjGwfBPLn1qhv+80eQn970CgyB8aK8So3prV7CgKZ3mjHdpkG62qNhLI8Mfiqxbpe3gU.mLSYpRC53oRWVqkriHHU5w4ZNXMXWNKcUSB968lk4DuC5ZbEZpMv2++mFRM15Jk46.99aYkm.oB9AD1wv8911wmrBI7971dLv3QmbWtePA3h9DOVChK7PQ7d5.iESPZGeXPjxNRTaWIb6Efmn2YPcb1QHqUXJ0DSMCoD7HC7IFcYFe.wATQCVAXF7RbjRSmVmpa3kkN0W8CDXgDJUQr+JcG+rz3N9f5teRabG+9qqnRsrzX8v4.8NWRyLRlTZu773avJNqdAz5+XpGYsMqd.nbUyiYavB51DtvT3TklB3OlabI2VbYFy1hvcg4QSQSIsKVL1HRnUvlOfA7sVPVZ1SOU.bG5nMDk9ik5xViK4IhtRapKA8h8fLYZCF52HC5WCf4kg7bbZddFCHCG2n3fWmTPP9cqDmsgbfuDrvzjO6y.8+UqDmzDO2z4ykSmdCJW7fb4xq0kdGf6uF7Ls5baN0cKr.ZMvCNlUHpXJVQQUMSqznVZHl8LoamVLLEnWxLSp7jXiaFxWVR8L874qK8HE3fMN2ROfvIeEleB+wW7ESS5FCwzxKtJbL7jin+Q6bLxmtBnZvRQZZiUneZ95mtkVCEXnbZYBitqrRXcR5PaTnBBraBM.gEDCAfUkKGlyNqNewiWqS.qfhhN8Ylv72j6FfqlK0FBND+2t9keW+ZlvUFe+HFFQJGCpPwu5WdL3jGQ2bFdCgzio7uB36yTAlyXvCuFDiMQBdJCFTQ9bmkKLOJryoxvCCbgdymdwn2zCnQlOK+WLSWYPLdhST0VUuPdY.J4F9JJbtnMvrcYsG+fgrRSjrD6hYsYwOtTCL+wUxPlzYuC.nx55BfpdAJk4jgVEvpFco6EdmhptbGlmBWoaYo13MTFb701VZUiARXUlw4Ed4AR3Ir1we3V17VQGDed4Cc+9H+sszckFNo+HqDmOlgJFJn.mLATf2ouaVmf..kWC7mkItn9H1SfZrvSvMZwcbbY6KgWpgufK9F7+C+.V6p7+.K4s5aQiAS7e97U86TuN+DEL904ts7gNks2tEzAwv7mXAOZf3nQdi3eDbMZWt3HlygRE+FCnWnyZTdwe6CUuPk9pbgEL+.0ERTGobj+0qqi7W+K3O+8TNxe56ey6HcKnSWXT9ZzMV8O+l2MR2YIc4w6Q9xaMfuFevPuoOuxNWjMVk2psKaKwwviJ.JnMdKK0StRYZ6IEx1MkBtcx15GvfPTiFLujFbldQ31WJYcYzjHx7qWcW304TO7SOLjAfq9mYLyMoeok1bIpm7dy.kxw++STJOP1A+7f6QgDUr2AbQ+pxNd1rvumDdsSywv63nGWLpSeUlvQM.+PegSVBGaFNYonIS5teRDRnHnmwHg9yUigmx158EfPKkIRnondNIJmoDontI79FQZUqIkhKLTTABEI361qFQrbRh6SEoTFLNkl1im3C99ed3VBJjfTkAdtyS8sg.CFmSVdteG3MupOEaojBFStbRxOl54.6g18B21IdMws88juvyaGrZKmIVs+2aYMBp126gpkLvX0VdpyKvUAtVRevqMkhGNDaICMjsYgsDNE4k4ICB3Rj9CnK40.QWx4gzkDptWGPcIW+n5Rv+om.6R5KxtjXncIow1kzOvc0LfZ3JCuKAw2kLb.7pVwTP7hiU+5JAxKIWjX8GAURWbdICOPunRfecVtnDrXrdIZKoen8NnFKx3UEvWTJv7Fg46HLeuAg46xiv7cDluiv7cDluiv7cDluu0v7s7HLeGg46Mo+KSs2kk6wO4Cmc5Ow5o91kIpsax69862F.qeSYMZQs8jO2VeiZrozsUTfXqP8+af4r1CGSJcwKQCmswetscZUcAAKOrBd+gUv4FVAmeXEbggUvEGVAWp+BhHSuVm.YKcsngwd6uk5QOll5uFgprz3+I63pzE