This video shows Spotify driving a music visualizer on a 65” Sony 4K TV. It’s great for entertaining, listening to music, or just sitting back and enjoying the show. If you’re interested in setting up something similar for yourself that will work with Spotify, iTunes, or streaming web services like Pandora or Soundcloud, read on! (Mac only, sorry.) Demonstration music credit Tom Petty “Runaway.”
Like many people, I find myself using Spotify more and more. I love the exploration, I like the daily mixes. But, ever since the days of Winamp, I’ve liked running a music visualizer for some eye candy while I’m working. A visualizer provides animated visual effects based on the music being played. iTunes itself provides some built-in ones that have gotten better and better over time.
I recently upgraded the TV attached to my home audio system to a brilliant Sony 4K 65” unit. The display is amazing and since I use a Mac Mini as a music server in my setup, anything I can show on the Mac I can show on the TV. The thought of running some cool visual effects on this TV was motivating, so I went to the trouble of figuring out some solid solutions, and I’m sharing it with the community so others can have the same fun I’ve had. These directions would also work for any Mac laptop hooked up to a flatscreen.
Since I was particularly interested in Spotify, I Googled around to see if I could find a good visualizer and I was truly surprised that I turned up almost nothing. I scoured the web, I looked at the App Store, and I looked in Spotify’s user forums. Zip. A few years ago Spotify had its own visualizer built in as a hidden Easter Egg, but that no longer exists.
Way back I had occasionally used a terrific visualizer plug-in for iTunes called G-Force. I knew that it had a standalone component, but I’d never really paid that much attention to it. To my surprise, it looked like one of the better solutions. If I could get a visualizer that could work with any sound source, I’d have what I wanted. When I looked up G-Force on the web, I found it was being actively updated to new versions of the Mac OS and that development and fixes were still underway. That was promising. I also uncovered another standalone visualizer called Discobrick. I found a few other programs that were geared more to smart home bulbs that might be able to be repurposed, but it was a surprisingly shallow result to my efforts.
I downloaded the latest G-Force (Platinum) version and it was as good as I remembered, with very beautiful mathematical types of visualizations and a lot of ability to customize. The software is not inexpensive at $30, but you can use that version as long as you want until you need an OS upgrade.The only problem was getting it to work with Spotify. It seems like this should be a simple problem to solve — to have the visualizer tap into the sound going to your headphone jack — but it’s not the case. Essentially, you have to create a way to route the sound source to both the visualizer and your speakers simultaneously.
Soundflower is a Mac OSX system extension that’s been used in the community for a long time to solve exactly this problem — it’s designed to create a virtual audio output device that can also act as an input. While this sounds a bit esoteric, it’s actually pretty straightforward. I installed a fresh copy downloaded from Matt Ingalls (the original author) and set it up in system Sound Preferences using Soundflower as the output and setting the input of the visualizer also as Soundflower. You could tell that the visualizer was immediately responding to the music so the experiment was a success. The problem is you can’t hear it because Soundflower is feeding the visualizer only.
So, the trick is to use Soundflower in such a way that you get multiple outputs that can go both to your visualizer and also to your speakers. It turns out Apple has provided a straightforward way to do this through the hidden power of the Audio MIDI Setup. Here is a terrific article from Macworld that explains the basics. With the Audio MIDI Setup, you create a multi-output device which combines Soundflower with your headphone output and you’re done. Once this is set up, you use the combined devices as output in your system Sound preferences and Soundflower as the input to the visualizer. Here is how it looks on my system, which has a USB connection to a Digital Audio Controller (DAC) combined with Soundflower.
With my Mac configured in this way, I immediately had clear, undistorted music playing from my speakers and a beautiful visualization from G-Force. Mission accomplished! As you can see from the video at the top of this post the setup creates a kick-ass visual experience and works flawlessly. In practical use, I tend to get Spotify playing and G-Force running on my Mac, then switch G-Force to full-screen and control Spotify from the Spotify app on my phone or tablet (while Spotify is running on the Mac connected to the TV). I was done. But, there are a couple of other tips to ease the user experience I uncovered in my work that I thought I should also share.
One minor issue is that the display can go to sleep on you and blank out your visualizer. There are at least a couple of solutions for this. My favorite is a sleek (and free) utility app named Amphetamine which is very handy when you don’t want your system to fall asleep — while playing a movie on Netflix for example. It’s also a perfect solution to prevent your screen falling asleep when you’re running a music visualization. Other solutions are to set a ‘disable screen saver’ hot corner on your Mac so that the monitor never sleeps, or change your power settings.
I found another truly remarkable sound utility when I was exploring how to solve the visualization problem. It’s called Loopback and the simplest description of it is Soundflower with superpowers. Loopback works like a big, digital mixing board — you can create any number of virtual audio devices to take the sound from applications and audio input devices, then send it to audio processing applications. If visualization were its only use, you might as well stay with Soundflower. However, if you have need of any of the other interesting uses it has, you should consider spending the $99 (ouch). Check the website for all the possibilities it has.
I didn’t need Loopback to create the setup on my home audio system with the big TV. However, I wanted to run a similar setup off of my laptop at my office, and Loopback did help there. One minor drawback of using the combined device from Audio MIDI Setup is that it produces a fixed sound output. In other words, you can’t control the system sound level, you have to control it with the specific app that’s producing sound, e.g. Spotify. Sometimes this is fine, but at work I want to be able to use the keyboard volume controls to quickly mute everything if I need to, and also have easy access for volume changes. Among its many other features, Loopback will let you do this. On my laptop, I have Loopback running a virtual device directly to the visualizer, while the system Sound Preferences setup is normal — output set to headphones for my speakers. It works like a charm. Other sound utilities from the makers of Loopback are worth checking out as well.
I keep talking about G-Force as my visualizer, but I don’t want to make this post a commercial for it. DiscoBrick is another standalone visualizer I found in researching the App Store. The visualizations have a different aesthetic than G-Force and some are quite good. The app has uneven reviews in the App Store, but part of it is just the difficulty in getting it to work with a music source, as described above. If you have Soundflower or Loopback working smoothly in your system you can easily set that as a sound source in DiscoBrick and then you have a very satisfactory music visualizer.
I hit several roadblocks along the way getting these visualizers set up but I feel the effort was well worth it. The screen dazzles visitors who are blown away by the quality of the graphics on a 4K TV. I’ve tried to lay out a roadmap for you so you can get the same results faster. Once you’re up and running you can tinker with the settings of the individual visualizers to get the effects to match your music. Enjoy.
This post originally appeared on Medium 12/02/2017