Server.callWithGET broken on Mac compiled plugins
-
Hi @orange, I tried multiple servers and setups but couldn’t get things to work with Logic Pro X, so
I decided to remove the code that depended on these server calls in the end.If you need help testing anything out further just let me know :)
-
Hey @Christoph-Hart, myself and @orange have just been doing some testing and it looks like it’s possible to get a server response in LPX, but it’s not the prettiest workaround.
It seems that playback through the plugin is required in order to trigger the Timer Object that returns the response.
You can see in the video below that initially no response is returned when hitting the ‘Call With Post’ button, but as soon as audio is played back through the plugin the response is returned.
Thanks for putting together the code snippet for testing btw @orange :grinning_face_with_big_eyes:
-
-
-
@orange said in Server.callWithGET broken on Mac compiled plugins:
@Lindon only AU fx plugins. Standalone and İnstrument versions works
..and only in Logic?
-
@Lindon said in Server.callWithGET broken on Mac compiled plugins:
@orange said in Server.callWithGET broken on Mac compiled plugins:
@Lindon only AU fx plugins. Standalone and İnstrument versions works
..and only in Logic?
Yes only on LPX. Interestingly, same AU plugin works in Ableton or Reaper. But in LPX we see this issue
-
@Christoph-Hart This is the exported fx plugin, you can see yourself: https://www.dropbox.com/s/b4qq5z8qopwlzzo/ServerTest_FX.zip?dl=1
Also snippet of this plugin is in below. In Hise works, instrument plugin works, but compiled fx plugins doesn't work in LPX.
HiseSnippet 1645.3ocuXssbZaDFVxwaRrbbmjYxE8RMzafo1bvw4PSm1.FiSoECLVX61qRERKvFK1kJsXBwimI8IpuB8QpuAs+qNwJrD1wyjpKX1C+eq99Ot+nttLKrmGyUQcidymfUTeDxXNkOp9HSBUo4A9Kfcu.61C6wU1e9DSOOrshp58dqPB0MVWw+4edy9lNlTK7hkTTNkQrvsHiI7Eq1s5uPbbNzzF2iLVR58p1zhQqybXSA1bOTYkIlVmaND21TH1ZHE062vlvYtFbSN1SQc88Y1yMFwlQCj+ThGouCVLohhAbPAKeHywVvXwpJ0GQbr6Fo0dJvozcgM3dA1fmhNhXShWegs3w9anu.gr8PcsUQuJxzq7smdpRza8.58DjgkKYBewNBtsIpIkicGXBt.YZEHqxZ+0CP0YfDTdwwlmiOzElDiH+KJWda8mWtbguWSCbCdb8KLc0YTGBE2pui9OnGAdHlWmMdBiBSxmKVhb.xE.wiMINqBWj.IgIX8Llq8pPJISRvdfcep2pfFKQRftXOPBuUpmRxjDLGBhcWExHARByzhStfvmuJjRxH.qEaqK5gEGL9C7baqGjcVj30we67EzeidtNsa0rcib5uFFd3g9igSHV+Sb.4L7WVHfjVlTjiC2PHTjBkTBQxrqXaIVmThlsqUuWyS8YB7lFpaY5.Ldn.IrhVnh.X12zCexwsxmaDmOw60kJMa1rhTFwCa5MpnEabI+ynTI8tcL5oQ7Ub8ASovqlQgnVwIeFgOpKyiuOmJLutLm7VQ11sAefyTbAsK01fLPOe3Lc34R+eEORzCbQMnCgWhvCcxDgEHOvfHIiG3aDJBlYWt+v7OqbZhkge3rZM60r8a0M5Uq2IF506bPihEKlS5Dxz+DA83FFc6z1XYbwCbXfVAoYtPMUH02CTrKyM0C6RgEx8537VgdFd5E1NFcZOw4i.ZoTS4C3pTHRnyN1QA9w74lMYm26wnkd+L9NlS4iJcQkRb14XJnhK371wd57AFxsisKEhO+KSP5H+BaRfaQxzjfUY6b3thpjA6UXI3Y4UBvDyMITWEN9JMv1jdx+Rgv4JHN5v.45vd8gKGymUjdgj4SAihQEa9lYR3PDtHMPvlrxbCESTWILCVTWQNc9J+W3hpa9V4EIMVtX3JQ+E6z+8XKtvAD5SvAYJWmb7HZkZ8lvS1lMEtRsGyf6BLL+0SR02QNOda8cKn+s547vVQzVppQaFG2gl2upf1UZ5Ku0fAotWnM2QDWkx1gQbYCLOc539XW4ZRBAgq6S1OAJ69Ija2wJHbRRPFsIkv6LASypKCkvXPXzIMOvjaJZ7HbMPtIXWNQPA0CvW.czEzFxFnCvdmC4TJpZwAtvxb+c+pvlT1eJmynJDaQeKKEsp7gEs+QpNOdR0eupvMK52pdsVszOqYuexuTuBw6H1X30X5NOPWlQr4ijOkQXxvQRsa1qpm4E3lztPdHlGXhTtNc2JjtsL6ic7YqFJpXnLM+MIZ9oet5Ru94W60+igZBz9Z+gQM29HTkx6Utxqd4y9tJJC.yrA4iRcBWt5shfagjp2lEGqd5+GbTKKNtIJtokrb1JOs5M5DOnJFRELi6dNM9DnCODEz5SVZhLq2LaVGeIfDqqhk88muDqqNIEVGwofNrxhS2rtIVK3uAsEpF01zAqeDixRnMOJ63DoKnj8B6IqO+wR5ym9yqoOjP8QCE0N3sSiLcHCoi8I48QN3AbkrzmaJNayrSVitkP1g8QIE7u6ubXlcJNrUD+mFeCrGO.4WiOE1u6Rws2JcYKjzEwY4u9BpNZnnq1+L0nLqT8Pj+3JxJyWKWBnYjxfTOClFoHH0uAlEYjabTslsjCld.x0WNeVxmKnz8gKIcr+rX0tWiUH0dvvajQZnt0LLNqywGbKI00+m7OFcDydpiIO4GYP7kUB2.5THw+lW7O1odPrg7Wd4KxWd31R2mf5R3ViRmuqkBegdK9Ry2vuiyVnFCF.satfrqiN7W+x+QaTNlMUzw7QlPaoPzEp8zwFPZnEFXBkhcDcyotlnuqf4kEyEVFCL01ex+BOgaVQLWMbyJQapL1zxk8NqfdHEeonG5uBvIpep8FniDy0qn32WIfCUtXYkwDax6rrDlhc.tmNlcuCXd1c.yd2ALO+Nf4E2ALu7Nf4UqDi3aGVaJmMNHMAVnaC+lsUUaPEkT8iHU9OWkXzqC
NOTE: Create an account for login from here: https://www.noiseash.com/my-account/
-
@orange What's The Purpose Of This?
Plugin Activation?
Downloading On The Fly? -
@Natan said in Server.callWithGET broken on Mac compiled plugins:
@orange What's The Purpose Of This?
Plugin Activation?
Downloading On The Fly?It can be both of them
-
@orange Hmmm Sounds Intresting
-
@LeeC Good finding :)
-
Hi all,
I have to bring some more information on this server plugin test.
The Timer start and the server call are not in relation with each other. Although they are triggered inside the same button callback, this is done sequentially, one after the other (timer first then server call)This is important to know because it tells us none of them are triggered at all when the playhead is stopped. This why I don’t think it’s a timer or server issue anymore…
Could Logic have a function like the one we find in ProTools, that put the plugin in standby when it’s not playing or even between audio containers like ProTools can do?
This might explain these functions are bypassed or not triggered…
@Christoph-Hart Does it make sense?
-
I’d like to add that the timer and the server are launched, but they are in standby (we can see the server thread is ACTIVE)
So maybe Hise could « disapprove » this forced standby for vital functions like server and timer, what do you think @Christoph-Hart?
-
Think you might be right that it's not a timer or server issue @ustk.
Here's a cleaner example of the behaviour in Logic Pro X.
As you can see, movement of the playhead is actually not required to 'Activate' the plugin, running a simple test tone through the plugin is enough to get things moving.
Furthermore once this is done, the plugin stays 'Activate' for the entire session (as closing and reopening the plugin demonstates). -
@LeeC Good catch again!
So this is definitely a LP restriction… the question is, can Hise go through this restriction ? -
@ustk said in Server.callWithGET broken on Mac compiled plugins:
@LeeC Good catch again!
So this is definitely a LP restriction… the question is, can Hise go through this restriction ?Yep that is the big question!
I also attempted a hack around...
By playing audio internally using Scriptnodes Audio Player within a compiled plugin, hoping that this would 'Activate' the plugin but unfortunately not.It seems that certain parts of a HISE compiled plugin lay dormant in a session until LPX passes audio through it.
-
@Christoph-Hart has fixed the LPX server issue.
Has anyone tried yet?
https://github.com/christophhart/HISE/commit/f816c4ba15d830f3b52e6432f1ab671ef42b92df
-
@orange Yeah I've seen that but haven't tried yet...
-
@orange Thanks for the heads up!
I’ll try when I’m back at my machine and will report back -
I've tried today with master branch. The LPX playhead fix for Server API, now works perfectly in LPX.
Thank you so much @Christoph-Hart