@Christoph-Hart
Thank you! :-)

Posts
-
Deferral of included scripts
Hello everyone! :-)
If I have deferred a script and then import other scripts in this script via
include
, do I also have to callSynth.deferCallbacks
in these included scripts or is it enough that I have done this in the main script?Thank you very much
Oli -
RE: LFO Waveform Morphing
@theovintagesynth
I don't think this is possible with the Stock LFO so Faust/Snex should be the way to go... -
RE: Table.setContentCallback -> What happened?
@d-healey
I got it. Thank you! :-) -
RE: Table.setContentCallback -> What happened?
@d-healey
That is interesting! Do you have any idea how I can print the value?Console.print(Engine.decodeBase64ValueTree(value));
does not work. -
RE: Table.setContentCallback -> What happened?
@d-healey
Have you had a look at the value supplied by the broadcaster? I have reduced this snippet to this. Do you have any idea what this is, or how it can be put to good use?You must add, edit or delete a point in the table so that the console prints the value.
HiseSnippet 1427.3oc2X01bSaDD9TbTKVTXJsLc5GupoePzIMXSBE2xvfieIPllW7D6.sCCC8hzY6ahzcpmNYhGF9y0eA8mB+CZ2SR1Rp1Dndf1Rym7s6s69rub6tJ8jBWZTjPhLrFLMjhL9Dy9S4pwsGSXbzdcPFet4.xo9TbKof34RhTTIp0zPRTD0CYXT4A5KZTccTxeu59sH9DtKMmDB8HAyktOKfoxo1q4Ox782k3QGvBJb6satmqf2V3KhAPUwrFJj3dFYD8Ph9ZqYhdHIZLx3aL2h5cqFMH2d6s1xsw22v8NtjFT25mdmZ2hLzaqFTuS8191aSPFeTWOlRH6qHJZDxX8VBuo8GKdNO0.OhEw.OTenNpOX4Tx6J78ztnlJp8XluWuYQqHDxvrWdrqRZr65lGv7XyomGC+zDF3bIJF.MVqL7pTBd0KBuZEf2RfjQAHsdJjtlYeWIKTkyQimKatGGxiCIPdpHTRuKZseqhYaAbCtZy.xYzckvg4R3rcsZaf2pVsabWKKHWEovgBe.wjPZZox8vI0PaNhpRHL23N18lcS6aLmsSAMEylohY..tUaQPnfCGbry3aCRj8yMkzgT4.QGhh3TFHZ0Zcya9U3Guyf1ODevQcNY+te6fcZseWfbwJZrGcHiyTLAOCHSHRbfvK1OUUOlnbGC26d3t7QLNcSWIERWETgyKrvXalm8OfsWTP6MzbIxQQ.+mXGNKhXuAHC2idt9GSH9wT6mZ8RMvA.RTJh6XrRfoS.uGqSoVKp6MSu2.gNN4SOOIRXmFbxhhf1eRgX+SAiUSaQ6xVZHSBttOC7GNUtTS44seFaGnJvlFDplBZZXL2UG8bl6YafS7qMvId0MdgUU.KQB.SgRFjJSIe2TmMIKcb29cGfacxfAGcnEi6Cg445EK3mp3GSizUCbkT363NqpXlIr.avFloXqpUKWL.0IfvNZKBFb4UWyLATblan1De+SgdPNK.APWEv2gBE8HtSBLrdoE9uxZ3vkxKSW9P.cYr0cGkWjfN73fSoxhAA8EgN.kaqX95aqTrqmaZfovEE78fWFGER4utdgnrnIzBZsLTAlWkz.5JYMfRxAHFzlopY1KWTBhKNnvCpbS5wilqlJop4pYpoUrRI3I5wxbV5XQEgNYO8q.cOwLrA3MjJULcnvnCcBLQJsCYUyNznyThvDvmUJ.yLdyv+7hVbZ9get4yYdpw4Dl1bLkMZbgoerlnEs0E6i4Vq4uzrf05zTQOGTxGal79AwhNPD.pkHmlkuVbp.LOR+zlnJOjROJOiAThUZxft6OOholVbT+6rIWusP7Zl8XPenkiw0VBF0UjuGvX179qX1c3PpqJGfqat6O89Y3dQye0TyeYy9PKxjQsIF+KRNieLYBE+.cGZcvq9Err1u+1trV3a8xZG4p.yOPR3QghnRJtOMfM.p3iJR7jHX6B5udrNaVjdaAQtTVu596BN4RkoOQEKSJK1IPDyUkJCpbQ6.VeE2Ab8+ysC3G.O1KslZ0YXrOSu6RW9DpOznNAieFzYdHI1WMiZ4Z4CDbQ3XAm4VLQeLUIYiFQkEw9Rcncz67bVNkq27XpOkTrn8qatOTrQjPbhthwh5+sWYeo4quzLEtX8CP7GtMoq7+5lzkRmWZl806cGo2CELa5WeMeS7RvncrbR5m3tSzz.ccrKwOmXGIaRoFpkqJa17nITYDAdFw3iVwn66npU3kqFr+KUmdrHVAgfCHPDD1Zx7v3f9v.JWJ.PNm5qWF1XM8Plzy0zmSmPw8RN7GveYLqqOajwr9Ll+iXi.hqT7L2zMg0g+KkPA7adx+KjplGnOiqu39uAvnlm45VVUKH3sVUA2ZUEb6UUvaupB9cqpf2YUErwaVP8l.6DqDAouMfmx85l78JFFc45usH4YB5OAj18qQ.
-
RE: Table.setContentCallback -> What happened?
@d-healey
What else I noticed: in the ContentCallback function of the table there is the variablechangedIndex
. However, this always returns-1
.Maybe this is a bug?
-
RE: Table.setContentCallback -> What happened?
@d-healey
Hey David,unfortunately I haven't found a way to know if a point has been added, removed or changed.
I do have some insight into the value with a “ComplexData” broadcaster, but I can't do anything with it.
Have a look at my snippet. If you uncomment column 22, you will see the value. I couldn't work with
trace
either. Perhaps you have another idea?I have now solved it with a MouseCallback-Broadcaster. When I left-click I add a point (the console prints “Add”), when I right-click I remove a point (the console prints “Remove”). It's not perfect, but it should be sufficient for my purposes.
HiseSnippet 1691.3oc2XstaaaCEVJIpqVcsXcqXX+jSX+PdHMwtIcMqAE0WhSaPyMD6ztghhNFIZahHQpQQ6Fih9Nrmpg8y8nz2fsCojskhMRb7ZWwVPKfH44x24JOzGJ3dj3Xtvvzt0fHhg4ma0b.S1sdWLkYryVFlekUK7IADTMAG66gikDgQsAQ33Xhugo4hOQQnYgkLz+89GWCGfYdjwaYX7bN0irKMjJGu6gUdFMHXarOoEMLC0qWYGONqNOf2C.0hVkLhvdmh6P1GqHaAKimhi6ZX98VqQ7u2Fafu+5qsl2F+3FdOvCuAwq7IOnz8vs8WaCh+I9qe+0wFlWqgOUxEMkXIIFDZMt+flc4ugknfmSiofEpVT1nIn4jsMp2kF3e3POTrggo0gi8WKl3uti0dTe5n8G629B8Anwbj0oYtvEAoxWAHYlARKk.oaa0zSPijiOQgmaXsCChcswPrIKTRn0Xge+ZV04.EL4Jg3SIaKfEi3vc8RkVFsVoRE2z1FhOwRTDO.PLNhjjd7HjNuYkNDodiQJ204vgT5TbzwtYjTO5PQLD..U04gQbFrv0I8bGfizOWQPZSDs3agkX27.QIVAoCRBtBPh2s7lEVcUTI3Su.p2oDejK12u3xnxvVBZmtx5p8QtBRHuOons8pq9snWTsU8mh16fsNd2F2sU0Z61.1NaI.xmzlxnRJmkZE8wBTH2uWPBNdAV50En6QnFrNTFYEOAAh0YDg6asQHGpuyCQNSxnyxpSwhNwv4uzIZn6zYYfGlO4L0G8wA8HNux9cJqF.HVJwdcQRNhzGbcHU9f8jxdkD5ZwUN4.xYZ2nShmMMD.R+kYBbuBTVIkFcxqo1TAX5ATvdXDwTUku+toG6BoPNjvH4.PRs6w7TdO2QV1xHscsLRaUEeqMD3.zDyATEInPlPxAalXtYhSGuSRLB4tGuWLogx1iKNSQrzDpqVzJOSmKR4MLwU4tzggKK.kWb4BNZAkwnbe4npAUHoZP.pNNH3DnEY7kGdNuhtrPyHSY4D3phI1Ensc0qVIsfpncgBoUak1LGAiKuxPS4rwurUXn5GreqF62BUu5t6VqZ8mYmuxdkXUWAc14Pa1cLT6hYcH96nxfJZC3DE+FJXltJsBZGo1p.DJInROT8Yg7oVNU88UNO0Im.w9S2bD8kmJ8GoaWLIKPVFtWfLgGAQ1SvT6+N3+v+F2UJiS3nFMazBU63VsNXeaJK.x+FECPb1IR1QjTaWvCxFURJHTlK3ySWTnv4baBEytpxFPgSuC6PU.MnGqnQN4If.HqL3aetjb.yUCC62YiN+QsaO0yRkU.j7MsiUSEHtHFcY8BOgHx5DTDB2Bl+p0qMaWs5k3XxPHmsCzt3fHR55s4A9pqLUeO4EwFodV3J4ERQH.Eo9B4aldgrNdXPAYTvJsVzPi9rCK4CMi0y4XLRLKlHlakJlZ8jRNSKGaqgglIEjww6nZrqlQHEa.diHBIU4VL2hzGlJKYhgBVaQhOUxizfOMs.bcWN7OKqFGLdwOW4MTeILmlk4uYZXzknZEnV8GFZe040wEaai0RkeoRFsrUEI4LPHelktFxfFuGODDKV.DYtfwjyFASkotiBKyOplZH1zCfjrbyGolAhESkCxNj6UX9sRW37ayJDus0gp1YSGiKLELpxC+HfwzoduoUi1sIdxw.bIqs+o4cD2YW82JQ82vpIzjTOvoV4esdM5E39DzST2mobdkufmo7my5yThl4mobfmDTeKAlEGwiyI3ljPZKHeON6lGGCyXS90iTQyr6WmiES8n2+3sAibp7zDC2ynSKpFx6wj4RCVLebXoYqeX9JhLzOk2frzmfmE8gor5SXketWtUXHFaRUSj2f0mD.8p0X7Kgly5YJFta9D683LdTWNi5kMpeDQBSe0gHxh8oZPUUiJd53ctSkiHADb1L3uqxtPlGV.9Ixb5Kt5uhcpwquwJAtHU0H5+tcrW7+0cryENu9P8qdMYrZrTPsI+fDideYNXTumnexuzS03Agp7XObv3M2RP6mq6Z9rxJUNnOQDigxHJqyb5c+.ksBUtJv9OJOcoYKHbICmdDumDbG6gAuILLk098BaB2b4Q.vxXjfX0nYKnt8IYcI05jqtX95E+E7W5gkUqMSOr7vC+WQGgXOA+0dICFqBEWWuCX2L8OOXAq8TqQkmbb3P3ZmW64kWTSv38lWFWadYb84kw6OuL9CyKiOXdYbiKmQ0TAU6I4gI0IPY8gMzOewzrAS8TCcIiweCfwxfIF
-
RE: Table.setContentCallback -> What happened?
@d-healey
Good idea. I'll try that. Thanks! :-) -
Table.setContentCallback -> What happened?
Hello to all! :-)
Table.setContentCallback(var contentFunction)
can be used to set a function to be executed when a point is added, removed or modified.Is there a way to find out what exactly happened? So whether a point was added, removed or changed?
And which point has been changed?
Many thanks
Oli -
RE: Is there a way to connect the Saturation PreGain and PostGain controls
@Xearox73
I don't really know what you want to achieve. But this snippet demonstrates how you can control both parameters with one knob. :-)HiseSnippet 1005.3ocuV0saaaCElzwJswsancn.6VgrabF5B7eowCEE0MNIcFcIwXJ8m6JnonhILEofDUacK5c64oOBc8QY6MXuAaGRIaIu3kj5gNcggO7bN77wC+NeRCiUTVRhJFgqc5zHFBeSGuoR839iIbIZv9H7243QzowDMWIcO80J2gjXRHSyhcOQxbehTMBs2zHRRByGgwq8XSh3MphrO+4C2iHHRJqXID5YJNk8y7PttX0g8dBWHNj3yNkGVJ5N8FPUx9JgJE.4ZNMPQD5DxYriIlvp3f9IRxXD96cZy7a0sKYmNsaS69ico6RIcYzli1sQKRfe6tL+Q9c1oCAgW+.etVE6oIZVBro6o7m5MV8ZYVAdFOgORvLFMQdPkyVF0eLW3ObVGKAgvUGVz+VKq+cGmi3974qWzGuk0gaQFkaZ3JWDjZ9Y.IbIHUMCR21wiFyizEdL34FNCjvkX.AtaJCkrXQU9H1ouBhPp2NjLgcXLXLOi52qQi65B+r08qUCteRzt4rDUbS2G3Z4PaeFSePP.ipquYg2MMoTiKEbf8DjJoVhkRZHRMMULVIpSUgQJIT6659JhHksUs2Uaih8X6Dl9QZcLeTplUu0rft++dLsyiw8Gba0YaCreO.iYGP.n8mUw5aZQxlaY1fb7zmHDi.ZW8EgIrKkN.GqzrSj0sPs16q49OcEDrTe46kfEuT2log3KJw5xzvQr3xMJSfvs+hTp0uZTJZVKoTfJ4.IWeRDK29Pkv2PUL++7DPTdO0PEyQHDp1RD+5bhnmf6yhQbXStlisghrfurFA5oC1mnIy1FXGgpDwh0bygAuO6UfFRF+dCm8YISzpHar4WifR1kVz2LufeRza5bieOpWhdpo0rtMPTH22WvFpR3lVeIwseKQyh73u0h72cmO73+3s+5CCKq+gPIoAA72XUpB3hvDfQFMHDDvP3uw4oILWeV.IUncSl.IBSESX9mprwGRJPHpaOz4GsAQEkepvP3KqzXzfycX.b4wayHrDNHSKqQ+YH+z3BketpP71NC4Z53kiwJKAi.O3KAFyEs+JmLcpB.V04vWrpJzMt5JzWKq92vYttks52rvt4hhyyeUb4VyyAktPUpTW9NcXLawWECGbUhdw059I7ZeAeyyRu6+1xePw+EVZ0q1UvknW8KpTMWd1QDXvDF2bNNMzC9VCJCPrTxDPgbvULBaY1ML1F.4wj9Vi+Bdxc1zXiyc1bly+WpQHgFqdIMSx0bebc6Jv4VZ+RoMbNxX6tDsVPei+RJcws5bI1ZUSr8plXmUMwcV0Du2pl3tqZhcu7DMe23iR0pvr4DD5ngGXe2HFefj.Ld6HC5uQV.ZTP
-
RE: Start timer based on the values of the buttons in an array
@d-healey
Yes, that's a great topic for a video! If I had known this earlier, it would have saved me a lot of time and programming effort. -
RE: Start timer based on the values of the buttons in an array
@d-healey
Thank you, that worked.
For the “UI” example, the code is as follows:Content.getAllComponents(“^(?!.*UI).*$”);
-
RE: Start timer based on the values of the buttons in an array
@d-healey
But another question:If I use
getAllComponents
, is there a way to select all components except the components with a specific name?In my case, I want to select all components except the components that have “UI” in their name. Do you know if this is possible?
-
RE: Start timer based on the values of the buttons in an array
@aaronventure
Good idea, thank you very much! :-) I'll try that.@d-healey
Did you see that I was talking about the value of the buttons? I don't know how to apply your suggestion to buttons... -
Start timer based on the values of the buttons in an array
Hello everyone!
I have an array with several buttons. If ALL buttons have the value 0, the timer should be stopped.
If at least one of the buttons has a value greater than 0, the timer should be started.
Simple task but I can't figure it out right now. Does anyone have any ideas?
PS. I could of course implement it in a large if-query, but that would be very awkward...
Many thanks
Oli -
RE: Panel positioned according to the Eq band's handle
@JulesV
You're welcome! :-) -
RE: Maximum number of sliders in SliderPack
@d-healey
Good morning David,I use a large slider pack.
One reason is that I have two “general envelopes” that can be used as a modulation source for different parameters. These are basically created as global modulators in a global modulation container. However, as envelopes are not always reliable as global modulators (for example with pitch modulation), I had to create dedicated envelopes for many parameters and could not use the global ones. However, the user should have the feeling that there are only two global envelopes. That's why the parameters of all envelopes are controlled via the same UI elements. Since the parameters of the envelopes (attack, decay, etc.) can also be modulated, this results in a large number of modules, which is why I use a slider pack.
I have now packed all the modules to be processed into a large array (in a specific value range). I have arranged them so that, for example, every fifth entry in the array is an LFO 1 modulation:
150 Attack LFO 1
151...
152...
153...
154 Decay LFO 1
155...
156...So with the help of a little math I can access all parameters via the same UI elements (the slider number in the slider pack matches the array entry of the module). Therefore, using a large slider pack was easier than using a dedicated one for each layer.
Did I make that clear? :-)
Why do you ask?