Back when I lived in the same city as the people I played D&D with, I liked playing music off my laptop to set the mood.

Since we switched to Skype for our games, that dimension has been lacking.

I've seen other DMs go to all sorts of lengths to get audio in their online games, including playing it really loud off of other computers so their mics pick it up. This is easier and you'll get better sound.

I fixed it, and now I'm gonna fix it for you. You're welcome.

This tutorial will allow you broadcast audio playing through your computer, such as from iTunes, a video, a game, or what have you, without your players' voices getting mixed in.

NOTE: This only works on Windows, and my instructions are for Windows 7. So Mac users, sorry. People using other versions of Windows might need to poke around to find the settings they're looking for. EDIT: Mac users see below for info.

Step 1. Get voicemeeter.
Voicemeeter is a free software/plugin that lets you mix and redirect audio. You can download it here. Install that shit.

Step 2. Download and install the Virtual Audio Cable.
It's from the same site. It helps feed things from one audio source to another. They make it sound like you need to make a donation to use it but it's actually free. Download it here.

Step 3. Restart your computer.

Step 4. Open voicemeeter.
Before we continue let's have a quick look at voicemeeter's interface.

You've got three inputs: Two Hardware and one Virtual. The Hardware inputs detect sounds from mics and such. The Virtual Input detects sounds from your computer. There's also the Hardware Output, which will show you both what your speakers are hearing and what you're broadcasting.

Each Input has two little round "A" and "B" buttons. The "A" stands for "audit", which means you'll be able to listen to that input. The "B" stands for "Broadcast," meaning your players will be able to hear it.

Step 5. Set up voicemeeter.
First get your mic set up. Click on the first Hardware input and select "MME: [whatever your mic is called]." Turn off the "A" for Hardware Input 1 (meaning only the "B" button should be green). This is so you don't have to listen to your own mic all the time.

Click on the second Hardware Input and select "MME: Hi-Fi Cable: VB-Audio etc." This is the channel you're going to use to listen to your game, so turn off the "B" so your players don't get an echo.

Click on Hardware Out and select your speakers or headset.

Step 6. Change your system audio settings
Right-click the little speaker icon at the bottom-right corner of the screen and select "Playback devices." Right-click "Voicemeeter Input" and select "Set as Default Device". Your sound will start feeding into voicemeeter's Virtual Input. If you have it configured correctly, you should still be able to hear your audio, and you should see activity on the Virtual Input monitor. Play some music or something to make sure that's happening.

Step 7. Configure Skype or Hangouts
This step is to prevent feeding your players' voices back to them. Open Skype or a Hangout.

In Skype:
Select Call ---> Audio Settings. Click on the drop-down menu for Microphone and select "VoiceMeeter Output." This means Skype will hear what VoiceMeeter is broadcasting. Go to the drop-down menu for Speakers and select "Hi-Fi Cable Input (VB-Audio etc.)." This means the audio from Skype will be processed through VoiceMeeter's Hardware Input 2, which if configured correctly will allow you to hear it but won't broadcast it back to the other players.

In Hangouts:
Start a new Video Hangout. Click on the gear symbol at the top of the screen to access your settings. Click on the microphone menu and select "VoiceMeeter Output." Click on the Speaker menu and select "Hi-Fi Cable Input.(VB-Audio etc.)" This means the audio from Hangouts will be processed through VoiceMeeter's Hardware Input 2, which if configured correctly will allow you to hear it but won't broadcast it back to the other players.

Done. Congratulations. Run your game, play your music, it should all work from here.

IMPORTANT NOTE: Nothing will work at all once you close voicemeeter - you won't be able to hear any sound and your friends won't be able to hear you. To remedy this, you can either a) keep voicemeeter open at all times or b) when you close voicemeeter, right-click the little speaker icon at the bottom-right corner of the screen and select "Playback devices." Right-click your usual speakers or headset and select "Set as Default Device". 

As an added bonus, here's a site I use to loop Youtube videos for their audio: infinitelooper.com

ADDENDUM:
Ben Harrison on G+ has this advice for mac users: "I used to do a lot of electronic music, and this reminded me of a utility I used to use on the Mac called Soundflower. I believe it is still out there and works, so for anyone attempting to do this on a Mac, consider that the tip of an iceberg to explore. You should be able to redirect the audio of any app to any other, etc.  :)"