Sound to Chat

The Free Virtual Soundboard Routing Tool

Pipe audio files directly into Discord, Zoom, and voice chat apps using a virtual cable.

PTT Script: connecting…
PTT idle
⬇ Download Push-to-Talk Script
If you have Push-to-Talk enabled in Discord, this script is required if you want this page to automatically trigger your Push-to-Talk key. Browser security features do not allow a webpage to directly send a key press to other apps such as Discord. Running this script lets it listen for a signal from this page, and it activates your Push-to-Talk key for you whenever a sound plays. If you'd rather not run it, you can still manually hold your Push-to-Talk key yourself while a sound plays.

Play sound effects, memes, clips, and music straight into your voice chat, free and entirely in your browser. Load a folder of MP3, WAV, OGG, M4A, AAC, or FLAC files, route them through VB-Audio Virtual Cable, organize your favorites into one-click Quickplay buttons and categories, and set independent volume levels for what your call hears versus what you hear locally. Works with Discord and Zoom, the two most common use cases, and just as well with TeamSpeak, Mumble, or any other app that lets you pick a virtual audio device as its microphone. Push-to-Talk helper script install is optional if you want the soundboard to press your PTT key for you.

This page does not host sound files. It simply lets you load sounds already on your computer. Looking for clips to add to your library? Sites like Myinstants, Freesound, and Zapsplat offer sound effects and clips you can download, though it's on you to check each site's license terms before using a clip.

↑ Click here to minimize this section once setup is complete

1. Install VB-Audio Virtual Cable

A free virtual audio device that lets this page send sound into Discord as if it were a microphone. Download from vb-audio.com/Cable (Windows and Mac both supported). On Windows: run the installer as Administrator, then reboot. On Mac: run the installer normally, then in System Settings → Privacy & Security you'll likely need to allow the new audio driver before it's active, some versions of macOS also ask for a restart afterward. Either way, you'll then have two new devices system-wide: CABLE Input (playback) and CABLE Output (recording).

2. Point your voice chat app at the virtual cable

In Discord: click the Settings cogwheel → Voice & VideoMicrophone dropdown → select "Cable Output (VB-Audio Virtual Cable)".

In Zoom: click your profile picture → SettingsAudio tab → Microphone dropdown → select "Cable Output (VB-Audio Virtual Cable)". (From inside an active meeting, you can also get there via the small arrow next to the mic icon → Select a Microphone.)

Using TeamSpeak, Mumble, or something else instead? Same idea: find that app's microphone/input device setting and point it at "Cable Output (VB-Audio Virtual Cable)" too.

3. Mix in your real microphone too

This lets you talk normally and play sounds through the same "microphone," instead of choosing one or the other.

On Windows: Windows key + R → type mmsys.cpl → Enter → Recording tab → right-click your real microphone → PropertiesListen tab → check "Listen to this device" → set "Playback through this device" to "Speakers (VB-Audio Virtual Cable)".

On Mac: macOS doesn't have a built-in "Playback through this device" setting like Windows, but the free LadioCast (Mac App Store) does the same job.

  1. Install LadioCast from the Mac App Store (free), then open it.
  2. On the left side (Inputs), set Input 1's dropdown to your real microphone. The first time you do this, macOS will ask for microphone permission, allow it.
  3. On the right side (Outputs), set Main Output's dropdown to CABLE Input (VB-Audio Virtual Cable).
  4. Make sure Input 1's routing button for Main is switched on, so your mic actually feeds into that output bus.
  5. Leave LadioCast running in the background while you use Discord and this page.

You'll still pick CABLE Output (VB-Audio Virtual Cable) as your microphone in Discord/Zoom (step 2 above), same as on Windows, LadioCast just adds your live voice into the same cable this page is already sending sounds through.

Required if you want to still talk in your mic and have people hear you in Discord.

4. Choose your sound folder(s)

Subfolders are scanned automatically. You can add more than one folder.

5. Audio output devices

Click this first. Browsers hide real device names until you grant one-time audio permission, so the two dropdowns below will just show generic placeholders until you do.

Pick whichever device has "VB-Audio Virtual Cable" in its name, it may show as "CABLE Input", "Speakers", or something else depending on your system. This is the opposite end of the cable from what you picked in Discord's mic settings in step 2, so don't expect the exact same name, see the FAQ below if you're not sure which one to pick.

6. Push-to-Talk key

Will only be auto-pressed for you if you download and run the Push-to-Talk script (top right).

7. (Optional) Discord Noise Suppression and Gain Boost settings

Noise Suppression and Gain Boost settings in Discord will auto-adjust the volume of the sounds that get sent through. This can happen on both sides: when you send and when the other person receives the sound. Adjusting the Master Cable Volume will adjust the volume of all sounds being sent, and you can also adjust individual sounds with their own Cable volume slider. But if Suppression and/or Gain settings are enabled, Discord may soften or louden the sounds automatically toward a neutral volume.

Mixer

Quickplay categories

↑ Click here to minimize once your categories and colors are set up

Use categories to group your Quickplay sound buttons for similar sounds, so you can quickly find just the right sound at the right moment. Then use the dropdown next to a sound in the library below to assign it to a category. Drag a category chip to reorder its Quickplay section on the page.

No categories yet. Add one above, then assign sounds to it from the list below.

Colors let you flag Quickplay buttons at a glance without changing their layout. Click the swatch to change a color anytime. Assign a color to a sound from the dropdown next to it in the library below.

