I ran a debugger through my plugin in a DAW called Renoise. It appears that when I launch an offline rendering, the DAW is first calling
releaseResources in my plugin, and straight after it calls
processBlock without going through
prepareToPlay. Since I included memory management in
releaseResources, my plugin crashes. In the same way, I noticed that this DAW was calling around 10 times
prepareToPlay when a track was first loaded.
Is this kind of behavior common around other DAWs? Should I expect them to fail to comply with the prepareToPlay/releaseResources workflow and hence to move memory alloc/dealloc away from those methods?