I only examined the FCP portion of your spindumps. Upon closer study, a separate process AUHostingServiceXPC_arrow runs your plugins, which in turn communicates via XPC to a VST "wrapper" plugin within the FCP address space, which presents the appearance of AUs to FCP. Actual AUs can run within FCP's address space, which is a different scheme than video plugins which FXPlug4 mandates must be out-of-process. However your spindumps did not show in-process AU plugins.
However -- at the time of the spindump when FCP was hung, the separate process AUHostingServiceXPC_arrow was deranged, and was running 269 threads related to audio plugins.
Even though the separate process attempts to isolate FCP from a buggy plugin, if the AU host process goes completely crazy, that can crash FCP.
FCP still needs to maintain tight synchronization with that AU host process for real-time audio processing.
This communication happens through XPC messages that must be handled on both sides. If something disrupts this careful dance, problems cascade quickly. The presence of 269 threads suggests each plugin instance might have created multiple threads for processing. While these threads run in the separate hosting process, FCP still needs to:
- Maintain XPC connections to each plugin instance
- Manage shared memory regions for audio data transfer
- Handle synchronization messages and callbacks
- Coordinate timing and buffer management
- Process UI updates based on plugin parameter changes
If the hosting service becomes overwhelmed (perhaps due to those 269 threads competing for resources), it might stop responding to FCP's messages promptly. FCP, waiting for these responses, could:
- Block its audio processing thread while waiting for data
- Deadlock while trying to synchronize multiple plugin responses
- Run out of buffer space while waiting for processed audio
- Become unresponsive while trying to maintain XPC connections
A suite of plugins can work more-or-less OK on a given version of MacOS and FCP, then the updated OS or FCP may expose existing problems or compatibility issues with the plugins, which just never manifested. In general the OS or app (FCP) cannot be updated to fix a plugin problem, rather the plugin must be fixed whenever cases like this are encountered.
What is the history of this problem? Did it start upon upgrading a MacOS or FCP version?
It would be a good idea to update all audio plugins to the latest versions. That is a typical procedure when a plugin incompatibility is encountered.