A little experiment with Unity components and random triggers. With every run it gives the same bus slightly changed effect. The random are camera movement and it’s initial placement, boxes colours. Boxes appearrance is triggered by audio.GetSpectrumData which brings within even more uncertainty. The rest is Unity physics.
It needs UnityWebPlayer Plugin for your browser. Beware that boxes are not destroyed so after a while it becomes CPU heavy. Reload or close it then. In fullscreen mode it also behaves slightly different 🙂
If you don’t want to install UnityWebPlayer, there is “dead” version of what’s happen above: