Skip to content

Releases: mohammad-rj/speakpaste

v1.13.0

Choose a tag to compare

@github-actions github-actions released this 26 Sep 18:02
2a5e9d1

What's new

  • Remote Desktop hotkey handover. Run SpeakPaste on your PC and inside the remote session with the same hotkey. While a Remote Desktop window (mstsc, msrdc, vmconnect, rdcman) is in front, the local copy leaves the hotkey to the remote one. Setting: General → Leave hotkeys to the remote PC while a Remote Desktop window is in front (on by default). Setup notes in the README.
  • Self-healing microphone. When the input device disappears (a Remote Desktop reconnect, a USB mic unplugged, a new default device), SpeakPaste reopens it within a few seconds. No more restarting after a reconnect.
  • Live History. New voices show up while the History window is open; before, the window stopped updating once history was full.

Fixes

  • The version string was stuck at 1.2.0, so every start reported an update to 1.12.0.
  • The log names the focused app on every hotkey press, for diagnosing where a press went.

v1.12.0

Choose a tag to compare

@github-actions github-actions released this 29 Jul 00:29

What's new in v1.12.0

The hotkey no longer gets stuck

  • A hotkey could silently degrade: after a busy moment, pressing Alt alone started recording, as if Win were still held. Pressing the real hotkey once cleared it, until it happened again.
  • Key state now comes straight from Windows instead of from tracked keyboard events, so a missed key release can no longer wedge it. The same fix removes a case where typing could hang forever.

Use your own Gemini endpoint

  • New Base URL and Base URL token fields on the Speech → Text tab. Point them at any Gemini-compatible proxy and every Gemini call - transcription, prompt rewriting and text-to-speech - goes there instead of to Google, with your real key staying on the proxy.
  • Environment variables SPEAKPASTE_GEMINI_BASE_URL and SPEAKPASTE_GEMINI_TOKEN override the fields.
  • Leave them empty and nothing changes.

v1.11.0

Choose a tag to compare

@github-actions github-actions released this 22 Jul 14:57

What's new in v1.11.0

Hotkeys

  • A Record button next to each hotkey field captures the combination you press instead of making you type it.
  • Combinations are validated. Windows-reserved ones are rejected with the reason - including that a Win+letter combo stays reserved even with extra modifiers held, so a broken hotkey is caught before it ever gets saved.

Text insertion

  • New Automatic / Always type / Always paste setting. Automatic types short text and pastes anything over 220 characters, where typing key by key would take seconds. Pasting restores your previous clipboard content afterwards.
  • Gives apps that ignore synthetic keystrokes (SendInput) a working path.

Error reporting

  • A failed transcription now shows a small notification with the actual reason instead of only writing a line to a log nobody sees.

Player widget

  • The floating reading player is now about 40% shorter: the speed control moved onto the same row as play/pause/next/prev/stop, leaving only the timeline on its own row below.

Tests

  • 34 automated tests now run on every push, covering hotkey validation, text chunking, playback speed accuracy, and more.

v1.10.0

Choose a tag to compare

@github-actions github-actions released this 21 Jul 20:29

What's new in v1.10.0

Read any text aloud

  • Select text in any Windows app and press Win+Shift to hear it read.
  • Your clipboard is untouched — the selection is copied and your previous clipboard content is put back.
  • A floating player gives you play/pause, stop, a seek bar, and a 0.5x–2x speed slider that keeps the voice natural instead of turning it into a chipmunk.
  • Long text starts playing within a few seconds instead of making you wait: it is split at sentence boundaries and later parts are prepared while earlier ones play, with no gaps between them.
  • Jump between parts with the ◀◀ / ▶▶ buttons. A part 2/5 counter and tick marks on the seek bar show where you are. Pressing back mid-part replays that part from its start.
  • Two voice engines: free Microsoft Edge neural voices (default, no key), or Gemini-TTS on Vertex AI where you can describe in plain words how it should read.
  • The tray menu also has Read clipboard aloud and Stop reading.

