[spectrum] cosmetic: Use static where appropriate
[spectrum] Draw spectrum as a single object

glDrawElements is called 256 times per frame, once for each bar. It is more efficient to batch up larger blocks.
This change draws the specrum with a single glDrawElements call.

Looking at visualisation in full screen mode, it used to top out at 75 fps. With this PR it can hit 125 fps.
Merge pull request #3924 from popcornmix/single_spectrum

[spectrum] Draw spectrum as a single object