@David-Healey so there's no way my server could be faster, especially since it is actually very slow...
Posts
-
RE: [feature request] Network connectivity checkerposted in Feature Requests
-
RE: [feature request] Network connectivity checkerposted in Feature Requests
@David-Healey that's a good point
But since I am having troubles anyway, I am currently releasing a new system so I'll use it and see. Since isOnline doesn't work for some people, I need a solution for them...
Do you happen to understand the issue behind isOnline?
Because I wonder if I shouldn't directly check if my own server is avail instead of google. in the end this is the only thing I need.
But perhaps the issue has a common ground no matter which website you check... And since I can't reproduce it... -
RE: [feature request] Network connectivity checkerposted in Feature Requests
@David-Healey Hey Dave! I currently have a user enable to get the online mode on my license manager...
So I'm checking this solution but it seems I couldn't build for some reasons (macOS)
Claude helped:
What was wrong: NetworkConnectivityCheckerApple.cpp includes <SystemConfiguration/SystemConfiguration.h>, which transitively pulls in MacTypes.h. That Carbon-era header defines a global Point struct, which is ambiguous against juce::Point (brought into scope by the using namespace juce; directive in the unity translation unit).
Fix: Wrap the SystemConfiguration include with #define Point DummyPoint (plus Component and MemoryBlock) and matching #undefs, mirroring the existing trick at hi_tools_01.cpp:36-44 for Accelerate.h. Edit at hi_tools/hi_tools/NetworkConnectivityCheckerApple.cpp:12-26.
It seems to work in Hise, I will check the exported binary today
-
RE: Matrix modulation connection is broken in exported pluginposted in Bug Reports
It cost me all my Claude tokens but it's finally fixed!
https://github.com/christophhart/HISE/pull/965 -
RE: Matrix modulation connection is broken in exported pluginposted in Bug Reports
@griffinboy Thanks! at least I can see that I am not (entirely) crazy

