Give a voice to everyone & everything! Games, software, videos. A tool that unifies many different text-to-speech engines into one graphical user interace. Create scripts, try out TTS engines, and more coming soon. At the moment only basic capabilities are enabled for each engine, but the plan is to integrate all of the features available for each.
The objective of this project is to provide a nice interface to use many TTS engines simultaneously. The next step will be providing an easy way to enable TTS in any game or software, and if it's feasible to provide OCR capabilities to enable it in games that aren't easily moddable.
Built in Go using wails.io, Vue + Typescript.
- Local & API TTS engines
- Create & Modify audio scripts
- Preview TTS engines and their available voices
- Server mode to provide TTS via http
- Command line mode to provide TTS through stdio
- Twitch, Kick integration for streaming
- OCR to TTS
- TBA
Narration Studio uses Wails v3. Install its CLI with
go install github.com/wailsapp/wails/v3/cmd/wails3@v3.0.0-alpha.98, then run wails3 dev in the project directory.
It runs the Vite development server with hot reload of your frontend changes and rebuilds the app when a .go file
changes.
Build Piper's native library first (scripts/build-libpiper.ps1 on Windows, scripts/build-libpiper.sh elsewhere),
then:
- Windows:
scripts/build.ps1builds the app, the CLI and the NSIS installer (needs NSIS and thewails3CLI). - macOS:
scripts/build-osx.shbuilds a universalNarration Studio.appwith the CLI inside. - Linux:
scripts/build.sh [gtk4|gtk3]builds the app and the CLI for GTK 4 + WebKitGTK 6.0 (libgtk-4-dev libwebkitgtk-6.0-dev) or GTK 3 + WebKit2GTK 4.1 (libgtk-3-dev libwebkit2gtk-4.1-dev), pluslibasound2-dev.

