The Sonos media controller app on Windows is almost perfect, but it does have limitations. For example, it has a pesky 65,000-song limit, and despite an abundance of streaming services, you can’t stream things like YouTube and sporting events.

Fortunately, there is a pretty handy app that lets you work around the Sonos controller’s few limitations. Stream What You Hear (SWYH) is a simple open source application that runs in your Windows taskbar, allowing you to hear anything playing through your desktop PC on your Sonos device.

This means if you use another music application to handle a massive library of MP3s, or have a lot of YouTube playlists, or you just want to listen to the ball game around the house, you can with Sonos and Stream What You Hear.

Step One: Set up Stream What You Hear

Before we dive in, we should point out that there is one notable drawback to Stream What You Hear: lag. No matter what you play, there will be about a two-second delay.

This means that videos won’t sync with audio, and media controls won’t respond instantly. It’s not a huge deal, but it might take a little getting used to (and it means you can’t watch YouTube videos, only listen to the audio from them).

To set everything up, make sure you’re running the Sonos media controller software for Windows. You also need to download, install, and run the SWYH app. Additionally, if you don’t have it already, you will need the .NET Framework 4.0.

Once SWYH is installed and running, right-click on its taskbar icon and click “Settings”.

Whenever you start or restart SWYH, it will use a different port for HTTP live streaming. To work around this, you can force it to use a specific port.

Check the box next to “Use specific HTTP port”. The default port is 5901, so you can leave it like that, provided you haven’t configured another program to use that port already. Click “OK” when you’re done.

Click “Yes” to restart SWYH and save the new settings.

Once restarted, again right-click on the taskbar icon and then Tools > HTTP Live Streaming.

Note, the HTTP live streaming URI (or URL) and click “Copy”, then close the URI box.

Finally, right-click the taskbar icon once more and then “Stream to” and select your Sonos player.

As long as your Sonos device or devices are powered on and set up, you should see them in the Stream to menu.

Step Two: Set up the Sonos Media Controller

You’re only halfway finished. In order to stream what you hear, you need to add an HTTP streaming station to your Sonos media controller.

In the Sonos media controller, click Manage > Add Radio Station.

In the Add a Radio Station dialog, paste the URL you copied from SWYH a few steps ago into the Streaming URL box, give your station a name, and click “OK” when you’re finished.

Next, click “Radio by TuneIn” in the Sonos application under Select a Music Source.

Next, click “My Radio Stations”.

In the My Radio Stations menu, you can either double-click on your new station, or right-click and click “Play Now”.

From that same context menu, you can add your new station to Sonos Favorites for quick and easy access.

Your new station will show as Now Playing.

At this point, you can play anything on your Windows desktop using your favorite media player or website. As long as you have the SWYH app running and Sonos media controller tuned to your SWYH station, everything will play through your Sonos devices.

Obviously, this isn’t ideal for movies due to the lag, but it otherwise works great for listening to music that won’t play using the Sonos application.