scribe-cli 0.12.4__tar.gz → 0.13.1__tar.gz
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.
- {scribe_cli-0.12.4/scribe_cli.egg-info → scribe_cli-0.13.1}/PKG-INFO +6 -6
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/README.md +4 -4
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/pyproject.toml +4 -1
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe/_version.py +2 -2
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe/app.py +7 -6
- {scribe_cli-0.12.4 → scribe_cli-0.13.1/scribe_cli.egg-info}/PKG-INFO +6 -6
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/.github/workflows/pypi.yml +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/.gitignore +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/LICENSE +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/icon.xcf +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe/__init__.py +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe/audio.py +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe/install_desktop.py +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe/keyboard.py +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe/models.py +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe/models.toml +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe/saverecording.py +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe/testpynput.py +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe/util.py +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe_cli.egg-info/SOURCES.txt +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe_cli.egg-info/dependency_links.txt +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe_cli.egg-info/entry_points.txt +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe_cli.egg-info/requires.txt +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe_cli.egg-info/top_level.txt +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe_data/__init__.py +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe_data/share/icon.png +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe_data/share/icon_recording.png +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe_data/share/icon_writing.png +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scribe_data/templates/scribe.desktop +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/scripts/test_python_versions_install.sh +0 -0
- {scribe_cli-0.12.4 → scribe_cli-0.13.1}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: scribe-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.13.1
|
|
4
4
|
Summary: scribe is a local speech recognition tool that provides real-time transcription using vosk and whisper AI, with the goal of serving as a virtual keyboard on a computer
|
|
5
5
|
Author-email: Mahé Perrette <mahe.perrette@gmail.com>
|
|
6
6
|
License: MIT License
|
|
@@ -33,7 +33,7 @@ License: MIT License
|
|
|
33
33
|
licenses of all dependencies before using or distributing this software to
|
|
34
34
|
ensure compliance with their respective terms.
|
|
35
35
|
Project-URL: Homepage, https://github.com/perrette/scribe
|
|
36
|
-
Keywords: speech recognition,transcription,AI,
|
|
36
|
+
Keywords: speech-to-text,speech recognition,transcription,language,AI,local,API,vosk,whisper,openai,keyboard,clipboard
|
|
37
37
|
Classifier: Programming Language :: Python :: 3.9
|
|
38
38
|
Classifier: Programming Language :: Python :: 3.10
|
|
39
39
|
Classifier: Programming Language :: Python :: 3.11
|
|
@@ -171,8 +171,8 @@ You can interrupt the recording via Ctrl + C and start again or change model.
|
|
|
171
171
|
|
|
172
172
|
The default (`whisper`) is excellent at transcribing a full-length audio sequences in [many languages](https://github.com/openai/whisper?tab=readme-ov-file#available-models-and-languages). It is really impressive,
|
|
173
173
|
but it cannot do real-time, and depending on the model can have relatively long execution time, especially with the `turbo` model (at least on my laptop with CPU only). The `small` model is also excellent and runs much faster. It is selected as default in `scribe` for that reason.
|
|
174
|
-
With the `whisper` model
|
|
175
|
-
|
|
174
|
+
With the `whisper` model (`whisper` and `openaiapi` backends) the registration continues for 2 minutes until you stop the registration manually to trigger the transcription (Stop in the app, Ctrl + C in the terminal).
|
|
175
|
+
These parameters can be changed. There is also the possibility to interrupt after a silence is detected. You would do: `--silence -40 --duration-duration 2` to interrupt the registration when a silence (less than -40 db recorded) lasts for more than 2 seconds. This is experimental, and the default is an exceedingly low silence threshold of -200 db and a silence duration of 120 s to effectively disable that feature and keep full manual control.
|
|
176
176
|
|
|
177
177
|
The `vosk` backend is much faster and very good at doing real-time transcription for one language, but tended to make more mistakes in my tests and it does not do punctuation.
|
|
178
178
|
It becomes really powerful when used for longer or interactive typing session with the [keyboard](#virtual-keyboard-experimental) option, e.g. to make notes or chat with an AI.
|
|
@@ -269,8 +269,8 @@ to make it available from the quick launch menu. Any option will be passed on to
|
|
|
269
269
|
|
|
270
270
|
Consider the following two flavors:
|
|
271
271
|
```bash
|
|
272
|
-
scribe-install --clipboard ...
|
|
273
|
-
scribe-install --name "Scribe
|
|
272
|
+
scribe-install --name "Scribe Terminal" --clipboard ...
|
|
273
|
+
scribe-install --name "Scribe" --no-terminal --clipboard ...
|
|
274
274
|
```
|
|
275
275
|
The first will create an app named Scribe (the default) that simply opens a terminal and execute the command `scribe --clipboard ...`.
|
|
276
276
|
The second will create an app named Scribe App that executes in a hidden terminal: `scribe --no-prompt --app --clipboard ...`, thus leaving the tray icon as only mode of interaction.
|
|
@@ -99,8 +99,8 @@ You can interrupt the recording via Ctrl + C and start again or change model.
|
|
|
99
99
|
|
|
100
100
|
The default (`whisper`) is excellent at transcribing a full-length audio sequences in [many languages](https://github.com/openai/whisper?tab=readme-ov-file#available-models-and-languages). It is really impressive,
|
|
101
101
|
but it cannot do real-time, and depending on the model can have relatively long execution time, especially with the `turbo` model (at least on my laptop with CPU only). The `small` model is also excellent and runs much faster. It is selected as default in `scribe` for that reason.
|
|
102
|
-
With the `whisper` model
|
|
103
|
-
|
|
102
|
+
With the `whisper` model (`whisper` and `openaiapi` backends) the registration continues for 2 minutes until you stop the registration manually to trigger the transcription (Stop in the app, Ctrl + C in the terminal).
|
|
103
|
+
These parameters can be changed. There is also the possibility to interrupt after a silence is detected. You would do: `--silence -40 --duration-duration 2` to interrupt the registration when a silence (less than -40 db recorded) lasts for more than 2 seconds. This is experimental, and the default is an exceedingly low silence threshold of -200 db and a silence duration of 120 s to effectively disable that feature and keep full manual control.
|
|
104
104
|
|
|
105
105
|
The `vosk` backend is much faster and very good at doing real-time transcription for one language, but tended to make more mistakes in my tests and it does not do punctuation.
|
|
106
106
|
It becomes really powerful when used for longer or interactive typing session with the [keyboard](#virtual-keyboard-experimental) option, e.g. to make notes or chat with an AI.
|
|
@@ -197,8 +197,8 @@ to make it available from the quick launch menu. Any option will be passed on to
|
|
|
197
197
|
|
|
198
198
|
Consider the following two flavors:
|
|
199
199
|
```bash
|
|
200
|
-
scribe-install --clipboard ...
|
|
201
|
-
scribe-install --name "Scribe
|
|
200
|
+
scribe-install --name "Scribe Terminal" --clipboard ...
|
|
201
|
+
scribe-install --name "Scribe" --no-terminal --clipboard ...
|
|
202
202
|
```
|
|
203
203
|
The first will create an app named Scribe (the default) that simply opens a terminal and execute the command `scribe --clipboard ...`.
|
|
204
204
|
The second will create an app named Scribe App that executes in a hidden terminal: `scribe --no-prompt --app --clipboard ...`, thus leaving the tray icon as only mode of interaction.
|
|
@@ -202,8 +202,8 @@ def get_parser():
|
|
|
202
202
|
|
|
203
203
|
group = parser.add_argument_group("whisper options")
|
|
204
204
|
group.add_argument("--duration", default=120, type=float, help="Max duration of the whisper recording (default %(default)s s)")
|
|
205
|
-
group.add_argument("--silence", default=
|
|
206
|
-
group.add_argument("--silence-db", default=-
|
|
205
|
+
group.add_argument("--silence", default=120, type=float, help="silence duration (default %(default)s s)")
|
|
206
|
+
group.add_argument("--silence-db", default=-200, type=float, help="silence magnitude in decibel (default %(default)s db)")
|
|
207
207
|
group.add_argument("-a", "--restart-after-silence", action="store_true", help="Restart the recording after a transcription triggered by a silence")
|
|
208
208
|
group.add_argument("--download-folder-whisper", help="Folder to store Whisper models.")
|
|
209
209
|
|
|
@@ -413,9 +413,10 @@ def create_app(micro, transcriber, other_transcribers=None, transcriber_options=
|
|
|
413
413
|
menus.append(Item("Choose Model", pystrayMenu(
|
|
414
414
|
*(Item(f"{name}", callback_set_model, checked=is_checked_model) for name in other_transcribers_dict)))
|
|
415
415
|
)
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
416
|
+
if options:
|
|
417
|
+
menus.append(Item("Toggle Options", pystrayMenu(
|
|
418
|
+
*(Item(f"{name}", callback_toggle_option, checked=is_checked_option, visible=is_option_visible) for name in options)))
|
|
419
|
+
)
|
|
419
420
|
menus.append(Item('Quit', callback_quit))
|
|
420
421
|
|
|
421
422
|
# Create a menu
|
|
@@ -567,7 +568,7 @@ def main(args=None):
|
|
|
567
568
|
*[{**_filter_options(vars(o), exclude=VoskTranscriber._frozen_options), "backend": "vosk", "model": model} for model in o.vosk_models]],
|
|
568
569
|
clipboard=o.clipboard, output_file=o.output_file,
|
|
569
570
|
keyboard=o.keyboard, latency=o.latency, ascii=o.ascii,
|
|
570
|
-
transcriber_options=[
|
|
571
|
+
transcriber_options=[], **greetings)
|
|
571
572
|
print("Starting app...")
|
|
572
573
|
app.run()
|
|
573
574
|
else:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: scribe-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.13.1
|
|
4
4
|
Summary: scribe is a local speech recognition tool that provides real-time transcription using vosk and whisper AI, with the goal of serving as a virtual keyboard on a computer
|
|
5
5
|
Author-email: Mahé Perrette <mahe.perrette@gmail.com>
|
|
6
6
|
License: MIT License
|
|
@@ -33,7 +33,7 @@ License: MIT License
|
|
|
33
33
|
licenses of all dependencies before using or distributing this software to
|
|
34
34
|
ensure compliance with their respective terms.
|
|
35
35
|
Project-URL: Homepage, https://github.com/perrette/scribe
|
|
36
|
-
Keywords: speech recognition,transcription,AI,
|
|
36
|
+
Keywords: speech-to-text,speech recognition,transcription,language,AI,local,API,vosk,whisper,openai,keyboard,clipboard
|
|
37
37
|
Classifier: Programming Language :: Python :: 3.9
|
|
38
38
|
Classifier: Programming Language :: Python :: 3.10
|
|
39
39
|
Classifier: Programming Language :: Python :: 3.11
|
|
@@ -171,8 +171,8 @@ You can interrupt the recording via Ctrl + C and start again or change model.
|
|
|
171
171
|
|
|
172
172
|
The default (`whisper`) is excellent at transcribing a full-length audio sequences in [many languages](https://github.com/openai/whisper?tab=readme-ov-file#available-models-and-languages). It is really impressive,
|
|
173
173
|
but it cannot do real-time, and depending on the model can have relatively long execution time, especially with the `turbo` model (at least on my laptop with CPU only). The `small` model is also excellent and runs much faster. It is selected as default in `scribe` for that reason.
|
|
174
|
-
With the `whisper` model
|
|
175
|
-
|
|
174
|
+
With the `whisper` model (`whisper` and `openaiapi` backends) the registration continues for 2 minutes until you stop the registration manually to trigger the transcription (Stop in the app, Ctrl + C in the terminal).
|
|
175
|
+
These parameters can be changed. There is also the possibility to interrupt after a silence is detected. You would do: `--silence -40 --duration-duration 2` to interrupt the registration when a silence (less than -40 db recorded) lasts for more than 2 seconds. This is experimental, and the default is an exceedingly low silence threshold of -200 db and a silence duration of 120 s to effectively disable that feature and keep full manual control.
|
|
176
176
|
|
|
177
177
|
The `vosk` backend is much faster and very good at doing real-time transcription for one language, but tended to make more mistakes in my tests and it does not do punctuation.
|
|
178
178
|
It becomes really powerful when used for longer or interactive typing session with the [keyboard](#virtual-keyboard-experimental) option, e.g. to make notes or chat with an AI.
|
|
@@ -269,8 +269,8 @@ to make it available from the quick launch menu. Any option will be passed on to
|
|
|
269
269
|
|
|
270
270
|
Consider the following two flavors:
|
|
271
271
|
```bash
|
|
272
|
-
scribe-install --clipboard ...
|
|
273
|
-
scribe-install --name "Scribe
|
|
272
|
+
scribe-install --name "Scribe Terminal" --clipboard ...
|
|
273
|
+
scribe-install --name "Scribe" --no-terminal --clipboard ...
|
|
274
274
|
```
|
|
275
275
|
The first will create an app named Scribe (the default) that simply opens a terminal and execute the command `scribe --clipboard ...`.
|
|
276
276
|
The second will create an app named Scribe App that executes in a hidden terminal: `scribe --no-prompt --app --clipboard ...`, thus leaving the tray icon as only mode of interaction.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|