Major MIDI automation bug

  • This may be an OS specific issue but if one of you could confirm it on another system that would be helpful.

    I have a project which uses the standard preset browser. Each preset has some MIDI Automation CCs assigned to various knobs. If I open the compiled VSTi in a host and send it some CC data to one of the mapped CC numbers the DAW and plugin will freeze and I have to use task manager to close them. If I open the project in HISE and move one of my controllers that is mapped then HISE will instantly close.

  • @Christoph-Hart Here's a minimal example that demonstrates the problem. It seems to only happen when the control is inside a panel (but there could be other scenarios too that I haven't found yet).

    HiseSnippet 829.3ocsUsjSaCDFdbHCkDJsEod.xht.jnUIo.sRUU3lWUQ7Jplh5t1A6IwivdFqwiABH10CRuGkE8HzqP6Ifa.cFO1wNzPDYAYU9eM+e+e+ObONyFGFx3.iRGLL.CLdLzZHU31zEQnfts.FyCE3PAnwv.TXH1AXXL2GU1LJUDD+65sZf7PTablJ.3PFwFuCwmHxz1ybahmWGjC9.heNuW2rqMi1j4whj3XNXUP.x9Xz.7dHkaEfRPz1gHXbKARBFfQwFLmgVtrSoZ+OjDRNxCqDpArjOjVcGlmiBwJsfltDOmdo0aHP9J8xp94zU+yg6RbHizmwBOK1PkrHxyGFElF7pkGdUu+vyHG7Jpg2xPKaNIPjYQgsEgcoBLuOR1BxCKsu.ieBaxjNPEuxGcLtCWJLJfU1rZ00prQ0pq9t9QTaAgQqvn6wD38oqrZ4KJWp7kkusk98mjIUR3LOOLeRVUsb9TBaEZj+QX9ZUNA4EgS8SV4iSsv6lZy24s0EbNGYztThX+.L8tHbPBKon9DPIcUDS7OIg3s7HNXNfH42GA2lxNpFHFuICy+H38+cKvm61BIPoOi7EkYI.yEDUAXzBehb0P2OKAagCOVvBjS4MY9ALpJ+FyqS5RocaDE6EmyEfw+uF3rrsmWXNL+pzoDGg6HEUbMcwjAtYag+5alJbc6bMkBLWtZjOWMMCE3.Kx4oUu4eN+6aEf3x2MWBFgYPNkKJRV2zYsiGCIHzAGPjsRUteJLupwvv54w.1Lgh07odKcGLhS0j1QCROqTZ9zSSDA1OSa850uYbs0Upu5pqhUG2Ik2.uXoxWBFmau9rays+laB9+kVInXNQdHw32STGQSLHWDFawUscRCIhg4Ox9fbj49B2kg8HBa2Ii2BS.uxo+GZ7lbxdIX698w1hLvVD14KO72mAehEoFP2EI3D47IbuHeK43iMVhDpb3ScsxnfZQQKWUIqXFKL0IV3F4uDi0TxFIFqkZD3ir4ruZquFo9nvBwZjXhF+swRvcUxUFcFRgae4NvWssUDwKkHexQTeli30ybDqOyQrwLGwlybDuYli3sSIB0AmODIX950Bohds0GMLZSQxop3IPv+.Y09cGC

    Steps to reproduce:

    • Import the snippet
    • Open the interface preview
    • Right click the knob, select MIDI learn
    • Move a controller
    • Save the preset
    • Close HISE
    • Open HISE
    • Load the preset
    • Notice that the MIDI learn panel doesn't show the knob but it does show the CC number
    • Move the controller again, HISE will crash.

    Here's a video of the problem

  • @d-healey this might only be of very minimum help but i have a compiled plug that uses CC data from a controller, that the user can assign. It works fine here. BUT: I'm not doing any midi learn stuff on it. I'm letting the user select from a combo of options to set the CC# to use.

  • @Lindon Yes that approach works fine, I was using it before too. This problem is with the MIDI learn feature, it seems that when the preset is restored the automation data is not loaded properly.

  • @d-healey yep cant say I've tried that --- over to Christoph.....

  • @d-healey I tested your project and did as you instructed. It is not crashing. I tested it both in HISE plugin and a standalone version, the latest master branch built. I am on Windows 10.

    I hope this helps a little bit.

  • @gorangrooves Interesting, maybe it's OS dependant. I'm on a build from 23rd of March so I'll try the latest master branch (although I don't see any related commits) and see if that helps.

  • @gorangrooves I just tested with the latest build and I get the same issue.

    When you tested did you see this when you reloaded the preset after saving it


    Or did you see this


  • @d-healey I did not see any values under the CC, Parameter etc. either prior to saving or after. It would just save the status of the nob to wherever I would put it.

  • @gorangrooves But did it says Knob1 in the parameter column?

  • No. It doesn't have the second column. Only the first one with CC#, Parameter, Inverted...

  • @d-healey I tested it and have the same result you have:

    • nothing in the parameter column
    • HISE crashes as soon as you move the knob...

  • @d-healey
    Well, it seems your preset/archive (still don't know how to call it 😇 ) is corrupted for some reasons...
    I just made a snippet of my own and it works (HISE dev branch 4 April)

    HiseSnippet 857.3ocsV0sSaCCE1FpYqcv1PhGfdIHwlZY.aRSZTnzhp3upEFZ2gbSbasvwtJwAnCgzlzdd1Kvtg62Kw1avdCXGmj1XfBidA4ty+e93y4yoYfxkEFpBP37GzuGCgml3zWp6VsKkKQM1DgmknYg5hzHsxmp4JIZi98nggLODFO4VF2v4ygh+96ZaPEToKKSEBcnh6x1g6y0YZaVYatPTm5wNf6a48xUZ3pjUUBUD.oIIkP8ntGS6v1iZbaBBBOUMOtVE3no.tP3ban756zUcpLw+C4g7VBlQnLxARTh55JgmAwFsnpc4BulCN5gHHKMyZDSlzHlirK2iOTeVC4kwFJlEgc+.Ow8Aux1vqzCGdXK3kKAdyRbbC38zYVLX6YjFRMKnMEtBrgUhuH7OIUUfCR8q8oGypG.BCCX9UKUZwhqTpzBuucjz0bUWTI2SoY6KmegBmWHegKJbSKsaOJSlhDnDBVvnrZtxCtmvlWF42hErXwSnhH1.+fS90asj6t0Zey6lbfsbTIaH4586wj2UCGk1kLs9TPAtpia7OOsw6H3dr.DG5uOgrsT0pLJFuYCy+dMzmZrIUSGjFHiPU5wBzbyA.uI6DX0H49LOYSV3wZUOXJupxumRZpON2+snmMrfWRqzenvWqWAYkmo0oC0I4otPA6xxNGvgFlIaufXqxNqnOXkUnDoGjDTmrKrCiFHaRkLApUmAKu4mZ.A.Wy7yz9qKu5pqqcIa0Z1YZ6TjnMtKhmhb9LEt.cJ2S2cHjJ9sJcY7NcyXWtTTAc6EF.pJuHAUe8cYCAVpgaxsY1LjgbceaBtGkE7GJbmkzjqc6NZ7NwHvKL48Xi2T5xYH0Z2l4py.aNR8O+3yMh9nJxL1tKUGvgoVxdQ9NvziKCPhDFIMLE3IL6zIxkLxlNiCS5EKbE7kZrrQFmZr7.iHepaf5H2Dl.Cg7Si0.XRF+tTdxtF4hCo.L31G1LNx00zHdEf7QGwRicDuYriX4wNhUF6HVcri3sicDu6dhvPCsd1unjwaCuAAOKZKPvEt9Dr8ilwUpgzic1fKeXZMPauQUS5YSHTORHtkOFk2vOmiYmZKGWS3.Yzc9b+Xq+7kuu15ZXHtUjlkQu2PdB7dQxBDZ2l0RXBw0jTXUIQ6+..DWZB

    I noticed your knob step size was weird, but even when changing it didn't do the trick...

  • Ok, here's what I found
    Your snippet works as well when you remove the knob from the panel.
    As soon as you're placing it inside a panel, learnCC, save, reopen, move the knob, HISE crashes...

  • @ustk yeah I already said that 😉 but thank you for testing and confirming the issue

  • @d-healey said in Major MIDI automation bug:

    @ustk yeah I already said that 😉 but thank you for testing and confirming the issue

    oh yes... you did... Had nothing much to do this morning anyway 🙃

  • @Christoph-Hart Bump bump

    The only work around I've found so far is to move all of the controls out the panel. But I really don't want to do this as I'm using the panel's enabled property to control the enabled state of a lot of controls. If I get rid of the panel them I'm going to have to set the state of each control individually.