Well, it looks like this happens because the Queue is created using the default start_method (fork on Linux) whereas torch.multiprocessing.spawn() uses the spawn internally (ignoring the default).
On a related note, librosa brings in a dependency that calls multiprocessing.set_start_method on import. Since that method can only be called once, you can’t actually set the default to ‘spawn’. Instead, you’ll have to create a multiprocessing context and use that every time you want to construct a Queue.
What a mess.