@d-healey great. Thanks!

Posts
-
RE: Possible to draw beyond callback obj with LAF on slider and button?
@d-healey said in Possible to draw beyond callback obj with LAF on slider and button?:
You have to make your control larger. Or draw the contents smaller.
yah... that's what I figured. Kind of a shame. A work around that's very silly but should work fine is to make 2 sliders linked, with one big and one small and disable the big one so it can't take user input but reacts to the value of the small one.
-
RE: Possible to draw beyond callback obj with LAF on slider and button?
@d-healey I can't tell if the dropshadow on that extends beyond the bounds of the obj.area and it doesn't look like it really changes so it could just be a static background.
What about a glow that glows beyond those obj bounds? It gets clipped and looks bad.
-
RE: Possible to draw beyond callback obj with LAF on slider and button?
@d-healey I'd like to draw things like shadows and glows and backgrounds that are reactive to the component value and extend beyond the callback area.
-
RE: Modular slotFX with programmatically assigned knobs, not possible?
@Lindon appreciate this reply. I will give it another go.
-
Possible to draw beyond callback obj with LAF on slider and button?
With a LAF on a slider or button is it possible to either:
- draw outside of the bounds of the obj.area?
- limit the callback to only function in a specific reduced area?
I can think of a few very unclean workarounds but I'm hoping for something quick and simple instead.
-
Sliderpack assign single slider value?
I have 2 sliderpacks and I'm trying to make them match each other. Sliderpacks don't have the "linkedTo" option like knobs or buttons so my hope was to assign the values of one to the other.
I can get the value of any individual slider in the pack with getSliderValueAt(index) but I can't seem to find a way to assign a value to a single slider.
I'm guessing this might be possible using referToData but I haven't been able to figure out how yet.
-
Modular slotFX with programmatically assigned knobs, not possible?
I have 6 hardcoded fx and my original idea was that I would have a GUI that lets the user choose one, then it would load that dsp and programmatically draw knobs for each parameter in the fx. Each fx dsp has the same first 3 parameters and then after that some have 1 more, some have 2 or 3 more and those additional knobs are different for each dsp.
It doesn't seem like this is possible in Hise.
Issues i've run into:
-
Knobs can't be added after init. This sucks but isn't a deal breaker. I can add the max number of knobs needed on init and then hide or show them as needed while reassigning their function for the currently active dsp.
-
Biggest issue, slotfx seems buggy. If I have one fx loaded and I switch to another, it loads with default parameter values but if immediately send a knob.changed() for the knob that's controlling those parameter for some reason it's not always receiving that old knob value. Sometimes it stays at the default until it's moved by the user, sometimes it gets the changed() and updates to the knob value.
-
Despite calling a setAttribute by name, it needs each parameter to be in the same order or it gets messed up. If my first parameter is Mix and my second parameter is Depth on my 1st FX, if I swap to a different FX and Depth is now the 3rd parameter, it messes up and despite calling myFX.setAttribute(myFX.depth, value) it will try to adjust the 2nd parameter, not the one called depth.
-
.setAttribute() seems to only work with my fx defined by Synth.getEffect()
While .setEffect() seems to only work when defined by Synth.getSlotFX()
So I am defining the same FX slot both ways at the same time and calling each type as needed. This feels wrong but it seems to work? -
Odd behavior but an easy work around, if I try to programmatically check how many parameters are in an fx it will always return true even for ones that don't exist. If my fx has 3 controls and I ask if there is a 4th it returns true with a name of blank "".
There are other issues and odd behaviors but these alone have made me think I probably shouldn't try to do this and should just manually draw knobs and panels for each fx, load them all and then just turn them on and off since I don't actually need to reorder them.
-
-
RE: Get Network Name from Hardcoded Master FX
Is there an update to this in 2025?
The solution is hacky and works. I'm just wondering if there is now a "proper" way to do this.
-
RE: Mono to Stereo in 2025
@d-healey Ok got it.
This is very odd. I compile your test project and it works fine both as Stereo and M>S.
I compiled my project with the same settings as your test. Support Mono FX flag and HI_SUPPORT_MONO_TO_STEREO=1 option.
When I do AUVAL I even specifically see this, which to my understanding means it supports 1 in 2 out and 2 in 2 out:
Reported Channel Capabilities (explicit): [1, 2] [2, 2]
But still the plugin will not show up in the inserts menu for mono tracks.
Is there some other aspect that could be stopping it from being allowed on a mono track? Possibly something with using hardcoded DSP modules?
-
RE: Mono to Stereo in 2025
@d-healey Got sidetracked with other stuff but I'm back to this one now.
Yes, definitely exporting as an FX plugin. I've tried everything in this thread and still unable to get m>s working.
You made a simple FX test plugin? Would you be able to send me that? I can try compiling on my end to see if it shows up properly here.
-
RE: Logic Pro Automation Lag
Bump? Anyone have any new info? I'm still experiencing this bug.
-
RE: Engine.loadUserPreset() doesn't work in Logic
@Christoph-Hart thanks for tackling this issue so quickly!
Tested as working on my end.
-
RE: Engine.loadUserPreset() doesn't work in Logic
@d-healey haha. I don't know why but that project fails AUval here. It won't even load. I even tried changing the 4 letter plugin code and it still fails.
I tried taking your code and putting it into my original test project and it compiles and loads fine but still doesn't work.
-
RE: Engine.loadUserPreset() doesn't work in Logic
I've now gotten further confirmation from someone who is a long time Hise user that this has been a bug for a while and to complicate things further, sometimes it works and sometimes it doesn't. Some users have the issue, others don't.
I am not sure if it's possibly related to what version of Logic. I have one person who is on the latest version who says they don't have the bug. Another person says they do have the bug. I'm waiting to hear back what version of Logic that second tester is running.
-
RE: Engine.loadUserPreset() doesn't work in Logic
HiseSnippet 1262.3ocsVEtaaaCDlxIZa1sacEX+dPv+xYvvyR1I1tCa0wI1aFMt0HNsaCECEzRz1bQhTPhJItc4e6gZ.6AXOG6MXuAaGEksjbbV6BV0OrAui2ce7i2c7FGvsIgg7.jVoyV5SPZ2WexRlXwQKvTFZ3wRAmvmSsMNiDJP8V5iCCINHMsc9V4NzJtKJ96udbOrKlYSREgPufSsImP8nhToi69Dpq6.rC4LpWlc2r6PaN6HtKOBPyN50Q9X6ywyIOEK2VAcz2gCWfz9BcqYSssl0pQayNlcZ0rio49sm1rtksy9cZz3fFNyrZiOnMXzGz2gJ3ASDXAIDosaOtyxIK3WxTA3EzP5TWhbgIZBDYk3AbWG4QTJEczBpqy3UzTHB7x3TRaGEo8Y5inNz0xSIuOMVgQpEYIPsB4g2N4fmYV3UOC71Bjzx.ocUP5g5SrCn9hTMR7bO8gLAIXFFtmxBE0dQE9CM8i3vNXhZd3yICBfEqsnxA0qW0.9YuupTo.xbiYTWhwWaL.9axxPAwq1bhHl8BpjQ3g99GiE38jZiwtTWkxOOjD.LCIjHB+RY1U7Ol07iEUVFDJykxHFyhX1BJmYvY8hDBNyTBx.taEatmOmAvspwEX2HxdkdSohkJ1mMGrqlKG6HihJHUjvE750fiWcHkHZkKpTNw4k2qVnTdbHNB65NERDqrYrk3KCvdJWPdFqhB.WWxXSUylsUcINyEXrsoVVhD7uYXEVj2TRPtiOrQHMHetk9smakM02VwKY1HmMjQEOymvtsBBTBYJyCSPErUQbV3mjjENwkBIEHJjr8g5OgwmZhhAb1lEnmOTllrxMfGgn3SBDT4AP6XxEPyDUxcQ8iIgmK39PfVe+AsvxGT08UbPKpmb4gtZcH69ycWlF+uoqfbkP0tC6D2syDEhufLjoReTDzkTGAzDRW6WzPnED57EB4pOG7.ggAFUVueBAGjzhgFNh6AfCGrbE+khW82JIcUV.tLayRnxxeB80qXvt+4q+0Gm022SjzYR46APsffxleFTCDGgGnmUTtH8iYijS20G4eK2QtJrZ57U8quudSylM5zxpw9VHJT0mQgU6VGzwpkkYFEVJ5I4hVcq9.cES2KfeIT0hhyFJ76EzeSICixxbxIv8g5hr7iLDAQjpqzz+JeLKDJMBOLDhPjmbGyvtgoaQ0XZ6lKKQCugOgJH01yoJULTTK6T8HCy5qM5PGmsGhSg7CuaA8GSbIhaQ2DHYxdQObvlJFfufG.Lp7Yyr5FD45NFKVrReXNlH4.MDHKGROd.PI4z+zHOE+IMyJVjZ82KSCNExX3fhWBxMLpWqwFeU+OJGD+Sww3DZn3v.BdMklDgpa6u0VoP1o7KGicbfT42U6Vyo83QLG4I8kJEi3AIWCapIM0aSMq34ansz0vzN23gYXj.tSjKVjeNA4zTIJfr3bONKe.FttDKyNs0+aCO7tBwGpOlJrWrcLVXKXDZj+9.iIib8w58mMiXKRA3t5C9g2OyWgNkGI6TNBKBnPiRcnHYBzDyl.QmwHtxGX0JHeJTsttbsjAlPXNwK9a3KQoobsVhRyUJQdX6.9qrUOfJGp6ihk.XhEO.bQ8Qx0Fa4kSO3MmWYam2U2vPq6pgMtqF17tZ392UCO3tZXq6pgse6FJGI3vHA2SU1fPiF2O9sMMs9wyLDmsh9Gfh5DmO
This one is with the object, the snippet in my first post is with it trying to load from a relative path.
-
RE: Engine.loadUserPreset() doesn't work in Logic
@d-healey I've tried the AU in plugin doc, bluecat patchwork and ableton
-
RE: Engine.loadUserPreset() doesn't work in Logic
@d-healey negative. I had high hopes this would be it. But same result.
reg file = FileSystem.getFolder(FileSystem.AppData).getChildFile("User Presets/Test/Test1.preset"); inline function onButton1Control(component, value) { Engine.loadUserPreset(file); }; Content.getComponent("Button1").setControlCallback(onButton1Control);
This also doesn't work in Logic. Again, seems to work everywhere else.
-
Engine.loadUserPreset() doesn't work in Logic
It seems like Engine.loadUserPreset() is broken in Logic. In every other daw and format this works but in Logic it doesn't do anything.
Been going a little nuts on this one.
HiseSnippet 1301.3ocsVsraabCEkirG2ZkzllhrpqF3UxEFt5gel.TaKKqTgX4HX4j1Bih.pgbjHzLjBjbrshqAxh9AzujBz0cQ21ei9Gzcco6kyLRZjrheHfNKj88EuGd4gWdaHEtTkRHQVYOoeOJx5w1M6y0c1uClwQ0pXTbnnMy04DpRiJ2uGVonDjk0buz3g0hyih99mcJi8wbW5HUHzaELW5gr.ldj1F69JlueULgdBKHk2qsaMWAeeguHDPyb14Q8vtcwsoGgMtkwF8cXUGj0WaWzqkaQuMKsUgsKr8lqscgBquUq0xWzkr91kJsQIhWwsvarEDzBGPXZgroFqoJXQKKH8a1QbNONAukoXs7oFgBnlPliUi1uCymzXPoQgPVy2XTgZt3B0yrqyHrg5GUv9hHCNihHcQyJysAoBO.HYkBRyGComZ2zUx5oGYwfmGYWiqoROLb1jFJw9hxDXYuu.7fqWM.2kVUBBCiH2F4yuhC7yxuHaVF2mwoNdgbWMSvcD7xgZsfWvDuT3myUDzSvgUZEmyv9gzkydY1EOf2FhZUeAl7FEU1PRUTctkL7ouw7SgU6EoZIHEWAYY.XZS06OX8xsTRlVZ4UUF8Q4aerueKfjjaRfr7KRgwiDZ5q44hvR1qx5LoIOuoZKYo7oxoZ1Pdk2Vf43gAsnxzUBiivg03LfEteL.23pRJGE7Zbl908nIxUE9DyIq4+uIeAkTVMLmDDBtpi3MedBuooOiPkHFrHeh8q3hVEPQfO8UZzapUAqwCVFXEgrziJ0LylwpB8L3JeLcbQ6JTUWsnGjngmjPilwSZ7IWTRWzN4XDcQ5T1ejvOtqldArFekcEAU4n6vTNmKjccXbmn1T6fT3yn03wrLCM+bFQCsMrs9KH9NTV6NZiDAjnbLToM2VOjhkbi2LUcQ..SrDxpUFTJb+36rXkB0e6t8S2ZSo6aNRWHxQT.iP7oMDJlgxjpG5epzzdMYuOphe4y9sW92u+W1IHcaVDJ.eQ5ttpPOO1EQ8G8X9AJMfsZAPaSj0WZC22bHTObnu1Q0EVG39aWJ4DQj+o2bORmzTKdyUEtspY71mv.Xa1hOwNspza0OzM0V8Cmt6v58OaktduAH0p8f16Kt.37+ZhfooAiz96W+qWOt1hING8kv3hoWOwN9PtrTbNzWAEQKy7GYruLqiyRlKJMApPLiZom6nkgzUFX4fK5g4Jn3q1SA4ILv3gG1WMxknqSxoGtoug5FqIbsN18wLMRMzowzl64NExOLn8HjomhiAxYvGA8Un9T8GwVSfI61oLVNogp3yDRntZdkMsspg99Mv5NCrqFqRjrgpAEKBsrPBkjwreTXPb8yDVwHUwxeugFbLvXDfgSA8NN4WszDeq7.0Cp+onbbHSo2SRwCKoIYXko8mgQEiriEm2.SH.U99F2vZZYQHmX1omFantPlbLLokQTuIsLnNeCqYuBFN5FuoCSSHHg9X83iXXF9JwfoER520MucCGW59oaS7.l6H+sN2w8EhO0tAS61Y5XLyTvH7hx+GXLYZsOy9.OOpqdD.m2t5OLqilcGo+XQnoSYcLzLFZTZCWRZBsxboP14bpuxzPLioeVrbdiroBzjxIQBWCeIFKXjsRLVXfQ3Y.Wo3ctwujalG7Siz.XhGMu7h10MxNS4Ib34G16bcGeotQfEm0.KMqAt1rF35yZfaLqAt4rF3V2cfl4Q1KTKBhu1fP0abPzaaVVGDMvRDaE8efffMCF