I have solved (or Claude solved I should say) a few issues already but this one is persistent.
I will try again tonight with Opus 4.8 since is good for long task. It might make a difference here reducing the risk of hallucination...If ever you can manage to get some time trying this snippet, and add it to your list if not already in, it would add even more usefulness to your report by keeping thing as centralised as possible.
-
RE: Matrix modulation connection is broken in exported pluginposted in Bug Reports
@Christoph-Hart Back on this as it is still not resolved...
The simple snippet from above:
HiseSnippet 1946.3oc2Y0rbibaDFinfVsZW63s104PpbfGksWqZFpgTRUNXt5OaVdoDsHsbpjCJPy.RhRy.LYFvUhNUtma4UxOB4IHUdDxafciAyOXjHszxUVdKSUEKBz.n+Pit+5FP8hEdzjDQLxZsASinHqmh6OkKGu2XBii5rOx5CwRZhrgciV1MscQ6NMhjjP8QVV09R0Xrd7xnzO++uXWR.g6QK6BgNUv7nulExjk8F09qYAAGR7oCXgFi1scGOAeOQfXBfmZXaTDw6BxH5QD0vVBi9JRxXj0mh8caQItt9dzFCota277s1bys8Z4Z6a2pAsYqgD6la4NzEYsxA9LoHtuj.6Bj0x6J7m1er3RtVAmxRXmGPUMbP8AMq69PQfuZKp5Es2XVfeubCUBBYg6UZ1poMau.2k4yJ5uz78QoBpWNCSCn0RUgWsJvywDd1FvaFPxx.RKqgzyv88hYQxRIJ77DbGtjFOj.mSlPQOVj0Of2S.CfK2HjbA8vXnQwDVuks8KqCe8I+ogS3dRlfWWvORHoGyW+SV6er1iW6etV8qKZ3vYJSolXQP.MdlhUtFw+bSbc9jvyowur9aHASnECD19Uso34aSMOx8z6ZiAJ3c3L4wQT97bDPYlJk8OCUvPkoV+OLy52Of4SiQLvH+H7WyEm6fRAbla++66ew+8KPeam8IRR9x.qHnkHZrjo1.V6SeCDDoOTeLdeZxERQT5XCiDbk9sV8VU5UkwYr1SKZ7Cm2NjHiYWMfDOhJ63qTwgwz+9Yc6hjzqf0dE7gmbv2ftj4KGWLu1+s1iorQiMBq6zFcSmPv8W3OIfHqFSnXNxD.GpUbDUda7DlbpIyx8VfxcEhOC2iI8FOaLtzLvHb38KAFynW9.7ACGR8jk.bY7g+4eg3RV5l1n0xbr.cpIQzMqWECKkSh7uvkArQwzHRLcfnW.Y55Ijvn.5I.DeY8yCDdWzm88zaFkGoQvtpQrt2XBmSCRVDxfUtyFEm2ZB1Y53rJ9fqjwDmGRe5SDSjL9ntoAx.i2QSB6C4P8n6kY4f9rVRwWoaaqZq.QeJ2OswOBexD5nZakIzIWXIUG5Hp7RQ7EoFkreCaasaQRpCvYCuBcJMNQE1.DP1a.+gdUPf3REkEKKfJcSBYzGPXA5sV5P5IBlFMVvYdJKmdB4ajWEJlnn6z6lxfycy8jJ1XSR.da+i48gImVRBDfXcjvG90iNj3Al8o8HJ9rmgUL+voGMdCuhSQycR4AoBi5ZQLkqNx5Qhg9gzjI5skRS4ExnQDrQBSopgxXrpojmFpogzJZVwKiIQTk2yYgBvzWAmerANCgJJzXcVX6FqycELVFf4I3hEnJN9H.GwzMJkNaySo7aQ6KWdJpSAkjkFjS8ztIo1HUhomhEIdPkip.NTgEWI4Ioorl.mzSQHiyBEWVdKP6cY7S04dwJmRTWxUYsWA6zB5nujFk4Fgcf1JKwifBl7ofCs4LQ2skUuJyZU+c40P1mMhSBt1pq75CnWkWTv9rjHf7b2IPN.MYTkdf1ZHBIE9bmzzG4EOT0ZTQRJilpEPJsjBROE2I4TkTuR7.wYFNEUN.tQTD3UXHdVtEUl+s4U9NZCLcBV4tdZ4NmSqUTL8z46BrZ4h9briMHV8wwcGaGmVNFp343l4R2xsocyssaYnvW.Krisc0I2+B5kZasd.MZryN1tMa0nwltau01My3qJC.F.wdCDoJDBidCbhpfn4H1mNjLIPVfoFMxvzlM1Z6FMa1D8pIRATWXwcflmAz4tFE8zT0W+DUfNpxzemCkVAplTReGVTcTduwjD5bLd+d7Qh3PR.nY+dTHwJvDOh9NPIjiafBOq+OPc12vcycfav17ZmP46o4EWCgxF5Vu1JyM51fA3UWdcaGDT4BMFXiLp5Ep7CBDOGR63WgVdQYSVja5XVOLVK743uhD66AAk9cII.pyJL8iK6utVv0JQsVQEKlovSMVlkxW6gtrQHefS8eUtQTEHtV9SGnqkr.noXr7hglnqqfKxqWqDdmPg4OZjxgrryx8WJcZFs+L2d6MIAXfT41gjAmd8KL2OTHjigRdq9.RcZeucvo04IDNDlq7n4QSj5VV3PyW8BgBIWYh7NZViTaSRAcU4vULL2N0B53Ix6MU9sIztL+dBvHC19Wk7WnwB0XePt3fg20pZuq+.9KCDmWPy.gA4U1l5l8GyDWuPd8xAL+me7+b++7iW+ojV9t4McKud3xu285g20GE4423jI4WKhpmogIF+5CONi.E9UIvtcbsKKRDPTENVqrxnB4q1V4fzoz+p8+t82QdCcHDrlkepXkdMcDnRydFPCiD8mx8L8EmCo0KZ+ZgH5.NALB9lKRZAIGObXBUVYYfkcfPmbaO08dME1YDGpCW+hrl8qoSy2.ojppRoRyEa8Wwsb2.9L7yTeuydvWad78S62lGEy4s9UoliSpxQn3HW4R7d36KpQYgi26on7m8UPq8a5WA8AI2ndw0UD+fnvPhWr3LO8ilphpVMsGvHvSug9igB+f10q9OoPWyAjH5LOupK0MlXiEchatnSzcQmXyEchsVzIt0hNwsu8IppSH6V6p3TDpauCzz6VE4VfJ99If8wJvBmac:
- AU doesn't work
- VST3 doesn't even load
windows:
- I can't do anything, just click on the hardcoded module gives a straight crash...
I re-downloaded a clean version of Hise to be sure.
At this point I am very confused, if I'm the only one reporting this, the issue might be on my end, ok... But how could it be the case if I have a fresh new Hise?
Even more strange, my main bigger project loads and the exported AU/VST3 are loading as well (just the matrix is not working)
At least the hacky solution I had here was working:
https://forum.hise.audio/topic/14670/matrix-modulation-connection-is-broken-in-exported-plugin/12 -
RE: I made a really good sounding JUNO-6 emulation for free, shared it in the KVR forum - this is what happenedposted in General Questions
@CassD said in I made a really good sounding JUNO-6 emulation for free, shared it in the KVR forum - this is what happened:
It’s not like devs don’t have backend costs too… Apple dev certificate, hosting etc.
For a year now, I spent more on the different charges than what comes back... yes, I'm currently paying to work at a point I can barely eat...
-
RE: Control ScriptNode from UI knob AND envelope?posted in ScriptNode
@dannytaurus Matrix Modulation does this. And bonus thing, you get the envelope visual feedback on the UI knob
-
RE: Get Panel Attributes - Coloursposted in Scripting
@David-Healey There might be a bad parsing at some point. Without really knowing, the hex might be first parsed as string by the property editor...
-
RE: Get Panel Attributes - Coloursposted in Scripting
In the end, a number is a number. The format (base) is just a chosen representation of the same number, be it decimal, hexadecimal, binary, octal or whatever fancy base-factorial one can invent

