Matt & Jim -
I started with Matt's request. I changed the audio quality from 128kbps that was set to 320kbps in Gizmo to see what would happen. On my home wifi, time between when a song is called up and when it starts dropped to around 1 second. Switching my phone off wifi, it takes about 3 seconds for a song to come up. WAY better than the :30-2:30 it was taking.
The odd part is, watching my server before I made the change, it's not like the conversion was taking that long. When I started a song, there was an increase in my CPU usage to about 60-70% for about 5 seconds or so, then a couple blips on my network (around 2.5% on a 1gbps graph) then you could sit there and watch Gizmo say it was preparing. Not sure what it was doing during that time because my server was pretty much idling at that point.
As a test, I switched it down to 64kbps and it takes a lot longer to start playing than 320kbps. So the conversion is a factor in the slowdown, but all the time isn't being taken by that (looking at processor usage). The thing that is interesting is that at 64kbps, the time it takes to start playing is actually shorter than 128kbps. Random sampling, 64kbps takes about 10x longer to start playing than 320kbps. 128kbps takes about 15-20 times longer to start playing than 320kbps.
If it's that the processor is struggling to convert, you'd think it would max out my CPU instead of just going to 60-70% for a bit.