New gemini speech-to-text engine

  • Detects the spoken language by itself, so the keyboard layout and the Language setting no longer matter.
  • Persian sentences keep their English technical terms in Latin script — say "برو روی branch جدید و commit رو merge کن" and branch, commit and merge come out in English instead of being mangled.

Settings and history

  • Settings are now split into three tabs: Speech → Text, Text → Speech, and General.
  • A Test voice button plays a sample without closing the window.
  • Click any history entry to copy it back to your clipboard.

Housekeeping

  • SpeakPaste is now licensed under Apache 2.0. A THIRD-PARTY-NOTICES.md documents every dependency licence and the LGPL/GPL components bundled into the executable.
  • A rotating log file is written next to the app, which makes problems diagnosable now that the app runs without a console.

v1.9.0

Choose a tag to compare

@github-actions github-actions released this 15 Jul 22:20

Fixes and improvements:

  • Settings and History windows no longer hang or fail to open
  • Fix Google engine [WinError 2] in the packaged exe (bundled FLAC encoder)
  • History right-aligns Persian text, keeps English left-aligned
  • History now persists across restarts
  • Fix Google Cloud API key not applying on Save

v1.8.0

Choose a tag to compare

@github-actions github-actions released this 09 Apr 14:22
  • Gemini thinking level + media resolution controls (Minimal/Low/Medium/High), default Low — reduces latency\n- Settings window is now scrollable\n- Log lines now show timestamp and elapsed time per step

v1.7.0

Choose a tag to compare

@github-actions github-actions released this 06 Apr 09:28

What's new in v1.7.0

Decoupled Transcription Engine from Prompt Mode

  • Transcription Engine and Prompt are now two independent settings
  • Choose any STT engine (Google, Groq, Google Cloud, Chrome Extension) independently
  • Choose a prompt mode (Off, Gemini Flash Lite, Gemini Flash) independently
  • Selecting Gemini Flash (voice to prompt directly) grays out the Transcription Engine section - it is bypassed entirely
  • Settings auto-migrate from the old combined engine format

v1.6.0

Choose a tag to compare

@github-actions github-actions released this 06 Apr 07:14

What's new in v1.6.0

History window

  • New History item in the tray right-click menu
  • Shows all transcriptions from the current session with timestamp and engine
  • Updates in real-time — new entries appear instantly while the window is open
  • For gemini-lite (two-step processing): shows both the raw voice transcription and the converted English prompt as separate labeled rows
  • Show voice text checkbox to toggle the raw STT row for gemini-lite entries
  • Clear button to wipe the session history
  • History is in-memory only and resets on restart

v1.5.0

Choose a tag to compare

@github-actions github-actions released this 06 Apr 06:11

What's new in v1.5.0

Auto-detect language from Windows keyboard layout

  • New "Follow Windows keyboard layout" option in Settings → General
  • When enabled, SpeakPaste reads your active keyboard layout at the moment you press the hotkey - no manual language switching needed
  • Toggle Persian layout (Alt+Shift) → speak Persian; switch to English layout → speak English
  • Language is locked for the full press → release → transcribe cycle
  • Falls back to the configured language if the layout is not recognised
  • Supported layouts: Persian/Farsi, English, Arabic, Turkish, German, French, Russian, Portuguese, Spanish, Japanese, Korean, Chinese
  • Works with all engines: google, google-cloud, groq, google-ext, gemini-lite

v1.4.0

Choose a tag to compare

@github-actions github-actions released this 30 Mar 01:55

What's new in v1.4.0

Gemini Engines

  • gemini-lite — speak in any language → Google STT (free) → Gemini Flash Lite → clean English programming prompt for your AI coding assistant
  • gemini-flash — speak in any language → WAV sent directly to Gemini Flash (multimodal) → English prompt, no intermediate STT step
  • System prompt is fully customizable in Settings
  • Free Gemini API key from aistudio.google.com

CI/CD Pipeline

  • GitHub Actions workflow: push a tag → exe built automatically on Windows runner → published as GitHub Release
  • release.py helper script for local version bump + tag + push