TTVC turns what you type into speech and sends it out through a virtual microphone, so Discord, Teams, or any other voice app hears it as though you were talking. It was built for a friend whose microphone broke, and who was stuck typing in a text channel while everyone else talked.
One installer. One restart. One setting to change in Discord.
- Download TTVC-Setup.exe from the latest release.
- Run it. Windows will ask for permission, because a virtual microphone needs a driver.
- Restart when it asks. This step matters — the virtual microphone does not appear in Windows until you restart, and skipping it is the most common reason setup seems not to have worked.
- Open TTVC. It will show you which device to select in your voice app.
You will see this the first few times you download it. TTVC is not signed with a code-signing certificate — those cost money every year, and this is a free project.
Click More info → Run anyway.
If you would rather verify the download yourself, every release includes a
.sha256 file. Compare it against:
Get-FileHash TTVC-Setup-2.0.1.exe -Algorithm SHA256Type in the box and press Enter. That is the whole thing.
| Enter | Speak the message |
| Shift + Enter | New line instead |
| Escape | Stop speaking |
| Ctrl + Shift + Space | Bring TTVC to the front from anywhere, including from inside a game |
In Discord: User Settings → Voice & Video → Input Device → CABLE Output.
No application can change that setting for you — not TTVC, not anything else. But you only have to do it once, because of the next part.
Turn on Settings → Your microphone → Pass my microphone through.
Your real microphone is then mixed into the same virtual cable as your typed
messages, so both reach Discord through one input. You set Discord to
CABLE Output once and never touch it again — talk normally, and type when you
want to type.
If your microphone is broken, leave this off. Everything else works the same.
Windows only allows a driver to create a microphone. There is no user-mode API that lets an ordinary program present itself as a recording device — which is why every tool that does this needs one, and why there is no way to avoid it.
TTVC does not make you go and find one. The installer includes VB-CABLE by VB-Audio Software and sets it up silently as part of installation.
VB-CABLE is donationware, bundled here with permission under VB-Audio's redistribution terms. It is free to use — but if TTVC is useful to you, the credit belongs at least as much to VB-Audio, so please consider donating to them. They wrote the part that makes any of this possible.
If you already have VB-CABLE, Virtual Audio Cable, or VoiceMeeter, TTVC will detect and use it, and the installer skips this step.
Speech is generated locally by Piper, a neural text-to-speech engine. Nothing is sent over the internet, there is no account, no API key, and no usage limit. It works with the network unplugged.
One voice (en_US-lessac-medium) ships inside the installer, so TTVC speaks the
moment it is installed. More voices, in many languages, can be downloaded from
Settings.
If the speech engine cannot start — an old CPU without AVX support, a missing Visual C++ runtime — TTVC falls back to the built-in Windows voice and tells you why, rather than going silent.
Requires Python 3.11+ on Windows.
git clone https://github.com/azyzex/TTVC.git
cd TTVC
python -m venv .venv
.\.venv\Scripts\pip install -r requirements.txt
python tools\fetch_voice.py # download the bundled voice (~63 MB)
python -m ttvc # run from sourceTo build the installer:
python tools\fetch_vendor.py # download VB-CABLE
python tools\get_innosetup.py # per-user, no admin needed
python build.py --installer # -> installer\Output\python -m unittest discover -s tests -t . # unit tests
python tools\selftest.py # synthesis, writes a wav
python tools\selftest.py --play # end-to-end through the cable
python tools\selftest.py --passthrough 20 # mic drift-control statistics
python tools\uitest.py # drives the real window and exitsDiscord cannot hear me. Check that Discord's input device is CABLE Output
(not CABLE Input — that is the other end). If CABLE Output is not listed,
restart your computer.
No virtual microphone was found. Restart your computer. If it still does not appear, install VB-CABLE directly from vb-cable.com and restart TTVC.
The shortcut does not work. Another program has claimed it. Pick a different one in Settings — TTVC will tell you when a combination is already taken.
I cannot hear my own messages. By design, they go to your voice app rather than your speakers. Turn on Settings → Hearing yourself to play them through your headphones as well.
My whole PC went silent after installing. Installing a virtual cable makes Windows adopt it as the default playback device, so every program plays into the cable instead of your speakers. TTVC detects this and offers a Fix this button in a bar at the top of the window. To do it by hand: right-click the speaker icon in the taskbar → Sound settings → choose your headphones or speakers under Output.
Something else. TTVC writes a log to %APPDATA%\TTVC\logs\ttvc.log
(Settings → Open log folder). Attach it to a
bug report.
TTVC is MIT licensed. It bundles and depends on third-party components under their own terms — VB-CABLE, Piper, espeak-ng, ONNX Runtime, PortAudio, libsoxr, NumPy, and CustomTkinter. See LICENSE for the full list.