No colors yet. Add one above, then assign it to a sound from the list below.

Sound library

Sound names can be edited (this will not affect the file name). Changing the name of a sound will also change the name shown on its Quickplay button above.

Add a folder above to load your sound files.

Troubleshooting & FAQ

Why can't people hear my sounds, even though I pressed my PTT key?

Almost always a device-selection mismatch. Check both sides:

  • In Discord: Settings → Voice & Video → Microphone must be set to "Cable Output (VB-Audio Virtual Cable)", not your real microphone.
  • On this page: Setup → step 5 → "Send audio to" must be set to whichever device has "VB-Audio Virtual Cable" in its name, not your headphones/speakers.
  • Confirm VB-Audio Virtual Cable is actually installed and you rebooted afterward (step 1).
What if my VB-Audio Virtual Cable device isn't labeled "Cable Output" or "Speakers"?

The exact label can vary by system and driver version, it's not always the same across every computer. In Setup → step 5, look for whichever playback device includes "VB-Audio Virtual Cable" in its name, it might show as "CABLE Input", "Speakers", or something else. Use your judgement: as long as "VB-Audio Virtual Cable" appears somewhere in the name, that's the right one to pick. It also won't match the name you selected in Discord's microphone settings back in step 2, since that's the opposite end of the same cable (Discord listens to the cable's "Output" side as its mic, this page sends audio to the cable's "Input" side), so seeing two different names there is expected, not a sign something's wrong.

People can hear my sounds, but they can't hear me talking anymore.

This happens once Discord's microphone is switched to "Cable Output." Discord now only hears whatever comes out of the virtual cable, and your real mic isn't part of that unless you route it there yourself. Follow Setup → step 3, "Mix in your real microphone too": Sound Control Panel → Recording tab → right-click your real mic → Properties → Listen tab → check "Listen to this device" → set "Playback through this device" to "Speakers (VB-Audio Virtual Cable)." This mixes your real voice into the same cable the soundboard uses, so Discord hears both.

My Push-to-Talk key doesn't press automatically when I play a sound.

This requires the separate Push-to-Talk script (top right "⬇ Download Push-to-Talk Script"), since browsers aren't allowed to send key presses to other apps like Discord. Check:

  • The script (python companion.py) is actually running. Its terminal window should say "listening on ws://127.0.0.1:8765" and stay open.
  • The "PTT Script" status pill at the top of the page shows "connected," not "not running."
  • The PTT key field (Setup → step 6) exactly matches Discord's own Push to Talk keybind, and uses the underscore format (e.g. ctrl_r), not ctrl+r.

Without the script running, sounds still play and route correctly. You'll just need to hold your PTT key yourself while a sound plays.

My sounds come through distorted, or the volume sliders don't seem to do anything.

This is almost always Discord's own Automatic Gain Control and/or Noise Suppression fighting the volume you set. See Setup → step 7. Turn both off in Discord's Voice & Video settings, then re-test your Master Cable Volume and each sound's individual Cable % slider. Those settings actively normalize incoming audio back toward one loudness target, which can make a quieter source sound just as loud (or distorted) as a full-volume one.

The page says "Unsupported browser," but I'm using Chrome.

Do a hard refresh (Ctrl+Shift+R) to make sure you're not looking at a cached copy of the page, and make sure Chrome or Edge is reasonably up to date. This tool relies on APIs added in Chrome/Edge 110+.

The device dropdown says "No devices found."

Click "Reveal device names" (Setup → step 5) and allow the microphone permission prompt, since device names stay hidden from the page until you do. If it still shows nothing afterward, try a full page reload. If it's still empty, check that "CABLE Input" isn't disabled in Windows: Sound Control Panel → Playback tab → right-click in the empty space → "Show Disabled Devices."

I added a folder, but no sounds show up in the library.

Supported formats are MP3, WAV, OGG, M4A, AAC, and FLAC. Other formats (like WMA) won't be picked up. Also double-check the folder (or its subfolders) actually contains audio files and not just more empty folders.

I have to re-select my sound folder every time I come back to the page.

This is a browser security limitation, not a bug. Sites aren't allowed to silently keep permanent access to your filesystem. Your categories, sound names, and volume settings are all still remembered (they're stored separately in your browser's local storage); only the folder access itself needs re-confirming, and only occasionally, typically after closing the browser fully, switching profiles, or clearing site data.

Does this only work with Discord?

No. Discord is just the most common destination, so it's what the setup steps walk through. Anything that lets you choose a specific microphone/input device works the same way: Zoom, TeamSpeak, Mumble, Google Meet, Skype, and most other voice chat or calling apps will all pick up sound played through CABLE Output once you select it as their microphone, exactly like step 2 above.

Can I use this in a Zoom meeting?

Yes. Zoom lets you pick a specific microphone the same way Discord does, so the setup is nearly identical: install VB-Cable, then in Zoom go to Settings → Audio → Microphone and select "Cable Output (VB-Audio Virtual Cable)." Step 2 in Setup above walks through the exact menu path.

Can I use this without installing VB-Audio Virtual Cable at all?

Yes. Sounds will still play through your chosen local monitor device so you can hear them yourself. You just won't be able to send them into a Discord call, since that specifically requires a virtual audio device like VB-Cable to bridge browser audio into something Discord can pick up as a "microphone."

Ready.