whisper-key-local 0.5.2__py3-none-any.whl → 0.6.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. whisper_key/assets/version.txt +1 -1
  2. whisper_key/audio_feedback.py +21 -20
  3. whisper_key/audio_recorder.py +2 -9
  4. whisper_key/clipboard_manager.py +35 -52
  5. whisper_key/config.defaults.yaml +22 -13
  6. whisper_key/config_manager.py +25 -9
  7. whisper_key/console_manager.py +2 -58
  8. whisper_key/hotkey_listener.py +55 -89
  9. whisper_key/instance_manager.py +9 -13
  10. whisper_key/main.py +28 -11
  11. whisper_key/platform/__init__.py +10 -0
  12. whisper_key/platform/macos/__init__.py +1 -0
  13. whisper_key/platform/macos/app.py +27 -0
  14. whisper_key/platform/macos/console.py +13 -0
  15. whisper_key/platform/macos/hotkeys.py +180 -0
  16. whisper_key/platform/macos/icons.py +11 -0
  17. whisper_key/platform/macos/instance_lock.py +31 -0
  18. whisper_key/platform/macos/keyboard.py +97 -0
  19. whisper_key/platform/macos/keycodes.py +17 -0
  20. whisper_key/platform/macos/paths.py +8 -0
  21. whisper_key/platform/macos/permissions.py +66 -0
  22. whisper_key/platform/windows/__init__.py +1 -0
  23. whisper_key/platform/windows/app.py +6 -0
  24. whisper_key/platform/windows/console.py +59 -0
  25. whisper_key/platform/windows/hotkeys.py +30 -0
  26. whisper_key/platform/windows/icons.py +11 -0
  27. whisper_key/platform/windows/instance_lock.py +14 -0
  28. whisper_key/platform/windows/keyboard.py +12 -0
  29. whisper_key/platform/windows/paths.py +8 -0
  30. whisper_key/platform/windows/permissions.py +6 -0
  31. whisper_key/state_manager.py +4 -4
  32. whisper_key/system_tray.py +30 -57
  33. whisper_key/terminal_ui.py +71 -0
  34. whisper_key/utils.py +8 -4
  35. whisper_key_local-0.6.0.dist-info/METADATA +159 -0
  36. whisper_key_local-0.6.0.dist-info/RECORD +47 -0
  37. {whisper_key_local-0.5.2.dist-info → whisper_key_local-0.6.0.dist-info}/WHEEL +1 -1
  38. whisper_key/assets/tray_idle.png +0 -0
  39. whisper_key/assets/tray_processing.png +0 -0
  40. whisper_key/assets/tray_recording.png +0 -0
  41. whisper_key_local-0.5.2.dist-info/METADATA +0 -130
  42. whisper_key_local-0.5.2.dist-info/RECORD +0 -29
  43. {whisper_key_local-0.5.2.dist-info → whisper_key_local-0.6.0.dist-info}/entry_points.txt +0 -0
  44. {whisper_key_local-0.5.2.dist-info → whisper_key_local-0.6.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,159 @@
1
+ Metadata-Version: 2.4
2
+ Name: whisper-key-local
3
+ Version: 0.6.0
4
+ Summary: Local faster-whisper speech-to-text app with global hotkeys for Windows
5
+ Author-email: Pin Wang <pinwang@gmail.com>
6
+ Requires-Python: >=3.11
7
+ Description-Content-Type: text/markdown
8
+ Requires-Dist: faster-whisper>=1.2.1
9
+ Requires-Dist: ctranslate2>=4.6.3
10
+ Requires-Dist: numpy>=1.24.0
11
+ Requires-Dist: soxr>=0.3.0
12
+ Requires-Dist: sounddevice>=0.4.6
13
+ Requires-Dist: pyperclip>=1.8.2
14
+ Requires-Dist: ruamel.yaml>=0.18.14
15
+ Requires-Dist: pystray>=0.19.5
16
+ Requires-Dist: Pillow>=10.0.0
17
+ Requires-Dist: hf-xet>=1.1.5
18
+ Requires-Dist: playsound3>=2.0
19
+ Requires-Dist: ten-vad>=1.0.6
20
+ Requires-Dist: global-hotkeys>=0.1.7; sys_platform == "win32"
21
+ Requires-Dist: pywin32>=306; sys_platform == "win32"
22
+ Requires-Dist: pyautogui>=0.9.54; sys_platform == "win32"
23
+ Requires-Dist: pyobjc-framework-Quartz; sys_platform == "darwin"
24
+ Requires-Dist: pyobjc-framework-ApplicationServices; sys_platform == "darwin"
25
+
26
+ # Whisper Key - Local Speech-to-Text
27
+
28
+ Global hotkeys to record speech and transcribe directly to your cursor.
29
+
30
+ > **Now on Windows and macOS!** Questions or ideas? [Discord](https://discord.gg/uZnXV8snhz)
31
+
32
+ ## ✨ Features
33
+
34
+ - **Global Hotkey**: Start recording speech from any app
35
+ - **Auto-Paste**: Transcribe directly to cursor
36
+ - **Auto-Send**: Optionally auto-send your transcription with ENTER
37
+ - **Offline Capable**: No internet required after models downloaded
38
+ - **Local Processing**: Voice data never leaves your computer
39
+ - **Efficient Models**: Choose a small, efficient model for CPU
40
+ - **CUDA Support**: Or leverage your nVidia GPU with bigger models
41
+ - **Voice activity detection**: Auto-cancel after long silences and prevent hallucination
42
+ - **Cross-platform**: Works on Windows and macOS
43
+ - **Configurable**: Customize hotkeys, models, and [much more](#️-configuration)
44
+
45
+ ## 🚀 Quick Start
46
+
47
+ ### From PyPI (Recommended)
48
+
49
+ Requires Python 3.11-3.13
50
+
51
+ ```bash
52
+ # With pipx (isolated environment)
53
+ pipx install whisper-key-local
54
+
55
+ # Or with pip (simpler)
56
+ pip install whisper-key-local
57
+ ```
58
+
59
+ Then run: `whisper-key`
60
+
61
+ ### Portable App (Windows Only)
62
+
63
+ 1. [Download the latest release zip](https://github.com/PinW/whisper-key-local/releases/latest)
64
+ 2. Extract and run `whisper-key.exe`
65
+
66
+ ### From Source
67
+
68
+ ```bash
69
+ git clone https://github.com/PinW/whisper-key-local.git
70
+ cd whisper-key-local
71
+ pip install -e .
72
+ python whisper-key.py
73
+ ```
74
+
75
+ ## 🎤 Basic Usage
76
+
77
+ | Hotkey | Windows | macOS |
78
+ |--------|---------|-------|
79
+ | Start recording | `Ctrl+Win` | `Fn+Ctrl` |
80
+ | Stop & transcribe | `Ctrl` | `Fn` |
81
+ | Stop & auto-send | `Alt` | `Option` |
82
+ | Cancel recording | `Esc` | `Shift` |
83
+
84
+ Open the system tray / menu bar icon to:
85
+ - Toggle auto-paste vs clipboard-only
86
+ - Change transcription model
87
+ - Select audio device
88
+
89
+ ## ⚙️ Configuration
90
+
91
+ Local settings at:
92
+ - **Windows:** `%APPDATA%\whisperkey\user_settings.yaml`
93
+ - **macOS:** `~/Library/Application Support/whisperkey/user_settings.yaml`
94
+
95
+ Delete this file and restart app to reset to defaults.
96
+
97
+ | Option | Default | Notes |
98
+ |--------|---------|-------|
99
+ | **Whisper** |||
100
+ | `whisper.model` | `tiny` | Any model defined in `whisper.models` |
101
+ | `whisper.device` | `cpu` | cpu or cuda (NVIDIA GPU) |
102
+ | `whisper.compute_type` | `int8` | int8/float16/float32 |
103
+ | `whisper.language` | `auto` | auto or language code (en, es, fr, etc.) |
104
+ | `whisper.beam_size` | `5` | Higher = more accurate but slower (1-10) |
105
+ | `whisper.models` | (see config) | Add custom HuggingFace or local models |
106
+ | **Hotkeys** |||
107
+ | `hotkey.recording_hotkey` | `ctrl+win` / `fn+ctrl` | Windows / macOS |
108
+ | `hotkey.stop_with_modifier_enabled` | `true` | Stop with first modifier only |
109
+ | `hotkey.auto_enter_enabled` | `true` | Enable auto-send hotkey |
110
+ | `hotkey.auto_enter_combination` | `alt` / `option` | Stop + paste + Enter |
111
+ | `hotkey.cancel_combination` | `esc` / `shift` | Cancel recording |
112
+ | **Voice Activity Detection** |||
113
+ | `vad.vad_precheck_enabled` | `true` | Prevent hallucinations on silence |
114
+ | `vad.vad_onset_threshold` | `0.7` | Speech detection start (0.0-1.0) |
115
+ | `vad.vad_offset_threshold` | `0.55` | Speech detection end (0.0-1.0) |
116
+ | `vad.vad_min_speech_duration` | `0.1` | Min speech segment (seconds) |
117
+ | `vad.vad_realtime_enabled` | `true` | Auto-stop on silence |
118
+ | `vad.vad_silence_timeout_seconds` | `30.0` | Seconds before auto-stop |
119
+ | **Audio** |||
120
+ | `audio.host` | `null` | Audio API (WASAPI, Core Audio, etc.) |
121
+ | `audio.channels` | `1` | 1 = mono, 2 = stereo |
122
+ | `audio.dtype` | `float32` | float32/int16/int24/int32 |
123
+ | `audio.max_duration` | `900` | Max recording seconds (0 = unlimited) |
124
+ | `audio.input_device` | `default` | Device ID or "default" |
125
+ | **Clipboard** |||
126
+ | `clipboard.auto_paste` | `true` | false = clipboard only |
127
+ | `clipboard.paste_hotkey` | `ctrl+v` / `cmd+v` | Paste key simulation |
128
+ | `clipboard.preserve_clipboard` | `true` | Restore clipboard after paste |
129
+ | `clipboard.key_simulation_delay` | `0.05` | Delay between keystrokes (seconds) |
130
+ | **Logging** |||
131
+ | `logging.level` | `INFO` | DEBUG/INFO/WARNING/ERROR/CRITICAL |
132
+ | `logging.file.enabled` | `true` | Write to app.log |
133
+ | `logging.console.enabled` | `true` | Print to console |
134
+ | `logging.console.level` | `WARNING` | Console verbosity |
135
+ | **Audio Feedback** |||
136
+ | `audio_feedback.enabled` | `true` | Play sounds on record/stop |
137
+ | `audio_feedback.start_sound` | `assets/sounds/...` | Custom sound file path |
138
+ | `audio_feedback.stop_sound` | `assets/sounds/...` | Custom sound file path |
139
+ | `audio_feedback.cancel_sound` | `assets/sounds/...` | Custom sound file path |
140
+ | **System Tray** |||
141
+ | `system_tray.enabled` | `true` | Show tray icon |
142
+ | `system_tray.tooltip` | `Whisper Key` | Hover text |
143
+ | **Console** |||
144
+ | `console.start_hidden` | `false` | Start minimized to tray |
145
+
146
+ ## 📁 Model Cache
147
+
148
+ Default path for transcription models (via HuggingFace):
149
+ - **Windows:** `%USERPROFILE%\.cache\huggingface\hub\`
150
+ - **macOS:** `~/.cache/huggingface/hub/`
151
+
152
+ ## 📦 Dependencies
153
+
154
+ **Cross-platform:**
155
+ `faster-whisper` · `numpy` · `sounddevice` · `soxr` · `pyperclip` · `ruamel.yaml` · `pystray` · `Pillow` · `playsound3` · `ten-vad` · `hf-xet`
156
+
157
+ **Windows:** `global-hotkeys` · `pywin32` · `pyautogui`
158
+
159
+ **macOS:** `pyobjc-framework-Quartz` · `pyobjc-framework-ApplicationServices`
@@ -0,0 +1,47 @@
1
+ whisper_key/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ whisper_key/audio_feedback.py,sha256=EAZq18yro9lKlnL8NoGJwgj1u-lfjEnkxEheEkBY8PQ,2096
3
+ whisper_key/audio_recorder.py,sha256=_5yfSx47ZtV9EFUEzHmXkz4zQt6LzH9kgjb8SmH8SFU,11091
4
+ whisper_key/clipboard_manager.py,sha256=tCLjrju4PKfLYj2_BVMNrmTH0jbJlOdZVwY5OAZgNoI,4713
5
+ whisper_key/config.defaults.yaml,sha256=NU3w49sSUQv6KLr9FRgumAW6lr6qDMllZY9pDa3Mxyk,8365
6
+ whisper_key/config_manager.py,sha256=ir1eFvB4BCuzu74b83qUUJOTi2C5DYu0Hu1bhAuYTTg,18996
7
+ whisper_key/console_manager.py,sha256=2tpzArinBGXSXidTl_LP_1Jy3bpLjRlsVr4_GXmFY2w,71
8
+ whisper_key/hotkey_listener.py,sha256=gUpV-yv5jFOWuamfK6C7WmfR7eGvUuTyk9jsSxUOJn4,6252
9
+ whisper_key/instance_manager.py,sha256=IVc4jhmbKOP0dQoKKYYgdPqZNiDO3xBB8x-lqpdep08,821
10
+ whisper_key/main.py,sha256=tOaxSsun6qBm4kYhgREmfMH4OBuSijzlPd1rmU8spiw,9556
11
+ whisper_key/model_registry.py,sha256=G8BC2jZpTD7cOEeWcfCPPNtu7MsGfyEukuIpfHe_3bk,2718
12
+ whisper_key/state_manager.py,sha256=QSvNOODWzuotj5S7opCp9dEzaeu0Z0yaa5it6f7HQ4o,19332
13
+ whisper_key/system_tray.py,sha256=poYrR8JiK-j7hYmaKQP4UmoMSN0XoKiDRDdMwG1_RIQ,12018
14
+ whisper_key/terminal_ui.py,sha256=zIYto_r9mKNh1s55iCgkTB4rXk3oY99YXFEkrLOSuCs,1900
15
+ whisper_key/utils.py,sha256=wB8r5oG_3MHB-jb-5nucW6TXYHXL55b68ytjngnqlf0,2464
16
+ whisper_key/voice_activity_detection.py,sha256=Q6wzuUrMQfwk5atOYcbhuug50EXQmSQeo3UT4gVEKs8,9588
17
+ whisper_key/whisper_engine.py,sha256=Qop6fAtUHKeU346jtdBQoUnNpwoeaiDZn3BQJnUGTc0,7126
18
+ whisper_key/assets/portaudio.dll,sha256=7HKPuVjxqajT424rbSKs0RnGGk9rQ92MJiaH7taboHg,951689
19
+ whisper_key/assets/version.txt,sha256=Ke8b6aOkBgjuceFV64cco0Yw4jvu6a8pRBq6nQ6nbVQ,5
20
+ whisper_key/assets/sounds/record_cancel.wav,sha256=KyjCjKdd1FkAUXCxHkg9Gqo3EuOdeyUvT9n1CKG54Zg,18206
21
+ whisper_key/assets/sounds/record_start.wav,sha256=E704RZ433LwgdPyDN6G9csfk0V0NefBSbYZqRKwGnq4,96846
22
+ whisper_key/assets/sounds/record_stop.wav,sha256=E704RZ433LwgdPyDN6G9csfk0V0NefBSbYZqRKwGnq4,96846
23
+ whisper_key/platform/__init__.py,sha256=iIPDrkw-AdONLCoz-JSl6GUwHyvNA1nyl2XTzcVfLfo,380
24
+ whisper_key/platform/macos/__init__.py,sha256=VB6kEIXBicjUHkn4qcc5V19CPnu-qaa1J8RWN6eVjzs,76
25
+ whisper_key/platform/macos/app.py,sha256=Htiv9u3hFRG2UiClmaSoioi-tAVknPbyVaDeI0rdC0Y,889
26
+ whisper_key/platform/macos/console.py,sha256=60CH5mD-uZ5-lF1brwMN4Nf0MVnQX39BwCymfh9dQgE,340
27
+ whisper_key/platform/macos/hotkeys.py,sha256=4IOTdkvqcxpujWlwUqo1GhJ0FlMtb-6rWudKfYNIv6c,5294
28
+ whisper_key/platform/macos/icons.py,sha256=utycz63TDHZAtVFgs1IhopJcaCGF_-ArQc7kC4lYhGk,340
29
+ whisper_key/platform/macos/instance_lock.py,sha256=ZCPX8yIEfD6qbJbUiRuDtQEqGSlHasxW-msxFIr_B5w,743
30
+ whisper_key/platform/macos/keyboard.py,sha256=2Umm8D_hbwviYGSIipukVsa5HpDQMm-Rdy6q3B4afCs,2673
31
+ whisper_key/platform/macos/keycodes.py,sha256=f8iDSDB-ohALyF1gM0VYitwMmUxKtdKCeJr5Jm9p-Rk,728
32
+ whisper_key/platform/macos/paths.py,sha256=fQ2zwyU0bpGvsQxITL6pv9UnqVGSm16BI_Lp3HZSDPU,205
33
+ whisper_key/platform/macos/permissions.py,sha256=B-P89cMs1MHpcvOdVkn8dxOhts8RIWLPe4fzd0XPHf4,1982
34
+ whisper_key/platform/windows/__init__.py,sha256=VB6kEIXBicjUHkn4qcc5V19CPnu-qaa1J8RWN6eVjzs,76
35
+ whisper_key/platform/windows/app.py,sha256=XDcdQ35ASuORiPWIDGFi1yfwpj78979Jj-s4XaXN8Ko,120
36
+ whisper_key/platform/windows/console.py,sha256=NTyVtBRzzcXc4M6RBp0Tp1BKnQpDpQ2Gtbs5bIqiZH8,2010
37
+ whisper_key/platform/windows/hotkeys.py,sha256=UI3NINjwpldINI0t3rxDbpJgPWiHSvvn971c7VmrEz0,846
38
+ whisper_key/platform/windows/icons.py,sha256=utycz63TDHZAtVFgs1IhopJcaCGF_-ArQc7kC4lYhGk,340
39
+ whisper_key/platform/windows/instance_lock.py,sha256=bvy76-jlsA2QaMnvzHvkXWTqEGACQHsCqppFQXa3ED4,379
40
+ whisper_key/platform/windows/keyboard.py,sha256=whSmm1B82GZ-A5EDpz6RpDcwIKYfqd9LTfK5LU0_sek,210
41
+ whisper_key/platform/windows/paths.py,sha256=TPNr0AuZ5M53121SqRfiWJA4yBNI46I6T7GukHkyjow,159
42
+ whisper_key/platform/windows/permissions.py,sha256=qucBNxrP2BZrz1o-2ASwklATilSHyf9UvDhcZx4dWN0,135
43
+ whisper_key_local-0.6.0.dist-info/METADATA,sha256=O6CGVnHPHGJ8Oyb8w23qMKt6miWQMyA3kSIh62m2mfI,6423
44
+ whisper_key_local-0.6.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
45
+ whisper_key_local-0.6.0.dist-info/entry_points.txt,sha256=70ibxew9nZShJozx4Jcbuwd4Fcrr0Ji_BD7gk6azl4E,54
46
+ whisper_key_local-0.6.0.dist-info/top_level.txt,sha256=gtXj51Nif3n1odPP3OvpiljIojWTpRBLCNlhzKWisxQ,12
47
+ whisper_key_local-0.6.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
Binary file
Binary file
Binary file
@@ -1,130 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: whisper-key-local
3
- Version: 0.5.2
4
- Summary: Local faster-whisper speech-to-text app with global hotkeys for Windows
5
- Author-email: Pin Wang <pinwang@gmail.com>
6
- Requires-Python: >=3.11
7
- Description-Content-Type: text/markdown
8
- Requires-Dist: faster-whisper>=1.2.1
9
- Requires-Dist: ctranslate2>=4.6.3
10
- Requires-Dist: numpy>=1.24.0
11
- Requires-Dist: scipy>=1.11.0
12
- Requires-Dist: sounddevice>=0.4.6
13
- Requires-Dist: global-hotkeys>=0.1.7; platform_system == "Windows"
14
- Requires-Dist: pyperclip>=1.8.2
15
- Requires-Dist: ruamel.yaml>=0.18.14
16
- Requires-Dist: pywin32>=306; platform_system == "Windows"
17
- Requires-Dist: pyautogui>=0.9.54; platform_system == "Windows"
18
- Requires-Dist: pystray>=0.19.5
19
- Requires-Dist: Pillow>=10.0.0
20
- Requires-Dist: hf-xet>=1.1.5
21
-
22
- # Whisper Key - Local Speech-to-Text for Windows
23
-
24
- Global hotkey to start/stop recording and auto-paste transcription wherever your cursor is.
25
-
26
- Questions or ideas? [Discord Server](https://discord.gg/uZnXV8snhz)
27
-
28
- ## 🎯 Features
29
-
30
- - **Global Hotkey**: Press `Ctrl+Win` to start recording, `Ctrl` to stop
31
- - **Auto-Paste**: Transcription inserted at your cursor via auto-paste
32
- - **Auto-Send**: Press `Alt` to stop, auto-paste, and auto-send with ENTER keypress
33
- - **Offline Capable**: No internet required after models downloaded
34
- - **Local Processing**: Voice data never leaves your computer
35
- - **Voice activity detection**: Prevent hallucinations, auto-stop accidental hotkey presses
36
- - **Configurable**: Customize hotkeys, model, transcription actions, and audio settings
37
-
38
- ## 🚀 Quick Start
39
-
40
- ### Prerequisites
41
- - Windows 10/11
42
- - Microphone
43
-
44
- ### Option 1: Download Portable App
45
- 1. [Download the latest release zip](https://github.com/PinW/whisper-key-local/releases/latest)
46
- 2. Extract the zip file
47
- 3. Run `whisper-key.exe`
48
-
49
- ### Option 2: Install via pipx
50
- **Prerequisites:**
51
- - Python 3.8+ installed on Windows
52
- - pipx installed (`pip install pipx`)
53
-
54
- Install the application globally:
55
- ```bash
56
- pipx install whisper-key-local
57
- ```
58
-
59
- Add VAD support (prevents silence hallucinations):
60
- ```bash
61
- pipx inject whisper-key-local git+https://github.com/TEN-framework/ten-vad.git@v1.0-ONNX
62
- ```
63
-
64
- Run from anywhere:
65
- ```bash
66
- whisper-key
67
- ```
68
-
69
- ### Option 3: Development Installation
70
- **Prerequisites:**
71
- - Python 3.8+ installed on Windows
72
-
73
- Clone the repository:
74
- ```bash
75
- git clone https://github.com/PinW/whisper-key-local.git
76
- cd whisper-key-local
77
- ```
78
-
79
- Install the dependencies:
80
- ```bash
81
- pip install -e .
82
- ```
83
-
84
- Add VAD support (prevents silence hallucinations):
85
- ```bash
86
- pip install git+https://github.com/TEN-framework/ten-vad.git@v1.0-ONNX
87
- ```
88
-
89
- Run the application:
90
- ```bash
91
- python whisper-key.py
92
- ```
93
-
94
- ## 📦 Package Dependencies
95
-
96
- - `faster-whisper` - Fast AI speech recognition
97
- - `numpy` - Numerical computing support
98
- - `sounddevice` - Audio recording
99
- - `global-hotkeys` - System-wide hotkey detection
100
- - `pyperclip` - Clipboard operations
101
- - `ruamel.yaml` - Configuration file parsing (YAML)
102
- - `pyautogui` - Key simulation for Ctrl+V auto-paste and auto-ENTER
103
- - `pywin32` - Windows API access for window management
104
- - `pystray` - System tray integration
105
- - `Pillow` - Image processing for system tray icons
106
- - `hf-xet` - Cache management for Hugging Face models
107
- - `ten-vad` - Voice Activity Detection to prevent silent hallucinations
108
-
109
- ## 🎮 Basic Usage
110
-
111
- - Boot the app, the "tiny" model will download and start
112
- - Press `Ctrl+Win` to start recording
113
- - Speak into your microphone
114
- - Press `Ctrl` to stop recording and transcribe
115
- - The transcribed text is auto-pasted on your text cursor
116
- - Alternatively press `Alt` to stop recording, auto-paste, and also send an ENTER keypress
117
- - Right click the system tray icon to change models
118
-
119
- ### Configuration
120
- The app automatically creates a user settings file in `%APPDATA%\Roaming\whisperkey\user_settings.yaml`, where you can:
121
- - Change whisper model size (tiny/base/small/medium/large)
122
- - Hotkeys
123
- - Configure automation (auto-paste, auto-ENTER)
124
- - Voice activity detection
125
- - And much more
126
-
127
- ## 🔧 Troubleshooting
128
-
129
- - Check the log file `app.log` for detailed error messages
130
- - Delete the user settings file in `%APPDATA%/whisperkey/user_settings.yaml` and restart to reset to defaults
@@ -1,29 +0,0 @@
1
- whisper_key/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- whisper_key/audio_feedback.py,sha256=5vBtX3K_x9HJiYmgw48n-FNIeLAYlPulsnC0HTQNk58,2219
3
- whisper_key/audio_recorder.py,sha256=FJWnDOvdMlg0atH7379JcufYN-b200iXK1beje6Pt-M,11257
4
- whisper_key/clipboard_manager.py,sha256=BOxh7ZiJ8bZAwpmlxX0yTC_YYPsmCOdPV_hpcs9P_50,5626
5
- whisper_key/config.defaults.yaml,sha256=DDSywYBpIHVE6KpviB_B-Vcfqj6b0-Y5evcjUJH8_rM,7914
6
- whisper_key/config_manager.py,sha256=OebWO-gl7bTxOPZ2ibZsAcPoZLEN-XR1CeeVR6RRJVk,18396
7
- whisper_key/console_manager.py,sha256=h-y8yU2xJ0anY4KavgeSAL-DWxGFoLxWtSeEvHfN0WY,2006
8
- whisper_key/hotkey_listener.py,sha256=-ny8rvdWysc_DZP-HQivEUlMBl6QMD7P0VvmdjFFL-Y,8060
9
- whisper_key/instance_manager.py,sha256=LNMlwODf2hfw0dx6K2ADtSfuu8cYltdct_CBBreuWt8,1020
10
- whisper_key/main.py,sha256=PRoQFYKeE3UHm1SP0N97pe6f6kw6AcXM17SlvNVFkDk,8832
11
- whisper_key/model_registry.py,sha256=G8BC2jZpTD7cOEeWcfCPPNtu7MsGfyEukuIpfHe_3bk,2718
12
- whisper_key/state_manager.py,sha256=U2kfEMK52qSJ7q-ZdDOxBCWUHe_NFLBMEtPhJJsCx60,19368
13
- whisper_key/system_tray.py,sha256=KMXa24hQW7ovnphiU9OPAo5VIiz1KE3BoMvV0D2E48c,13237
14
- whisper_key/utils.py,sha256=xUs1DineJbdl70O4aW8i4tTQfurWHmbHjH8WYSPFgmI,2385
15
- whisper_key/voice_activity_detection.py,sha256=Q6wzuUrMQfwk5atOYcbhuug50EXQmSQeo3UT4gVEKs8,9588
16
- whisper_key/whisper_engine.py,sha256=Qop6fAtUHKeU346jtdBQoUnNpwoeaiDZn3BQJnUGTc0,7126
17
- whisper_key/assets/portaudio.dll,sha256=7HKPuVjxqajT424rbSKs0RnGGk9rQ92MJiaH7taboHg,951689
18
- whisper_key/assets/tray_idle.png,sha256=wl2XGtloFMOrTuYtFa74RaeePWy6H0KRiUe7a_uiCKM,1579
19
- whisper_key/assets/tray_processing.png,sha256=TS_247NBdkt3P5jZv2J1md3YbdQcQrz4LLAsyFLvk1k,174
20
- whisper_key/assets/tray_recording.png,sha256=JJX9-CiKHeImDb6w3vSRicU6uoRt1H2rNIVeo6dPgcA,1174
21
- whisper_key/assets/version.txt,sha256=VU6xe-7Uqxg_iJxeLLts5l4VfQUN_G4oX4r8Yzb3SF4,5
22
- whisper_key/assets/sounds/record_cancel.wav,sha256=KyjCjKdd1FkAUXCxHkg9Gqo3EuOdeyUvT9n1CKG54Zg,18206
23
- whisper_key/assets/sounds/record_start.wav,sha256=E704RZ433LwgdPyDN6G9csfk0V0NefBSbYZqRKwGnq4,96846
24
- whisper_key/assets/sounds/record_stop.wav,sha256=E704RZ433LwgdPyDN6G9csfk0V0NefBSbYZqRKwGnq4,96846
25
- whisper_key_local-0.5.2.dist-info/METADATA,sha256=GYSoY8urr2m9LxJogYwhaCemWC3tqhpcZ_5gE6vy-Uk,4284
26
- whisper_key_local-0.5.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
27
- whisper_key_local-0.5.2.dist-info/entry_points.txt,sha256=70ibxew9nZShJozx4Jcbuwd4Fcrr0Ji_BD7gk6azl4E,54
28
- whisper_key_local-0.5.2.dist-info/top_level.txt,sha256=gtXj51Nif3n1odPP3OvpiljIojWTpRBLCNlhzKWisxQ,12
29
- whisper_key_local-0.5.2.dist-info/RECORD,,