Managed to get audio input running on my 64 x 64 matrix.
A 2nd Teensy coupled to the teensy audio board is used to process the audio. A stereo line-in (from an alexa dot) is blended into mono and then processed as via a 1024 element fft. The results are then squeezed down into an array of 17 bytes ( each array element representing an “octave” of audio) along with 2 floats representing the peak of each channel (left and right). The handy rotary knob on the teensy audio board is used to provide a scale for sizing the resulting output into the desired range (0-64).
When the display board wants new data it sets a pin high. The audio board processes all the time but only transmits data when it sees a request. I am passing the data between the 2 teensies via easy transfer using serial 1. The display board does a bit of math to up-convert the 17 elements in to 64 elements. In doing so, it also applies a simple weighting to try to even out the frequency response of the system. This was determined via a pink noise generator which a only trust a little bit . These 64 elements are then used to drive the patterns.