PiperObs v2

unlisted

by Nicolas Venosa

Local TTS with karaoke highlight, Pomodoro timer, 5 color themes, and offline voice synthesis.

Updated 13d agoMIT
View on GitHub

🔊 PiperObs v2

Local TTS with karaoke highlight, Pomodoro timer, 5 color themes, and offline voice synthesis.

Obsidian Downloads Version License


✨ Features

  • 🎙️ Local TTS — Synthesize speech offline using Piper TTS. No internet required after setup.
  • 🎨 Karaoke Highlight — Words are highlighted in real-time as they are spoken (editor mode only).
  • 🍅 Adaptive Pomodoro — Auto-adjusts focus/break sessions based on document length.
  • 🎭 5 Color Themes — Gold, Cyan, Magenta, Green, Orange. Switch anytime.
  • 🎤 Voice Manager — Download, delete, and switch voices on the fly.
  • 🎚️ Volume & Speed — Independent controls for playback volume (0-100%) and speed (0.75x - 1.5x).
  • 🎯 Focus Mode — Dims everything except the active line while reading (editor mode only).
  • 🌐 Multi-language — Supports Spanish (AR, ES, MX), Portuguese, English, and more.
  • 📱 MiniPlayer — Floating playback bar with waveform animation and progress.
  • Gapless Playback — Web Audio API for smooth, uninterrupted reading.

📸 Screenshots

Sidebar — Controles principales

Sidebar Preview Panel lateral con velocidad, volumen, selector de voz, temas, focus mode y pomodoro

MiniPlayer — Reproducción flotante

MiniPlayer Preview Barra flotante con waveform animado, controles de reproducción y progreso

Karaoke — Resaltado de palabras

Karaoke Preview Modo edición: palabras resaltadas en tiempo real mientras se lee


📦 Installation

From Obsidian Community Plugins (Recommended)

  1. Open Settings → Community Plugins
  2. Turn on Safe Mode off
  3. Click Browse and search for "PiperObs"
  4. Click Install, then Enable

Manual Installation

  1. Download the latest release: main.js, styles.css, and manifest.json
  2. Create a folder .obsidian/plugins/piperobs-v2/ in your vault
  3. Copy the three files into that folder
  4. Enable the plugin in Settings → Community Plugins

🚀 First Use

  1. Open the PiperObs sidebar (right panel)
  2. Click "Leer documento completo" or use the command palette (Ctrl+P → "Read document")
  3. The plugin will automatically download Piper binary and the default voice on first run
  4. Enjoy your local TTS!

🎛️ Controls

FeatureShortcut / Control
Read documentCtrl+P → "Leer documento"
Pause / ResumeCtrl+P → "Pausar/Reanudar"
StopCtrl+P → "Detener"
SpeedSlider in sidebar (0.75x - 1.5x)
VolumeSlider in sidebar (0% - 100%)
VoiceDropdown in sidebar
ThemeColor circles in sidebar
Focus ModeButton in sidebar or Command Palette
PomodoroToggle in sidebar

🎤 Supported Voices

PiperObs includes a curated catalog of voices. You can download additional voices from the Voice Manager (+ Gestionar voces).

Included by default:

  • es_AR-daniela-high — Español Argentina (femenina)

Available to download:

  • es_ES-davefx-medium — Español España (masculina)
  • es_ES-carlfm-x_low — Español España (masculina, ligera)
  • es_MX-claude-high — Español México (femenina)
  • pt_BR-faber-medium — Portugués Brasil (masculina)
  • en_US-lessac-medium — English US (masculina)
  • en_US-amy-medium — English US (femenina)

And 30+ more languages available via the Piper voice repository.


⚙️ Settings

SettingDescriptionDefault
Data DirectoryWhere Piper binaries and voices are stored.obsidian/piperobs-data
Default VoiceVoice used for readinges_AR-daniela-high
VolumePlayback volume (0-100%)85%
Playback RateSpeech speed1.0x
Karaoke HighlightHighlight words while readingOn
Auto MagicSuggest voices by languageOn
PomodoroEnable timer during readingOff
Karaoke ThemeColor theme for highlightsGold

🖥️ Requirements

  • Obsidian v1.5.0 or later
  • Desktop only (Linux, macOS, Windows)
  • ~150MB free space for Piper binary + default voice
  • Internet connection only for downloading Piper and voices (first time)

🛠️ Development

git clone https://github.com/Nicovenosa/piperobs-v2.git
cd piperobs-v2
npm install
npm run build

For development with hot-reload:

npm run dev

🗺️ Roadmap

  • Streaming synthesis (no temp files)
  • Mobile support (if Piper releases mobile binaries)
  • Custom pronunciation dictionary
  • Export audio to file
  • Voice preview before download

🤝 Contributing

Contributions are welcome! Please open an issue or PR on GitHub.


📄 License

MIT License — see LICENSE for details.


🙏 Credits


⭐ Star this repo if you find it useful!

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.