For Lofi to show currently playing tracks, Spotify needs to be actually running! Start playing something in Spotify (you can minimize the app afterwards) and Lofi should work as expected.
❗ Visualization is currently disabled for Mac, cf. #123❗
The process is a bit involved and uses a an external tool and some sound configuration. First, we need to download and install the (free) "iShowU Audio Capture Device" by clicking here.
Next, open up the Audio MIDI Setup control panel in Applications > Utilities. We’re going to create a multi-output MIDI device, so we can hear the desktop audio while also streaming it to the iShowU Capture Device.
Click the + in the bottom left, and choose "Create Multi-Output Device". Then, in the right-hand pane for this new device, make sure you tick "Built-in Output" and "iShow Audio Capture". Leave drift correction set to Built-in Output.
Close that, and head back over to System Preferences > Sound. You’ll now have an output option for your new Multi-Output Device. Before you choose it, make sure you set your volume level how you want it: you can’t adjust the volume of a multi-output device!
Lofi will automatically detect the "iShowU Capture Device" and visualizations should be working as intended.
Note: You'll need to create separate Multi-Ouput Devices for every output device you might use (e.g. a separate one for speakers and headphones). This is, unfortunately, a limitation of macOS.
Lofi is bound by Spotify's API contract. Much like in the real app, if you're using Lofi with a free Spotify account, track skipping or ad skipping won't work.
When Spotify plays either music videos or ads, the API doesn't provide track information (artist, cover art, etc.). For now, this is simply limitation of the Spotify API.