DrDictaphone
Dictation app for the terminal and Neovim, using Whisper for transcription and ChatGPT for post-processing.
Installation
You can use the installation script:
curl https://raw.githubusercontent.com/olekli/DrDictaphone/main/script/install.sh | sh
Or create a virtual environment and do:
pip install drdictaphone
python -m drdictaphone.cli install ~/DrDictaphone
Place OpenAI API key in ~/DrDictaphone/config/openai_api_key.
Running
To start the standalone app, do ./drdictaphone.
To start only the server, do ./drdictaphone server.
Shutdown a running server by doing ./drdictaphone shutdown.
Neovim Plugin
If you are not already using Python plugins in Neovim,
you need to create a virtual environment for Neovim to use.
Tell Neovim about it by adding to your init.vim:
let g:python3_host_prog = '~/.neovim-venv/bin/python'
(Or wherever your venv is located.)
Inside this virtual environment, install the Neovim plugin:
pip install drdictaphone-neovim-plugin
Now you need to add the plugin to your Neovim config directory:
ln -s ~/.neovim-venv/lib/python3.11/site-packages/drdictaphone_neovim/DrDictaphone.py ~/.config/nvim/rplugin/python3/.
(Your paths may vary.)
Then start the server. Do :UpdateRemotePlugins once in Neovim, restart. Use DrDictaphoneSetProfile, DrDictaphoneToggle vim commands.
Controlling Standalone App:
s: select profilep: start / stop and transcribe recordingd: stop and discard recordingq: exit
Profiles
Profiles consist of:
topicfor transcribing and post-processing, a list of stringslanguageto use for the transcriber, a stringoutputdirectory, a stringoutput_commandto pipe output toenable_vadwhether or not to enable VAD, a bool, defaults tofalse
Output will be written to a timestamped file in the output directory.
VAD will filter recordings for parts with voice before processing them.
Post-Processor
The Post-Processor specs consist of:
instructionsfor the post-processor, either a filename to load from or a list of stringsgpt_modelto use for post-processing, either a filename to load from or an objectoptionsto use for post-processing, either a filename to load from or an objecttoolsto use for the post-processor, either a filename to load from or an object
The context for the post-processor is built from the profile and the post-processor specs. Settings in the profile take precedence over settings in the specs.
Metadata
Release files for drdictaphone_neovim 0.9.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| drdictaphone_neovim-0.9.3.tar.gz | 6.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| drdictaphone_neovim-0.9.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 14.2 kB
Release files / drdictaphone_neovim-0.9.3.tar.gz
| Download URL | drdictaphone_neovim-0.9.3.tar.gz |
|---|---|
| Size | 6.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
07e394cdf61f07b9ab81e98a2981a1b513140d8e5289cb094e3fe528654ae143
|
|
BLAKE2b-256 checksum How to use checksums |
d66a6b044a745375cb34f61c22db8e92ac4970793e6c10d4e04fff4e66cdc82e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.10.12 Linux/5.15.0-113-generic
|
Release files / drdictaphone_neovim-0.9.3-py3-none-any.whl
| Download URL | drdictaphone_neovim-0.9.3-py3-none-any.whl |
|---|---|
| Size | 7.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a6903eec0eef308ff075c09d624650d3399658f2d7a4a88974ed5c29bf8a64b7
|
|
BLAKE2b-256 checksum How to use checksums |
1a81dc78231014238a620c8e26fed7908083cea1d06b154ad31a8e5706592e0b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.10.12 Linux/5.15.0-113-generic
|