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, run the installer as Administrator, then reboot. 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: 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)".

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

Browsers hide device labels until you grant one-time audio permission.

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 "Speakers (VB-Audio Virtual Cable)", not your headphones/speakers.
  • Confirm VB-Audio Virtual Cable is actually installed and you rebooted afterward (step 1).
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.