-
RE: Meta Adsposted in General Questions
@dannytaurus Thanks! Yeah making a video is a thing, but to make it short and impactful is another

-
RE: Meta Adsposted in General Questions
@dannytaurus I'm a bit lost with all that but I'm catching up...
Do you promote specific ad reels or boost organic reels?
I don't know if this makes a difference. I reckon ads are 30sec limited and organic reels 3min, but it still should be under 90sec to be boosted... -
RE: Compiled Network Fixed Channel Count?posted in ScriptNode
@David-Healey Can you do it from the UI script?
const var ScriptFX_RM = Synth.getRoutingMatrix("ScriptFX"); // or master chain... global NUM_CHANNELS = ScriptFX_RM.getNumSourceChannels(); -
RE: Issues with Panel.repaint() and Panel.repaintImmediately() - laggy user interfaceposted in Scripting
@Christoph-Hart I asked GPT a while ago, so I just did it again with Claude:
Trustability: 92%
JUCE 6 (and prior)- Default renderer is purely CPU-based (software rasterizer). Vector-based drawing means significant CPU math per frame.
- OpenGL was optionally available via OpenGLContext::attachTo(), but it was opt-in and not the default.
JUCE 8
- Introduced a Direct2D renderer on Windows as the new default — this is GPU-accelerated via native Windows APIs with GPU-backed images.
- macOS uses Metal (also GPU-accelerated via native API).
- The software (CPU) renderer still exists as a fallback.
Performance delta
- The Direct2D renderer is built on modern native platform APIs, taking advantage of hardware acceleration and GPU-backed images, bringing significant rendering and performance improvements — including better and faster font rendering. JUCE
- Component transforms and tiled image fills show the biggest wins. On some older machines with integrated GPUs only (no dedicated VRAM), the software renderer can actually outperform Direct2D. JUCE
I didn't know Direct2D could in some cases not bring better performances. Do you think it is the same for Metal?
But still, using Win's Direct2D or mac's Metal is deporting the weight to the GPU so this should (perhaps for more usual plugin cases that don't have the complexity of Hise) be faster, am I not right?But following Juce:
On some older machines with integrated GPUs only (no dedicated VRAM), the software renderer can actually outperform Direct2D
So yeah, might or might not be better on everything...
-
RE: Issues with Panel.repaint() and Panel.repaintImmediately() - laggy user interfaceposted in Scripting
@David-Healey I reckon some people reported a black square with some DAWs...
-
RE: Issues with Panel.repaint() and Panel.repaintImmediately() - laggy user interfaceposted in Scripting
@Oli-Ullmann
Yeah so to confirm this, Juce6 uses CPU instead of GPU, one of the main reason I am waiting for the full Juce8 implementation.
Shaders are shady... That OpenGL dependency is quite bad too, I got issues on mac that made me effectively drop them (for now?)
Until then, you can make 8bit retro audio plugins that require less UI precision... There's still a market for those squary bast****...
-
RE: Recent commit to Processor.cpp breaking old projectposted in Bug Reports
@David-Healey Oh... Didn't see you opened a thread precisely for that matter...
https://forum.hise.audio/topic/14770/compiled-network-fixed-channel-count -
RE: Recent commit to Processor.cpp breaking old projectposted in Bug Reports
@David-Healey Just tried by curiosity but it's still half dynamic, because you still have to hard code the number of channel (
getFixChannelAmount) and recompile the DLL...Weird there's no way to get the hardcoded FX to actually fix the number of channel in the function parameter, @Christoph-Hart?
// ==================================| Third Party Node Template |================================== #pragma once #include <JuceHeader.h> namespace project { using namespace juce; using namespace hise; using namespace scriptnode; // ==========================| The node class with all required callbacks |========================== template <int NV> struct MultiChannelThirdPartyGain_custom_node: public data::base { // Metadata Definitions ------------------------------------------------------------------------ SNEX_NODE(MultiChannelThirdPartyGain_custom_node); struct MetadataClass { SN_NODE_ID("MultiChannelThirdPartyGain_custom_node"); }; // set to true if you want this node to have a modulation dragger static constexpr bool isModNode() { return false; }; static constexpr bool isPolyphonic() { return NV > 1; }; // set to true if your node produces a tail static constexpr bool hasTail() { return false; }; // set to true if your doesn't generate sound from silence and can be suspended when the input signal is silent static constexpr bool isSuspendedOnSilence() { return false; }; // Undefine this method if you want a dynamic channel count static constexpr int getFixChannelAmount() { return 6; }; // Define the amount and types of external data slots you want to use static constexpr int NumTables = 0; static constexpr int NumSliderPacks = 0; static constexpr int NumAudioFiles = 0; static constexpr int NumFilters = 0; static constexpr int NumDisplayBuffers = 0; // Scriptnode Callbacks ------------------------------------------------------------------------ void prepare(PrepareSpecs specs) { } void reset() { } void handleHiseEvent(HiseEvent& e) { } template <typename T> void process(T& data) { auto gainFactor = Decibels::decibelsToGain(gain); for (auto ch : data) { auto block = data.toChannelData(ch); for (auto& s : block) s *= gainFactor; } } template <typename T> void processFrame(T& data) { auto gainFactor = Decibels::decibelsToGain(gain); for (auto& s : data) s *= gainFactor; } int handleModulation(double& value) { return 0; } void setExternalData(const ExternalData& data, int index) { } // Parameter Functions ------------------------------------------------------------------------- template <int P> void setParameter(double v) { if (P == 0) { gain = (float)v; } } void createParameters(ParameterDataList& data) { { parameter::data p("Gain", { -100.0, 0.0, 0.1 }); registerCallback<0>(p); p.setDefaultValue(0.0); p.setSkewForCentre(-12.0); data.add(std::move(p)); } } float gain = 0.0f; }; } -
RE: Recent commit to Processor.cpp breaking old projectposted in Bug Reports
@David-Healey A compilable third party node should be able to do it when loaded into an hardcoded FX. This is theory though, I've never done this...
this way you could do it in C++