oscilloscope left right to one stereo
-
My first approach would be to attempt to modify the built in oscilloscope to give it a combined mode.
-
I just had a little poke around in the HISE source, it seems there are some look and feel functions for the oscilloscope, but they're not available in the scripting API. So making them available would be the way to go.
This one looks promising
drawOscilloscopePath
-
@d-healey I opened the scriptnode visualization example and replaced the basic oscilloscope with a new one and put an audio player at the head. it worked I was able to get a single signal in the oscilloscope. once recompiled the oscilloscope returned to 2 spectrum. little bug which proves that it can work ^^ in the meantime I'll just hide the 2nd spectrum lol
-
@yall Yeah the property object of analysers return to default state at init, which is kinda annoying when developing a scriptnode DSP.
The object property has to be set by script if you don't want it to return to default each time.const var rb = Engine.createAndRegisterRingBuffer(0); const var rbProp = { "BufferLength": 8192, "NumChannels": 2 }; rb.setRingBufferProperties(rbProp);
If you want to isolate the channels, just place two oscilloscopes in a multi container, give them a different external display buffer, so you can LAF them differently in their own panel.
EDIT
@Christoph-Hart would it be possible to save the display buffer properties with the graph when they are not scripted? -
@ustk ah yes this strategy is not bad, I'm going to try it. It's going to be a lot for me to add but if it works it's great. on the other hand by default the oscilloscope is set with the 2 right and left channels. Do you think that if I separate right and left it will still work? without going through my "bugg" option
-
@yall I don't see where it wouldn't work.
I had a look at your snippet, your code can be simplified to a few lines if you make good use of arrays.
As soon as you repeat the same code, it means it can be done only once using a few arrays andfor
loops -
@ustk you understood my idea. to want to put colors by frequency range. I am still far from what I would like to do. I would really like to be able to recreate an oscillator like that of seratp, rekordbox.... all with a multiband. and I'm not comfortable simplifying codes so it's true that I tend to make tons of them ^^
-
HiseSnippet 3771.3oc6c0sbaabFETRPRjR10oIs8ldAGek7Ltb.V.B.1NsQV+vDMwRg0R1S5joiJDwJRDABPC.ZIkLYlbQun88o21YxiPeDZeCxaf6tXAHwRRPBBB.I4.dgMwhuc+N6Y+4a2C.01x1pMzwwxloT4ytsOjoz1rmdqoa286ppaxbzAnzY6MvvU+FAl8tsupiCTioToU+L7sKUdMFuO+zmtmpgpYa3njXXdikda3K06o6NJ0V69E5FFMU0fmo2Kj0h6dTaKy8sLrFffxprbL8UaekZG3IpXyVgkoz5Gpo6ZYepqpKzgozZ6Yoc6ocst1jX+azczuv.hufm4TTAQRtokgFFw3TY1uqtgVqfprCCpTZMh.VkP.eB6w5Z5CSeDQ7DuaTcTNByGkVgFdqRAO9vviKD7lBjJEBRqQfzGwdZaa89titCFOawdjoKz9RUDsGFJDaYV429D18sPVX5Vqm5Uvl1nKFlicZvw87pRbbO6OToBh5cbq9NU6ps3q9GqFjqNP28s502xDcwNOsE+SQ1FxTPzlBFyTgnMUXLSEi1TwwLsdzlVeLSkh1TowLUNZSkGyTknMUAap2mQ1q0GYu2nKr0Gn6z2P818Fb4kP6SQ86QMJOkz1Us4WMFYaeAJqZ8mHe6vQaV6HLim1LsHLCPaFLByDnM6xHLSj1rNQXVcZy5FgYRzloGgYxTls2qa17vWc9KO7jO6rOGkCAfrjRXC5aa0GZ6pCcP286pTs5SIkyKglcb69zeOcI7brAmLnGZRASSngC597U9dbCs8E0bftuR2rCI+sFVt6LxEHnY2Nl1oES6fwztKiocchoccioc5wyNzmV7XSwwEr2W0v3BT.fctbfYaWcKycdVkuqRkxtc0cpoo5pV6BuRC0lgH911PzjtsTc6timAn9DuzpspwdVCL0bPCQdd0JkC9T8qQy6Q2nVEkBeMt+JkYb03BeIBhDuaC6iBH3tCJguGi6VfDgZs4gZP1hZgDg51yC07YKpESDpgyC0BYKpqmHTe47PsX1hZoDg5NyC00yVTKmHT2cdnVJaQsRhPs97PsblhZuIrcUsI.eGdbbb7rgimjvjIINYR0mLIoISRdxjTlHIpOjnJsvH+UVCb0Mgin1NXtsbmZWh1SxKLL1g6FNtldevUZuHgjsjftirhP8lM8VureNFQ6gZWdd0oGBhNbQJ.mC33jDOHYvA7L53.oAb1uwgbIjcDeF8D7wGNjOSBm84vMUIDNBOidl63BG.HJ1QXYfS8.3PlQdYQC4+bpccWcWXh.jzynms8tGQxOidlz6dDo3in.mW0x7DKW3WRlNubkuuR0wu0kWN06g2eoskgAZxsocaxzdyHi6XNn2EXX9NUiAvgFxTZMZAKXiVvhv5ozlrc2PFZYdjot6W1GZFkJKL96QFKtgOpPl55Iswi8k13TCcMnMitFSoMX+BSqK3Y7.bXMlXd8QGfH9fhAUhi1MAJsCfuSuMjnXRY1CfNW4Z0G80gaKGUzy0o2Lxgms6sCu3G6rqiKr+o5ea.h18+8s+8OsePs7HMOkyFt6cl9p1p8ftPu6TlsCpGog00XpXHX1j.lGEHtiJZGkdXYM1VT.QJDPX9S6dQm.cxJuNy6q6k505ZtcGZz+4etaWndmtgDd6M65BuwMTFYd+68tQLAjvL.T3RtBKuH.vKvCXFgysYA77bBJ.NEt3.0vfp7L.kXLAEtiKZjbufq2hUgGz.HHVOVvIbEQ.HH2PPluNfh51XFnDLCTtfdGv0PlWVVgSI1Mb0C48pWGx6+v2EUCGMn9wKl.TZzThjrHunnrjRroDoPf5ucSHPsKLdfh4uLAnNZ235c4n79ObU779O70yw6ryv6JQ48+a+n7NyjRB+D1iszFXn5RqPMVVd+afhBPIKLV5WSGc2aCOkZpIacbg3Gw1R2sc2oiwUlBFQy1mEXzWr+GwdHJHda2Q.bM1leUFor+Jg7OKw+U76gf7I14TgPBChSFziRlSb.6RkQUIew9K8OXGE6uOdmZ1vyrZgreGG0d8MfuBA9mW8BCq1WgChM4BF7CksG1hcZ6quYRVWw5wlt3mcqEYAbcNV00VGMjgEwADYxCTeEyAqfCgQtlCeMtCyoPSMuKdO5i+M4wWWx+l7A2bzJSXNA5dsk8UdOAF+uilEgznb7qe4YGs2KN4fCYPKbz5Z7Hcc+tujJEpEw6hMXQ6dtFGwrVVF21uqkodabSHISAf+E8PKTzMnF74pNmopafGBb5.GzRoz9RySQF68D0PcAKchkF5aq2TsMhZuEuPT7PI7hwP8ag10ZOr+KEZG0ExqyIpUnUv5RbHHGWvAy3PXODN64MIF9gtsJ99DNgf.rKdD6k1v2dNp6ntaclHwj28mpSog07fPnbyT52L7JjwGqa9FxhDWGEZDQ6GqdieBkQIf9fR6zqfWSvH9Y6wUC.ZzfSrdcEQIEIzZR7XsMY2S0TqJOyKF3Z0C0y0+QF5sRSSnWeeumW3nKQnCi7i7V7ngM+47LsBunusXahXoAn1va8VA7zyFHYYSHYYSblYKSoVvxPsfjQsfjQsfjQsf6JpUXYnVgjQsBIiZERF0JDOpcMx6q.Zp2dCbgLiHZVVZdlkkGOI8rYsRSEPaxpMnWuaGabzFrjRdBzrsGZfZYNf.wDPkYyCzHDSzrIaW8LGLhwlZB1ldlfl08JdZrrt2J1mV2FenfZrxFzrgmG3iGbHLSFiEP7vxldF2UOKghPbgBtEROiXkJrnh97I6yLi9uH33nqkQil1hEW1KBf1JXxurhh1ZHEsnyGmczz1inI9XOKX9PRKTLhbgghKh1.GmH6InEIrUtvOwEPOl8RKzNi6YYZkBwuVYFSMpL8oFmQNZDuIS+HppPJDqYkHVSf2HStEnZ3mkXFqLTSQlUIHDqzB2THGupviFUEV93ryrY.r3MCQDaNPnh0HBUvRl03BUrZOyQ1jESNh.GsIkiHB.P4neE62n4zu12Xnad005teqstA7VpheaVQfhBurBmrvXnf1mXsiLf2D7zuZpa3KGh+WQe4HSM3MX4K+c7gZPIxNlRa9TB.DDUjUp6+5GOZSXi0EHhs6NY2G.1YCetZjtS3xdch7nT4iIzC6izbSQ9fBxOiHev7IegBx+tf7GpEAE6i12.5+q0afwDTdCwFRxfF0mEkuBEEVJbrg4EIfzgfjzDDSD0AxhuvK3IilmNb.gxrZv1V3m4Okq9XVaxyZnVOmyIVrXNihyhrp9HVTw6oJt63HHbk06maSBqrqLAyRntLgYKExYg1rZTcFSNilQ8BirQy62fC9paQ.grqwibdC9tsUMBFaVZkvss9qYOmX6vaE+mOzcrFjsIqGIKl8MB954Q4msP9wFVqyB6A5FfUC0.r9nFfMQg33FuMfiJRBNnEu+6EIuXCNddIdpnZeLa8Zh..PlSVVTQjWfqgefGu0QOi3YqGcOgMY48ieFeffMPfimS.YPiFJhMj438CudZOKK2tn4iYniXyj+zx1ruB5.cIE6LVOZZNWRYVzRKlSTJhEoVTpzD9axFumL7xGgqLYrNOHaFruB05bIheTLZO6GsGL95d6f8P8KdLKVkDfCBlPqw5x+KIcOBYv8xwqAihDx9PlABBliihlryqe+mhQQOzCYFyMc0wxT2xyNI5NdeBqpopwsNn9dCMYA6jOl7Di8N5MdJiDqXUVQl3g+MH+4WH62t3iYsbZqaXf9WDRn82udHSQYS1xUqLjqDXNr2EPMMnlWlwEW7HueAUcp9C3JU9DJfHXNHSELe8.YCAITvbYNIgFRi+VDF9OzGERHFVBQ9HV+RnFBPQCwc3SwHTCgPQCw8DQ0AeXHpNH6EUuRfn572Ipp+3vppym8qSZ6QxpymGJ8N5Mb5mkBq+nPBqmC7M0auUgz5SSZ854kNA7EpsUnsdJOcRk.s04ePKttT9IttX1Kt9v2Iuhw6E5BFo55ROnUWOGhZN78TsPd8hgQ2AxqyeORd85LwcMsd6KLG12HsVzR2qzhlKcDXW9AbkJOEXWHeDXWHoBr2fudCPiB4DWR4DC0P.JZHtO7jNDRp.6EMDo2uWig+Dw+fPfcgbTfcvcu.6fbUfcPdJvNnPfcPtJvNnPf8oJvtTdIvNnPvsBA1yJA1AOnEXWL+DXmKud60kJFtWHLXz5qK9fVec97Jnobg75EihtKjWW7dj75RKl75f7Vdck6UJQymNxq23AbkJOkWWLejWWLoxqKzfWRr3s0M0jWWLoxqWzPj1MDBEMD2gOmivxqK9gg75h4n75B28xqKjqxqKjmxqKTHutPtJutPg75SUdc47Ro.gB81JjWOqjWW3As75x4m75R416udwiSqPYvYnut7CZ80kys2ecgBA1KFFcWHvd86QBrKuXBrmC6a7ITZQO9Ss9NVLZPRUXerZE+C3ZUFFOHxRi57Xy+nQ.KAOjet+Yi2+Bu4r3AJR70E4QSTvIJ0HlmSBzmCcT+Uge344FSD3CrH3STRQTDnfltqtR8FBJoF9.S6jtf7KDXAfmTCYQDsI.pKoHfvWpAOgk4z0h5hkFQi76xcDaktnhx0KwQsUZyUQBoXedaktHZnaWhybqzliFdjbuTm8Voc+oPtdINEtxBtZpPJ1GFWoc+Ie2l7ijqzFP9tcINTtxfIL876RcrbktfJrmWtilqrYd7oyWw934Js6SEESE+ymqLHvxz4n3d.ckt.JvqI+.5J8iyMc9AejJE+ymqzEUic3fsrmXUYF3lZDlE6rnJcwFsuSgSrrzEdS5+Ds4tWeTvVS8OMzCUHnMmBemdaH4zpuL6APmqbs564nfix9JA2b+A1uCd3aYH6q1Gp15us5g+4INM6CdmM7OU1wa2.wHkWiw+yddGbW9I7ue6+Z2879CS5PK9oOcOusIMVBhiR3I61r4YGZpdgAwokV8gzASed3idpsssNGqTjskg2a3lWJn5sIpkC2hdL9Zztnem+qDyvlGzjt5m2tMcQMQFAIMiBIMihIMi0SZFkRZFkSZFUleFOFcsury3YSXXNt0gDIjJEZDAy+m1j414
I encounter a problem with this start of plugin. I compile it in vst3 and component without error. logic and fl studio recognize it well in FX but the daw crashes as soon as I put it on. I can't understand what's going on.
-
@d-healey Can u test this code please?
-
@yall I'm out of this one, I don't know anything about display buffers
-
@d-healey in fact this code works in hise, I can export it without error. but completely crashes the daw. I tried to export without a line of code in hise, same problem. on the other hand if I export without the fx script, it works (well, no point without the fx script). I don't know if I missed something in scriptnode
-
@yall Your snippet is very convoluted, try a very simple one instead.
I noticed you affect the same External buffer to both left and right oscilloscopes, doesn't feel very safe to do this... Try 1 osc -> 1 ext buff -
@ustk I tried a basic viewer node and a panel. the pligin exports well but displays nothing in the panel