FIXED: Engine COMP crashing when switching between .TOX files

Hey guys,

Running into an issue when switching between many different .TOX files where TouchEngine stops being able to load .TOX files until deleted and recreated. This happens seemingly randomly, often after switching between 10+ files. However, when switching quickly, I can get it to appear quickly.

For those trying to build modular live performance setups using .TOX libraries, the Engine COMP allows us to not have anything cooking in the project which helps with managing VRAM after extended periods of time. However, the lack of consistency in performance with the Engine COMP prevents it from being viable in live environments.

Anybody run into something similar?

Hi @Ordinaire.X,

could you specify the build number you are using and any instructions that might help to replicate? Is there anything significant to know about the toxs being loaded and what does “quickly” mean in this context - do you wait for a tox to be fully loaded before switching or load the next one before?
Do you unload the previous one or just change the path? Any other non-default settings on the Engine COMP?

cheers
Markus

I’m using build 2023.11340

I’ll post an example of the setup but essentially I’m using Resolume to control TouchDesigner over OSC. By naming the .tox files numbers 1-40, I can switch files in each Engine COMP with the script below:

filepath/{0}.tox’.format(int(op(‘FXSelect1AB’)[0]))

This takes the .tox number selected in Resolume and sends the data to a null CHOP. Clip #1 in Resolume loads .tox #1, clip #2 loads .tox #2, etc.

For smooth transitions, two Engine COMPs are used in an A/B deck to blend between effects and disguise the cooking of new .tox files as they’re loaded.

When switching between the .tox files after a while, one or both of the Engine COMPs crash randomly during performance. Sometimes it happens early into a set, sometimes it happens late. This is only remedied after copying, deleting, and pasting the Engine COMPs back into their place. The initialize, start, unload/reload parameters don’t help at all.

By switching quickly, I mean switching within a few seconds which may cause it to crash for a different reason than when it crashes in a more steady live performance. My example is lightweight and it might be harder to replicate the issue compared to a large variety of .tox files loading, but perhaps you can spot a problem with how I am using Engine COMP.

Hope that makes sense, just wanted to be thorough. In the example, reroute the filename address to where the .zip file is extracted for each Engine COMP deck. Adding reference files below:
engineCompissue.zip (70.1 KB)

Hi @Chemtrails,

thank you , this is really helpful. I’ll be running this overnight to see if I can get something crashing - switching the toxs every few seconds.

cheers
Markus

Hi @Chemtrails - we’re taking a look at this. In the meantime, the newly posted 2023.11600 has a fix for a GPU resource leak which affected TouchEngine on Windows and which could have caused this - or certainly aggravated it. It might be worth trying in that build.

Hey thanks for looking into this. I’ve updated to 2023.11600 and haven’t had this issue show up yet so it very well might have been the GPU resource leak causing this to happen. Thanks for looking into this anyway.

Now only if Engine COMPs could load Custom Parameter references to operators within the same project file, it would be the perfect solution for my needs.

Cheers!

Thanks for the update - hopefully that’s the issue then, but let us know if you see it pops up with 2023.11600.

Custom parameter references to OPs in TouchEngine are not a priority due to the complexity of sharing the whole operator, rather than just a texture, table or CHOP values. I’m afraid you will have to design around this limitation.