@MikeB -- Lindon, Hull UK, Audio Developer, before that I worked in Telecommunications (real time and all that - not as complicated as it sounds) and before that I was a record producer....before that I was a starving/failing musician.
Best posts made by Lindon
-
RE: The world of HISE
-
RE: The definitive feature request & bug fix roadmap
Feature Request
@Christoph-Hart - Please can we have bus effects (send and receive) as per this discussion :https://forum.hise.audio/topic/1983/feature-request-the-case-for-bus-containers
-- wow I just re-read the thread I pointed to - I've been a pita about this .....sorry.
-
Happy Holidays..
So happy holidays to everyone who has them at this time of year.. Anther great year for HISE and this community, tho I did get too many t-shirts this year...
-
LED - with peak line - and red warnings...vector version.
So I've seen a few posts here asking how to "do" an LED-style control, and there's been a few answers - all of which seemed to require adding in a png for the LED itself.
So as I needed (or wanted) one of these that used vector drawing, and one that had some level of "red-line" warning as well as momentary peak measurement too I coded one up. You might want to use it - or adapt it to your needs.
So caveat no.1 : as @ustk has said elsewhere - this is not really a gain meter - its approximates one as it uses 100 milliseconds between each measure - so it may miss some peaks. But in any case:
HiseSnippet 2093.3oc2Y0uaajaDeks2qwJmARJtCs+IQPAtUWTj2Uw1IFF2EYaI6Hb9CAKmjVTbHfdWJIhrhTXWJ63FXf9H1Gg9HbuA2MjbWsbkWaqSsIMoBIVlbFN727AmYHcmHtOINlGYUZ4SubDwpzWa28RlXvtCvTlU6lVktm8QjKNnUSqctbDNNlDXUpzh6KoVZ4krTe9kWrCNDy7IYSYY8ZN0mb.cHUjMamF+DMLbOb.4T5PCtWqQaeNaWdHeLfjEscsFg8eGtO4HrjsErsJ8UsBnBdTWAVPhsJszN7fK6NfeASy+qowzyBIxAdVcAAomdOdXfDwxYs1c.MLnSpFGaYUxtSl9unV++F6CoAzIymYGdfh.JaEl1iRKbavyyDdtyN7JY.ukzv6g1c8iniDYTjX691sYBRTOL3BLgklWqErtu8tbfCln1P76H6EAClrBmMbcqhV20sxVqTdkxqtJxmObHmghHi.kWPY8QQ7wv2DIcvQEKPmiiPur8As2+kmt6wGb7qNA8CH22+7MWq9NdMWaKS11Y6c+ICd1au5pO43oUy8akimMTexwCDCty1mbZ6CaA73UeZZcjXkDAz5Ml4KnblS+JqT9CqTFgj+GA5SeTHnEfSJRrkdtUW0GG5iNCjQrbZzSPjyIQWhDP.JRLfFif+EP60iDAVuLAAqPIGX+jbUqOQ7RBs+.gSEPFNNdttnGOgzqwgiINUp78Rf5Kpjr6oX.Q6gnhXDFM.DAnDmK4GVMlgBwfNJQSsZIaOvrR9OdZoi9QT17AXAt1.phVkJ5U9A8WIaZDYHY3YvtoTyb6LlE.jiIvNOfnLZnzXgIvP94Z6jg4HAUaUD2RItKeLSZ9bS33pIVi2QHi.aguhAdOEFXiUPUNBrEwnK.2DJHBeAaBD0qufM4wOt.68EjuahDnBzPdThAWKNHuE3GSrAbEefUgbQlKnHs4GMhRqbWJtWAnRt4ZWPlKgGowKhQHARvDQ5A.a.51wxO.6Pg98gXw.ez3QRQI2OYvuZOqNkeOFxnA6nhVlDlbDBTgzSAaMOgDWQBiI4g13Xh4Nqh8UVA047aDF20IvbmEl5L3UxjZ4bCJesDE8fhU.JNCpE0Gx.xBzrzuljv1ggNYo1prUgRP6JAqT5JASqtLmStrmofQK5SH9Bm+ta0Tqa0T86Mz.w.mJUmVeeRJm+70xrLAJR6UtTHYFPHsg1lf9djmaAIKLws9q3ZWLfJH2jqrnE.NzJ4Op2ulDcG.3vAp.MsRl4gy8q0Mynj56LUTnTULMffHA8IW2rmUoIylKWZpM2sp2FUqud8etJxqVRIwqT+Lo3X6ifTgLRX9ZgsYxVhfPQU2SR0nETx.D4izTdjVRYKX6wATdaFX2OfzSFCmVftuDpCGwYv.mGkmMkTJRFmHiClAgn3SIk7BVZfTEPOQWn2IqfZdlUB3N3NeYYeItlZ2LBcWENldc3LU9imLMSZXTLWS4XNpizaci1lD5JaRxuKUOY+oQ6hCCkG9clzQQZCEHz0se5jasX8kGzfMoIwmdFbtXOdjLBXOrOjTyQGNn.w3nH.BG.ExBcfScowiEXr+ORzdEIZEnSZvy4l1YS5vQ1blH4gQkQRlmsRhYO0Ng3ri3BxwfAq7GJub4qJillTudERS5jh3PZ2nBIq2waYgN59Dppy7NgQn+47MnaeyMnad+AecLiAibVaFUb7HB6lZa2JIPC9sW0tIDhJ6jOYNfuQjHAUBgRMImCWQR2W+x1MIwuSvGo3MI5DZrWnntRZW+RauEMPxehmv58StF0+7sMtL6NUNMtPlHcxDMNsw.0YtL9iabFOJfD0k9OHl2lSO6I3.53XyqzAI7GldIsu19od0qu4lart2yLHTeJJBx6E4VxyV+oaT+oqAWpyPMKeSp4CryGxZnsvkFMz1WzXDVFxaHzLSTdCgk60LD7F4wYcuMe1y8Vu9lqa86yBYMKJ0Csm5floVs+miZ00uGJbaXdv3PrH+UjkIfRH.GKycWT48MYwTwkl63Gk6MOqv8g1cnB+AEi2EJ.uvA4O13M4UHVwV29PFXWxdu+579jCE+hHt20SNbuIuHDc3nPx9YuHjtRys7hPVVMIg3blt2jOb8u0nf2LpMCt6snCODGMsgew7Z6hyl1VfFtzLGcn5n6Kln4+nsxj+kDfUgDe4.3GXCId+L.t5tt6eHVDQgJG1GMdXWHEuOAfJCpLHauozBxhQ5wtxwR.0kvBTC9U3SBQO43RID8RIZZR9VsI491uAeNQc8Fk03aUi6wiFh1mvHQRak2sjR3eMqOR7nY9QhO1W.P3zHLKdDOl3YJ4onUOetIwXVd10SkiKo5AMXOzfu60Hcx5lSBgE4DFLNmjNjZTf+e+hVLL3z6R.sI33XePYk1Ny3lNigqSqNc3YtvroqaN8KwQAfew+1xW96t5PgOH8W8Y86k+oqMkEmM3VfEbgNW6u3xCRpu1BJ9EBWOXR17d3wghzYyez5PNiOZ.mQy4zOg.YD52mjKVpPEZag.tWa1LeSiSHgDbrwws+RC4Cyfi.6DYNsE2Qk3Ryn+5OaqgKRlO3yqxE+AMrKa+ZvI4K2ccpwzgnIpi2ci1WESNEqfyzcDIWjYtJ0s+y6Xtduoysi4+J8Ou3+G0+7GiTPPMgub574OYC0opiTtaz+682eJZ.5SwdLD6Gwequ9kqjYDumZFPuYp+t2KaenbLxyR8ZVv5rcq4ZMDpq9VeeYL8S.6Swqo9brlmNGqYs4XMqOGqYi4XMOaNVyyu00HaoY6wB9Pc7OLQmVpm3qTIcWcpiBV+FfT1+WL
I'm pretty sure the code could do with re-factoring so I'm always interested in a better version if you want to comment or contribute...
-
RE: The definitive feature request & bug fix roadmap
Feature Request
MIDI out.
-
Happy Holidays
......Ok that's me done for 2023, so wishing you and yours a safe and festive holiday season and a prosperous, healthy and happy 2024...
Thanks to all of you for making it a great community..... now where did I put that T-Shirt?
-
RE: Have a nice christmas and new year vacation!
Happy holidays everyone...have a fun safe time.
-
The Italian Job.....a utility
Okay, so I am away from my desk for a month in Lucca, in Italy - yes lucky me.
So I managed about 5 days before I opened my laptop to do some coding, but the good news is - I'm only going to be working on my own stuff - not client work, so no pressure.
One of the things I've been meaning to build was a set of utilities to help me build other HISE instruments. So I started on the first of these....
So there are times when you build your UI and you think you are all done - so as a final step you add in the isPluginParameter, and its associated name... but (as always) there's additional stuff to do - which includes new UI widgets -so you copy one or two of the existing widgets (as they are pretty near what you need) and use those. So if you are like me you sometimes forget to change the pluginParameter name on these copies, so when you come to compile and test your new plugin - it fails, sometimes auval or pluginval will tell you its some sort of parameter name conflict - so now you must trawl through all the UI widgets looking for these duplicates.... not anymore...
This little utility (hacked together in half a day or so) lets you load your <productName>Desktop.xml file and looks for duplicate pluginParameterNames and tells you which widget is the offender....
HiseSnippet 2109.3ocsX8ubabaD9nru1PF61jL4A.4l9GjURmHcUjkCiRkr9QGNUxhUzwimIwMC3cfjvDDfyAbRhIQyzWjN8UqOB4MncWb33cThTIUSCGM1G.1E6G91OrGv0MQEwzZUhWkpud1TlWkm32alzL5vQTtzqyQdU9P+KYIZtR1rk2KmMkp0rXuJUdzeAMnR0G6Y+8S+4WRETYDqnKOu2n3QrS4S3lhd6t+ekKDmPiYulOoj0auemHk7PkPkBf4Q9M8lRiFSGxdEEMaMeuJ+lii4FUROC0vzdUd7KUwy5MRckLy92v079BF1nkWOXhx59DkHFQL1q2gi3h3t4KZsGLKcKnfGkQAep+Y7X979KnhOxN.ovix7Qk0VDdOZA30pL7ZVBdKARUJAoGmAoO1uWTBepoXjrTSGogkLfBzdYnjYq2Z+ym3enBrPZBmPGyNIAZL2i5auayMH6zrYi10pATu1PtjlP5wDrHCK9Dtf0kZFQ1ijOGCYlCUSlpjPi5A21v.XdtcegZFXogcsIXifvvPzlhPcASmJL5UFA23nStGW17UKgMjXnIfuXXaaa+dsRVzZ.7zA5dlDtbX4dNHIgNKqCCaxztzD5jhlcNJGrSwArFCX8adGDStTvkLxfTYjA1ZPTxrk9aO6TLr35IQIpGkuX1.VvhTViZ+Psp7A0yZP1ZqIpIvnzjYDR+TiQI2TqfISLivtN0vfGISSfDNIFzQ0pBdWcqsHpoLIgZWDj9IpqzrDhQQDLCwLhQRw1ZKdHTI45IBzRvUDZ8logEWXla0CBC1fLfJzrMHA+wPvTrsaUUOwx5MvnBgcnxjGTsBHer2BdGXlLyai8eeBAmcgFUVFoNZT3IoBAZYiFsAdQC6arqkoPWvDdCjnqdS6Zve2mZzQ+AMv34RBGREh9Poj5KOGgJnkjNuHU9Zl17KKQlmXlS9Ww0iXZLmvtlEgIRbHnrfIDINqw.K3xWIt8Awb8TAcVXF2tBIuUyun+Tqx7JFDZLjXXHCTIj3zoBdDVMBbnPCGFIXzj5toIemBj+JRlgBEMFJWL4sSDXavXxWt4laRTiHXloicEBAmqIWoRFyhcfFDmCQTwFkIT3R.PTh1lnASnxXBrH4FB7WeJTuhjBDKIXu.v6x6SuKdxGIC4k1AS1qrig14uNLitUHQBH9JPzNRkFSFQujg6JRGBaxbLGGJyY4GMQBusgfnz1NKYqgkAgF+dnnoz37QKTPFCleaH.YhVAvbJ..ScSBVdsD.aXQBBZHqTmCKsls4eY4hPgBlbnYTaBe80A4TU2VNxD0kn1IIsThVnTiQBBmLqrBdCAQM.VFwH2CqzHZBXbeUpwo1PoZon8M72EBU1Lv60zvVG6aKdos7SPCxO9ijeFS6I3wrjfFHPyPJ.0yGiQdfJE3NXmRXHTjvBUj73.WEzWnhFG.JTMCDFCPE.nX0f7XpHcHXkkxyQbUaYbfp3syZe0HTH9Ykw16Kiss9JGhbPBoOMHzib5Ta3mSZkCoMoCwsZle.zpuxnj4m8MEL3Eo3gSxCadbw.mwCbS3F.KfwSBafc4OnHzDiDRWBAvMQhzXlkfPT3lg4uMBV+K.k0a8t1EQA2HCJ4oKwq4OGpS6ms8qdqMJ5UP0vQAhYWe9f5AeaPPlDMedGwbTUQIDWAeG+TpZB2MKym6FjOaOxlsbjxbVAmXX5bZjhoaYE5x6Z37tZrNI3akAv+d7EWb9Ea59czW28zNGdvqOFd9KBHqWrtmudtgAucaNHJA7oo5Q0Wh8E7fU2vsJTKsZqsuYgpBpofkKJTVXZryQtI.EviI6wym3kHfGubAbIR61hwE7fviKbovmpYmdATAKHdFChmETC2YvUKJpVseBiNtMgjcN.XuKt8lQskm.JJiSxs9l49Md80mSrkTX1Bkkd42b0vsqkFz8fKN3rESsvyAjMSwWdze1WPxGqyQyg6+iRpUFCRdPVRLJHDxOOiTaAF384jRlVqV9S0r+OX0pOmi6bIq5DNKdrE6YaJcnlWoLryk0sGdo1M0H2dnACV5XtYSvRV5v383RtOGqKSmzmkT9nSngvkaV7FS9q9FSkuPWTFwTxPkrijaNGNU7ptlmmiMgm95NGQMT7ZVt9.6lxRLbDBUNhcIbm0rKcU0+HldrQMEP57TfWkeqwN5uyu7KN83vMu989KbBSuqKtd6eX+YEM1YeT.ZuUW1ozAGHVO35yxuQP1RQC5oNxt1C6kegwBnTMCJO0AkSo8YBKR9D+aeB7UBl+19LHKPme0T3XDf04C+Se+98Gleq7m3u8ydw1uXmm+rW74d3Rn7.Oe2VunYyca5ks178gR7K.1OXk7VUemtckf7u6XrZnkDqo2gpXRbQf2P+TXqm6iBb+7mKU9INHwheCmc0TUhwBqOzOuYqUBL99KxW+ieX+QL9vQEewCxU6eWPfhu4n3oqJKB7RVUqUFduaE9+82e6vu++51Ivms6NsZs8tqNANABIGuPTFuRE7gxIY5MeX2vorAFuE0LkS4vqJAaKs7JSid28Sa7Q9mohSETyheoE7yK4F.Jlrvm2.+DFRM2Lq7me5+ae9keoP7i86xMQiVNFWaIXDJ47qAFcezpm5e7fAvN9B.9X+Sd6uNegJuKfqV.mg3LJbTBPZ5+pzI8.cTDChtTBG3B5qxZXY2r1Mw1HCziIisM9OvO2fsv1UbC1JePuIznD02Ek8JD7yh8A1d.LIseQvp9mgsIs7ruVAkeMCAwKr++6hhvk+lfda497rGfO+oGfOa+.74ye.9ryCvmm+.7Y260Grz6AoF0jrsCPGcO19t1JUN1Va1pB89uPo1BVN
Latest posts made by Lindon
-
RE: Filter Display bug... is it fixed yet
@aaronventure made me laff too...
-
RE: Filter Display bug... is it fixed yet
@Christoph-Hart said in Filter Display bug... is it fixed yet:
yeah that one took embarrassingly long to fix...
Thanks - now my usual technique at this point is to wait for Dave and everyone else to go download and build the latest version and tell me its all fixed - basic laziness really - @ulrik !! go get em!!
-
RE: How to delay note on?
@d-healey I don't see it as that hacky - the "generator" is now a completely decoupled process, any downstream note owners either honour its messaging or not as they see fit...
-
RE: How to delay note on?
@d-healey said in How to delay note on?:
@Lindon I think rather than using a CC you could just set the event's pitch bend amount and pick that up in the processor?
I think you will find that the event data doesnt get set for delayed events...but as we all know I've been wrong before.... this guy I know called Dave says "try it and see..."
-
RE: How to delay note on?
@d-healey said in How to delay note on?:
@Lindon said in How to delay note on?:
A note offset? You mean transpose? or something else?
I mean sample start offset.
Currently I'm using
Synth.playNoteWithStartOffset()
I also need to be able to change the pitch of the event and the active group... maybe I'm asking too much :p
Ok so theres no way to do exactly this (i.e. pitch change) what you have to do is a variant of what @aaronventure says - have a "noteProcessor" script that follows the "note generator" script....
This is because the pitch fade only happens for notes that are currently playing - not to notes that are delayed... look for @ulrik s recent post about this problem and the work around we came up with - for pitch "bends" what i do to de-couple the generator from the processor is have the generator issue a CC message (say something unused like cc110) and the processor "listens" for CC110 and thus knows what the current "bend " amount is...
-
RE: How to delay note on?
@d-healey said in How to delay note on?:
@Lindon said in How to delay note on?:
Synth.addNoteOn(int channel, int noteNumber, int velocity, int timeStampSamples)
This looks like what I need, but... I also need to be able to set a note offset.
A note offset? You mean transpose? or something else?
heres some code(mildy edited) from my arp theat does "stutter effects...
for (i = 0; i<= stutter-1; i++) { //Console.print("playing stutter:" + i); playingNoteIDs[i] = Synth.addNoteOn(thisArpChannel, playNote, steps[currentStep].Velocity, i * playLength); // set the note off time //Console.print("note off length:" + ((i+1) * playLength)); Synth.noteOffDelayedByEventId(playingNoteIDs[i], (i+1) * playLength); }
-
RE: How to delay note on?
Synth.addNoteOn(int channel, int noteNumber, int velocity, int timeStampSamples)
timeStampSamples - is the delay in samples
-
RE: HISE Changes and additions...
@d-healey said in HISE Changes and additions...:
or the filter display bug that was introduced.
-- please please please - this first: BEFORE any new features - at the moment this means that existing projects cant get the latest HISE used on them (new features or not) because it breaks existing deployed functionality.....
-
RE: Another HISE Scriptnode Compile Error?
@Casmat slowly remove each scriptnode from the compile process until you find the culprit.
-
RE: XML Component Tree / ScriptNode Apparent Corruption / Modulators Connections Failure / Filter Display Update Failure
@clevername27 said in XML Component Tree / ScriptNode Apparent Corruption / Modulators Connections Failure / Filter Display Update Failure:
h. According to the screen display in the Table view, data was now getting through.
But the modulated effect (a filter) did not display any updates in the filter-view. And everything had a message I haven't seen before: "Not Assigned".
Yeah I can confirm this is what was happening - seems the latest build might have a problem with the Global Modulators -> filter freq.