Doppelvoice v0.3.0 — single .exe, GUI-only setup
Open-box experience overhaul. Single-file .exe, no manual file editing required, GUI handles everything.
Download
Doppelvoice-v0.3.0-win64.zip (60.5 MB)
SHA256: B17661B74C0E6513FDEE835A74641D3D17AD08835A28BA9DF4006144C0DB064E
5-step quick start
- Install VB-Audio Virtual Cable → run as admin → reboot. (If you forget, the app pops a download button.)
- Unzip the release. You get one
.exe+ 4 reference files. - Double-click
Doppelvoice.exe(first launch takes 7-10 s while it unpacks). - Settings dialog opens automatically — paste your Doubao App Key + Access Token from Volcengine Console, Save.
- In your meeting app set the mic to
CABLE Output (VB-Audio Virtual Cable). Speak — the peer hears your voice translated.
That's it. No .env editing, no folder navigation, no Python install.
What's new in v0.3.0
Changed (UX)
- PyInstaller bundle is now
onefile— distribution is a singleDoppelvoice.exe(~63 MB extracted, 60 MB zipped) instead of a 154 MB folder. First launch takes 7-10 s while the bundled_internal/unpacks to%TEMP%; subsequent launches are roughly the same. - Data directory moved to
%APPDATA%\Doppelvoice\in bundled mode (~/Library/Application Support/Doppelvoice/on macOS,~/.local/share/doppelvoice/on Linux). Your.envand log files live there now. Backward-compat: if you used v0.2.x and have a.envnext toDoppelvoice.exe, it keeps working from there. - No manual
.envediting required. First launch opens the Settings dialog automatically; saving creates the.envvia atomic write. The shipped.env.exampleis reference-only.
Added
- "Download VB-Cable" button in the missing-virtual-audio-device dialog. One click opens the VB-Audio download page. Replaces the earlier text-only warning.
Migration from v0.2.x
- Single
.exereplaces theDoppelvoice/folder. Delete the old folder; nothing inside it is needed. - Your existing
.env(if it sat next to the old.exe) keeps working transparently.
Trade-off: first-launch is 7-10 s slower than v0.2.x onedir mode (PyInstaller's onefile bootloader unpacks _internal/ on every launch). Steady-state runtime is identical.
Full changelog: CHANGELOG.md