PUTLABVinPUT®
VinPUT 0.6.0

Documentation

How to install, set up and use VinPUT. Windows 10 and 11, 64-bit.

Install

Requirements: Windows 10 or 11, x64. No administrator rights.

  1. Get the setup program with the Download button on the home page. It is one file, VinputSetup-<version>.exe.
  2. Start it. The setup program is not code-signed yet, so Windows shows Windows protected your PC. Click More info, then Run anyway.
  3. The VinPUT setup window opens. Click Install.
  4. VinPUT starts and shows a welcome where you choose how to dictate: VinPUT Pro, a model on this PC, or your own Google key. You can also choose later under Settings, Models (see Speech providers). No model is chosen for you.

What setup does:

  • Installs for your Windows account only, to %LOCALAPPDATA%\Programs\Vinput.
  • Adds a Vinput entry to the Start menu, and a VinPUT entry under Installed apps.
  • Starts VinPUT with Windows. Switch this off with Start with Windows in the tray menu or in Settings.
  • Keeps your settings, keys and downloaded models when it installs over an older version.

Run a newer setup program to update by hand; its button then reads Update, or Reinstall for the same version. A running VinPUT is closed first.

Silent install

For scripts and package managers:

VinputSetup-<version>.exe --install --quiet

No window and no questions, also when something goes wrong: the exit code is 0 when it worked, and the reason for a failure is in the log. It installs as above and adds the Start menu entry, but does not start VinPUT on a new install; a VinPUT that was running is started again in the tray. Setup has no window of its own to wait for, so in a command prompt use start /wait to wait for it. To remove VinPUT silently, see Uninstall.

Dictation and keys

VinPUT sits in the system tray. It types what you say into the text field that has focus.

Keys

Set the keys in Settings, General, Hotkeys. Click a field and press the key or combination you want. Esc leaves the field as it was. Backspace or Delete empties it.

FieldDoesDefault
DictateTypes what you say.F1
Dictate, then press EnterTypes, then presses Enter. For chat boxes and prompts.F2
Dictate, then search the webOpens what you say as a web search.Not set
Record a voice memoRecords a voice memo.Not set
  • The dictate key cannot be empty. Empty the others to switch them off.
  • A key that types text (a letter, digit, Space, Enter) needs Ctrl, Alt or Win with it, or you could no longer type it. Function keys and the like may stand alone.
  • A key that another VinPUT action already uses is refused. Pick another.
  • Combinations Windows keeps for itself, such as Alt+Tab, Alt+F4 and Win+L, are not accepted.
  • F3 and F4 are not VinPUT keys. They belong to the bridges, see Connecting other apps.

Tap or hold

  • Tap your dictate key to start. Tap it again to stop.
  • Hold it while you talk. Release it to stop. A press shorter than 0.35 seconds is a tap.
  • Enter ends a dictation that types where the caret is, started with the dictate key or the key that dictates and then presses Enter. It stops the recording, as the dictate key does. VinPUT keeps the key from the program until the last words are typed, then presses Enter once after them. Enter does nothing special in a web search or a voice memo. While no dictation listens, Enter is yours as always.
  • Escape cancels. A dictation, search or memo that is running, or that has stopped and is still being recognized, is dropped: nothing more is typed, opened or saved. Words VinPUT Pro already typed as you spoke stay on the screen. Escape is VinPUT's only for that long; otherwise it works as in any program.

While VinPUT listens:

  • a short click plays when it starts listening and a lower one when it stops (Play a sound when listening starts and Play a sound when listening stops, under General, both on by default);
  • a small capsule of sound bars shows under the text cursor, or at the bottom of the window for apps that do not show where their cursor is;
  • the tray icon gets a red dot.

The search key and the memo key show a larger capsule at the bottom of the screen, since nothing is typed.

VinPUT Pro can type word by word, about half a second behind you, see Words as you say them. The two Google models and the Whisper models type at each pause. Parakeet and Qwen3-ASR type when you stop. See Speech providers.

Audio input

VinPUT listens with the microphone Windows uses by default. To use another, pick it in Settings, General, Input, Audio input, or under Microphone in the tray menu. The list shows the microphones connected when it opens. The choice applies to the next dictation, with no restart. If the chosen microphone is unplugged, Settings says so and VinPUT uses the Windows default until it is back.

Languages

Under General, Languages takes language codes separated by commas, for example en-US, sl-SI. Default: en-US. Whisper and Qwen3-ASR use the language when exactly one is set. With several, Whisper detects it and keeps to the ones you set. Parakeet always detects the language itself. VinPUT Pro follows every language you list, also within one sentence, see Languages under VinPUT Pro.

Stop after silence

A dictation left running stops by itself when nothing has been said for 30 minutes, so a forgotten one does not go on listening. What was said before is typed, and the key starts the next one. To change the time, pick 1, 5, 15 or 30 minutes or 1 hour in Settings, General, Behavior, Stop after silence. A key that is held down is never cut off. A dictation that ends this way only types its text: the key that presses Enter does not press it, and the search key types what was said instead of opening a search.

Limits

  • VinPUT takes its keys exclusively while it runs. The focused app no longer sees them. If another program already holds a key, a Hotkey unavailable notification says so; pick another key.
  • Dictation works while Settings is open. Only while a hotkey field is waiting for a key do the keys do nothing.
  • Windows blocks typing into elevated (administrator) windows.
  • A session that fails says why in a tray notification and in the log.

Tray menu

Click the tray icon to open Settings. Right-click it for the menu:

ItemDoes
StatusThe top line: Ready with the dictate key, Listening…, or a reminder to choose a model.
Settings…Opens Settings. Same as a click on the icon.
ModelSwitches between the models downloaded to this PC, including ones you added, at once. Use graphics card appears when the PC has one. Download models… opens the Models page.
MicrophonePicks the audio input.
Voice memosOpens the memo folder.
Start with WindowsStarts VinPUT at sign-in. On by default.
Check for updates…Looks for a newer version now. Reads Update to version … when one is known.
QuitCloses VinPUT until you start it again.

Hover the icon to see the keys and the model in use. Clicking a notification opens the Settings page it is about.

Settings

Open it with a click on the tray icon, or by starting VinPUT from the Start menu while it runs. It follows the Windows light or dark theme. Changes apply as you make them; there is no Save button. Closing the window leaves VinPUT running in the tray.

The list on the left switches pages. At its foot, VinPUT says whether it is Ready, Listening or has No speech model yet, names the model in use and where it runs: online, on the processor or on a graphics card. When a model on this PC is carrying on for VinPUT Pro, it says Hours used up, using or Out of reach, using and the model's name.

PageHolds
GeneralHotkeys; Input: audio input and languages; Behavior: start with Windows, the sounds when listening starts and stops, stop after silence, type words as you say them.
ModelsThe Online models, with the setup of your own Google service, and the ones On this PC, with download, use and remove; Add a model; the graphics card switch; disk space.
CleanupAfter dictation: the cleanup for each key that types; Edit by voice: the edit key; the text model.
VinPUT ProSign-in, the plans, your subscription, what you used this month, sign-out.
WordsThe dictionary, the snippets and the switch for format by voice.
AdvancedLocal API; Voice memos; Web search.
AboutThe version, updates, and links to the website, this documentation and the release notes.

Settings are kept in %APPDATA%\Vinput\settings.ini, see Files.

Words

Settings, Words holds what you tell VinPUT about the way you write. It applies to the text of every dictation, whichever model recognized it.

Dictionary

Names and terms you use. VinPUT writes each one the way you entered it, whatever capitals the model chose, and passes the list to models that accept one, so that they hear the words more readily.

  1. Type the word or name under Add a word.
  2. If it still comes out wrong, fill in Sounds like with what VinPUT types instead, for example vin put for VinPUT. Give several ways apart with commas.
  3. Click Add, or press Enter in either field.

To change a word, add it again. The bin icon removes it. The dictionary holds up to 200 words, each up to 60 characters.

Snippets

A snippet is a short phrase that stands for a longer text. Under Add a snippet, fill in What you say, for example my email, and What VinPUT types, then click Add. Wherever you say the phrase in a dictation, VinPUT types the saved text instead. A dictation that is only a snippet is typed without the full stop that models put at the end of a sentence.

To change a snippet, add it again with the same phrase. The bin icon removes it. There can be 100 snippets, each up to 1000 characters; the phrase needs a letter or a digit in it.

Format by voice

On by default; Format by voice switches it off. A command counts only at the start of a dictation or after a pause, the way you would start a sentence, so I like snake case names is typed as said.

SayTypes
new lineA line break. Say it on its own, then pause.
new paragraphA blank line between two paragraphs. Say it on its own, then pause.
snake case and then wordsThe words joined by underscores: user_id.
camel case and then wordsuserId
kebab case and then wordsuser-id
all caps and then wordsUSER ID

A casing command writes the words that follow it, up to your next pause. A dictation that is only a name in snake, camel or kebab case is typed without the final full stop.

Cleanup and editing by voice

Settings, Cleanup. Under After dictation, choose for each key that types what happens to a dictation before it is typed: As said, Clean (filler words, false starts and repeats out, punctuation fixed), Coding prompt or Email. Under Edit by voice, set a key; then select text, hold the key and say what to change, and the result takes the place of the selection. If a dictation cannot be tidied it is typed as said, and a selection that cannot be edited is left as it was.

The rewriting is done by the text model chosen under Model:

  • VinPUT Plus and Pro: online, answers in under a second on any PC. Needs a subscription and does not count against your monthly hours. The text is sent to VinPUT's service in the EU and rewritten there by its cloud provider's language model in the EU. Nothing of it is stored or logged.
  • On this PC (Gemma 4, Qwen3.5): download one on the same page. The text never leaves your PC; a graphics card makes it quicker.

With As said on every key and no edit key set, which is how VinPUT starts, no text is rewritten or sent anywhere. See the privacy policy.

Speech providers

Pick the model in Settings, Models: click Use beside it. The model in use carries an In use badge and is named at the bottom left of Settings and in the tray tooltip. Until a model is chosen, a hotkey opens Settings, or the welcome on a new install. A voice memo needs no model.

ModelRunsText arrivesNeeds
VinPUT ProOnlineAs you speakA subscription. More than 60 languages.
Google Cloud Speech (Chirp 3)OnlineAs you speakA Google Cloud project of your own
Google Gemini 3.5 TranscribeOnlineAs you speakA Gemini API key of your own
Qwen3-ASR 1.7BOn this PCWhen you stop2.5 GB download. 30 languages, not Slovenian. Accurate, and quick without a graphics card.
Qwen3-ASR 0.6BOn this PCWhen you stop1.0 GB download. 30 languages, not Slovenian. Fast on any processor.
NVIDIA Parakeet TDT v3On this PCWhen you stop669 MB download. 25 European languages.
Whisper large-v3 turboOn this PCAt each pause1.6 GB download. 99 languages, best accuracy.
Whisper large-v3 turbo (compact)On this PCAt each pause574 MB download. Close to full accuracy.
Whisper baseOn this PCAt each pause148 MB download. Fast on any processor, lower accuracy.

Sizes are the model files, counted in millions of bytes; Settings shows them the way Windows does, a few percent lower. A model that is not downloaded yet shows its size plus the engine, if the engine is missing. See Local models.

There are three ways to dictate:

  • VinPUT Pro runs at VinPUT's own service. You sign in and subscribe; there is nothing to download and no key to get. See VinPUT Pro.
  • A local model runs on this PC, with no account and no connection.
  • The two Google models run at Google with a key or a project of your own, and you pay Google for what you use under its terms. See Your own Google service.

Local model, no account

  1. Open Settings, Models.
  2. Under On this PC click Download beside a model and wait until its row says Downloaded.
  3. Click Use.

Nothing you say leaves the PC. See Local models.

Your own Google service

The two Google models run with a key or a project of your own; VinPUT comes with neither. A guided setup of four steps takes what Google needs and checks it with Google before anything is kept.

  1. Open Settings, Models.
  2. Under Online click Set up beside Google Gemini 3.5 Transcribe or Google Cloud Speech (Chirp 3). The setup opens at step 2 for that service.

Each page says Step … of 4. The arrow beside the title goes one step back, and from the first and the last step back to Models. The button at the bottom goes on: Next, Finish, Done.

Step 1, Use your own Google service, is the choice between the two. Go back to it to take the other one:

ChoiceIs
Gemini API key, marked RecommendedA key from Google AI Studio, made in a minute with any Google account. Free to try within Google's limits.
Google Cloud Speech-to-TextFor people who already use Google Cloud. Needs a project with billing. Text arrives a sentence at a time.

Either way your speech goes to Google under your own key, and the cost is on your Google bill.

The steps for a Gemini API key:

StepDo
2, Get a Gemini API keyOpen Google AI Studio opens its page in your browser. Sign in, choose Create API key (if it asks for a project, let it make one) and copy the key.
3, Paste your keyPaste the key into the field, or click Paste. The field never shows it.
4, Ready to dictateThe model is your speech model from now on. Hold your dictate key and speak to try it.

The steps for Google Cloud Speech-to-Text:

StepDo
2, Prepare your Google Cloud projectOpen the Cloud console opens the Speech-to-Text API page: switch the API on for your project. See that the project has billing. Have a way to sign in: run gcloud auth application-default login on this PC, which needs the Google Cloud CLI, or download a service account key with the role Cloud Speech Client as JSON.
3, Connect your projectProject ID: the ID of the project Google bills, not its name or number. Region: where Google handles your speech, European Union (eu) unless you pick another. Credentials: the Google sign-in on this PC made with gcloud, or Choose a key file for a service account key.
4, Ready to dictateThe model is your speech model from now on. Hold your dictate key and speak to try it.

In step 3 VinPUT asks Google about what you entered as you enter it, and says the answer under the fields. Finish can be clicked once Google accepts it; only then is anything kept and the model put in use.

Check resultMeans, and what to do
Checking with GoogleThe answer is on its way.
Google accepts this key, or Google accepts the project and its credentialsIt works. Click Finish.
Google does not know this keyThe key is mistyped or cut short. Copy all of it again in Google AI Studio and paste it.
Google refused the credentialsGoogle Cloud: sign in again with gcloud, or choose a new key file.
The key is real, but it may not use the Gemini APIMake a new key in Google AI Studio, or lift the restriction on this one.
The account may not use Speech-to-Text in this projectSwitch the Speech-to-Text API on for the project, and give the account the role Cloud Speech Client.
Google wants billing set up for this key, or This project has no billingSet billing up in Google AI Studio, or link a billing account to the project in the Google Cloud console. Then Check again.
Google accepts this, but the allowance is used up for nowGoogle's own limit for your key or project. Try again in a while, or raise the limit at Google.
Google does not know this project in this regionCheck the project ID and the region.
There is no Google sign-in on this PCRun gcloud auth application-default login, or choose a key file.
That file is not a service account keyIn the Google Cloud console, open the service account, add a key and download it as JSON.
Google could not be reachedCheck your internet connection; for Google Cloud, also try another region. Then Check again.
Google did not give a clear answerWhat Google said follows the message. Check again.

Where it is kept:

  • The Gemini API key is kept in Windows Credential Manager, encrypted for your Windows account, as Vinput/gemini-api-key. It never goes into the settings file or the log, and is only sent to Google.
  • Of a service account key file VinPUT keeps what it needs to sign in, also in Credential Manager, as Vinput/google-cloud-key. The file itself can be moved or deleted afterwards. A sign-in made with gcloud stays where gcloud keeps it.
  • The project ID and the region are in the settings file.

To change or remove it later, click Change beside the model on the Models page. The setup opens at step 3 with what is set, and checks it again.

  • Gemini: the row reads Stored in Windows Credential Manager. Replace takes a new key; the stored one stays until you finish with a new one that works. Remove deletes the key at once.
  • Google Cloud: change the project ID or the region, choose another key file, or click Use the Google sign-in on this PC instead to drop the key file. Click Finish to keep the change.
  • Without VinPUT: delete the entries under Windows Credentials in Credential Manager.

VinPUT Pro and Plus

VinPUT Pro and VinPUT Plus are subscriptions. They recognize your speech at VinPUT's own service, so there is no model to download and no key or project to get.

  • Text appears while you speak.
  • More than 60 languages, also mixed in one sentence.
  • Nothing to download, no graphics card needed.

A subscription needs an internet connection while you dictate.

Pro and Plus

The two use the same recognition, at the same speed and in the same languages. They differ in the hours of dictation a month and in the price.

SubscriptionHours a monthMonthlyYearly
VinPUT Plus8 hours€2.50 a month€24 a year
VinPUT Pro25 hours€5 a month€49 a year

A new subscriber's first month on a monthly plan costs €1.49 for Plus or €3.49 for Pro. This introductory price applies once. From the second month the regular price in the table applies. Yearly plans have no introductory price.

  • When the month's hours are used up, VinPUT carries on with a model on the PC if one is installed, so typing does not stop. See Monthly allowance.
  • You can switch between Plus and Pro at any time, see Manage.
  • The rest of this section applies to both. Where it says VinPUT Pro, it means the subscription you have.

Start

  1. Open Settings, VinPUT Pro, and click Sign in with Google. Your browser opens.
  2. Sign in with your Google account in the browser. There is no code to type: the browser hands the sign-in back to VinPUT on this PC, the page says You are signed in, and Settings comes to the front. While you are in the browser, VinPUT reads Finish in your browser; Cancel calls the sign-in off.
  3. If VinPUT cannot listen for the browser on this PC, the page asks for a code instead. VinPUT shows it under Finish in your browser: type it on the page, or copy it with the button beside it.
  4. Back in VinPUT, pick Plus or Pro under Subscribe, monthly or yearly.
  5. The payment provider's page opens in your browser. Pay by card there. VinPUT reads Finish paying in your browser meanwhile and updates by itself when the payment arrives. Nothing is charged if you close the payment page.
  6. VinPUT says Thank you. VinPUT Pro is active, and dictation uses it from now on. Pro is now your speech model; you do not have to choose it on the Models page.

You can also sign in, subscribe and pay on the account page of this website. Then sign in under Settings, VinPUT Pro on each PC you dictate on, and click Use VinPUT Pro there or Use beside VinPUT Pro on the Models page.

Manage

Once you subscribe, the VinPUT Pro page shows:

RowShows
The plan, for example VinPUT Pro · Monthly or VinPUT Plus · YearlyThe day it renews, or the day it ends if you cancelled. Manage subscription beside it. An account with a complimentary subscription has no such button.
This monthHow much of the month's allowance you used, for example 12 h 30 min of 25 hours.
Speech modelWhether dictation uses VinPUT Pro. Use VinPUT Pro selects it when another model is in use.
AccountThe e-mail address you signed in with, and Sign out.
  • Manage subscription opens the payment provider's page in your browser. There you change the card, get invoices, switch between monthly and yearly, and cancel.
  • To switch between Plus and Pro, open Manage subscription and change the plan on the payment provider's page. A change from Plus to Pro, or from monthly to yearly, starts at once, and the price is adjusted for the time already paid. A change from Pro to Plus, or from yearly to monthly, takes effect at the end of the period you paid for. The hours a month follow the subscription you are on.
  • Cancelling keeps VinPUT Pro until the end of the time you paid for. The row then reads Ends on … and is not renewed, and the button reads Keep subscription, which opens the same page to take the cancellation back.
  • After it has ended, the page says when and offers the plans again.
  • Sign out signs this PC out. The subscription goes on; sign in again to use it.

The account page of this website does the same without the app: subscribe, open the payment provider's page, and see what you used. It also lists the devices the account is signed in on and signs any of them out, and it deletes the account. A subscription that would renew has to be cancelled before the account can be deleted. Deleting needs a sign-in from the last 10 minutes and the e-mail address of the account typed out, and it ends a cancelled subscription that was still running, so the time left on it is lost. Deleting removes the account, its sign-ins and its usage figures; invoices for payments you made stay with the payment provider.

Monthly allowance

  • VinPUT Pro covers 25 hours of dictation a calendar month and VinPUT Plus covers 8 hours, counted in seconds of audio. This month on the VinPUT Pro page shows where you stand.
  • The count starts from zero on the first of each month (at midnight UTC), whatever day you subscribed on. Hours you did not use are not carried over.
  • When the hours are used up, VinPUT carries on with a local model on the PC if one is installed, so typing does not stop. It never picks a model that knows none of the languages you set under General, and takes one that knows all of them before one that knows some. The VinPUT Pro page and the account page say that the month's hours are used up.
  • VinPUT Pro also carries on with a model on the PC when it cannot be reached: the connection is bad or gone, or the service is failing. A dictation that Pro cannot start, or that breaks off, is finished by the model on the PC, and the next key presses use that model for a short rest, 15 seconds after the first failure and longer after each one in a row, up to 2 minutes. The first press after the rest tries Pro again, and the first dictation Pro serves to its end ends the rest. The model is the one you used last on this PC, if it is still there. Nothing is downloaded for this.
  • If no model is installed on the PC, VinPUT says so and you choose a model: Choose a model opens the Models page. A local model needs no account.
  • On the first of the next month the hours start again and the subscription works again by itself. If you chose another model yourself in the meantime, select Pro again with Use VinPUT Pro.
  • On Plus, more hours are available by switching to Pro, see Manage.

Languages

List every language you speak under Settings, General, Languages, as codes separated by commas, for example en-US, sl-SI. VinPUT Pro then follows you when you switch, also in the middle of a sentence. A language you did not list may be recognized less well.

Words as you say them

With VinPUT Pro, a word is typed about half a second after you say it, while you are still speaking. The recognizer hears a sentence better as it goes on, so now and then it changes its mind about the last words: VinPUT then corrects them in place, by pressing Backspace over the end that changed and typing it again. It only ever takes back what it typed in this dictation as a word that was not settled yet.

  • If you click somewhere else or move the caret while you speak, what is on the screen is left as it is, and the text goes on from there.
  • Emoji, and scripts in which Backspace may delete more or less than one character, are typed once they are settled. So is everything in a cell of Excel.
  • A dictated search, and text another program asked for through the local API, are made of settled text alone.
  • A field that completes what you type by itself, such as the address bar of a browser, can be left with a stray character after a correction.

To have text typed only once it is settled, a second or two after it is said, switch off Settings, General, Behavior, Type words as you say them. Models on this PC and your own Google service type settled text.

Privacy

While you dictate with VinPUT Pro, your audio is sent over an encrypted connection to VinPUT's service, and from there to its speech provider, which recognizes it. Cloud speech is processed on servers in the EU. VinPUT's service stores the e-mail address of your account, the state of your subscription, the devices signed in and the number of seconds you used. It does not store audio or text. With Cleanup or editing by voice on, the text to rewrite is also sent to VinPUT's service and its cloud provider in the EU, and is not stored or logged either. You pay on the payment provider's page, which keeps the card details and the invoices. With a local model nothing you say leaves the PC. See the privacy policy.

The sign-in of this PC is kept in Windows Credential Manager as Vinput/vinput-pro-session, never in the settings file or the log.

When Pro cannot be used

When VinPUT Pro is your speech model and cannot be used, the General page says Dictation with VinPUT Pro does not work right now with the reason, and the VinPUT Pro row on the Models page gives a short state such as Needs attention or Subscription ended. A dictation key pressed meanwhile opens the VinPUT Pro page or says VinPUT cannot dictate yet with what to do. Open VinPUT Pro leads to the page where it is put right. When the month's hours are used up and a model on this PC carries on, the General page shows the same message about the hours.

VinPUT saysDo
You are signed out, or This PC was signed out of VinPUT ProSign in again under Settings, VinPUT Pro. A PC is signed out when you sign it out on the account page, or when the account is deleted.
You have no subscription yetPick a plan on the VinPUT Pro page, or choose another model.
Your subscription has endedSubscribe again on the VinPUT Pro page, or choose another model.
The last payment did not go through. VinPUT Pro keeps working until …Pro still works until the day named, while the payment is tried again. Click Update payment method and change the card, or try the same one again.
The payment did not go through, so VinPUT Pro is not activeClick Update payment method. Pro works again once the payment is settled.
This month's allowance is used upVinPUT carries on with a model on the PC if one is installed. If none is, choose a model. The hours start again on the first of the next month, see Monthly allowance.
VinPUT Pro could not be reached, or Your subscription could not be checkedYou are offline, or the service cannot be reached. Check your internet connection and click Try again. If a model on the PC is installed, it carries on meanwhile, see Monthly allowance. Without one, dictate with a local model.
VinPUT Pro is busy with other dictations of this accountThe account is dictating in several places at the same moment. Try again in a moment.

Local models

A local model is two downloads: the model file, and the engine that runs it (whisper.cpp), which the Whisper and Parakeet models share and which is fetched once. The two Qwen3-ASR models run in an engine of their own (llama.cpp), a 33 MB download that comes with the first Qwen3-ASR model you download.

Qwen3-ASR 1.7B and 0.6B know 30 languages, among them English, German, Spanish, Chinese, Japanese and Arabic. Slovenian is not one of them: they write it down as the nearest language they know. Each model is two files, counted together in the size above, and one build of their engine serves the processor and graphics cards of any make. They recognize the whole dictation when you stop.

  • Download from Settings, Models, On this PC. A row shows the size, the languages and where it stands: Downloading with progress, Downloaded, the In use badge, or the reason a download failed. Download starts it, Cancel stops it, Retry starts a failed one again, Use selects a downloaded model.
  • The engine is 8 MB, or 18 MB for the graphics card build.
  • Every file comes from a pinned address and is checked against a pinned SHA-256. A file only gets its final name after the check passed.
  • An interrupted download continues where it stopped.
  • Files are stored under %LOCALAPPDATA%\Vinput: models in models, the engine in engines.
  • A row says Does not know with the language when the model lacks one of the languages you set under General, for example Does not know Slovenian. If the model in use knows none of them, the top of the page says so: choose another model, or change the languages.
  • A row also says how the model would run on this PC: Runs well on this PC, May be slow on this PC or Too heavy for this PC. VinPUT goes by the graphics card, the memory and the processor, and by whether Run on the graphics card is ticked. Where none of the models runs well, the page says that VinPUT Pro runs online and is quick on any PC.
  • The trash icon on a row deletes a downloaded model that is not in use. Disk space shows what the downloads take; Open folder opens the folder.

Your own model

Add a model at the end of the list takes a Whisper model of your own, in ggml format (.bin), public on Hugging Face or saved on this PC. Models in GGUF, PyTorch or safetensors format need converting first.

  1. Paste a Hugging Face link into the field and click Find. The link may be a model page, a file in it, a download address, or just organization/name. Or click Browse for a file to pick a file on this PC; VinPUT keeps a copy, so the file can be moved afterwards.
  2. Click Add beside the file you want. VinPUT checks that it is a Whisper model.
  3. Back on the Models page it is listed like the others. Download it if it is not on this PC yet, then click Use. A model you added has a remove icon in any state, except while it is in use.

Added models are kept in models\custom and listed in %APPDATA%\Vinput\models.ini. They appear in the tray menu once downloaded.

The engine process

The engine is a separate program. VinPUT starts it only while a local model is selected. Whisper and Qwen3-ASR keep it loaded between dictations: it sleeps half a minute after the last one and ends after 10 minutes without a dictation, and loads again the next time you speak. Whisper types at each pause of 0.6 seconds or more while you speak; on a processor too slow to keep up, the whole dictation is recognized when you stop. Qwen3-ASR recognizes the whole dictation when you stop. Parakeet starts its program for each dictation and recognizes the whole dictation when you stop.

Graphics card

When the PC has a graphics card, Settings, Models shows Run on the graphics card with its name, ticked by default, and the tray menu offers Use graphics card. VinPUT then downloads the Vulkan build of the engine, 18 MB, which runs on NVIDIA, AMD and Intel cards. Changing the switch keeps your downloaded models: the engine for the other way arrives in the background, and the model runs on the engine that is already there until then. The bottom left of Settings shows whether the model runs on the graphics card or the processor. With several cards VinPUT uses the one with the most memory. A PC that already has the NVIDIA (CUDA) engine of an earlier version keeps using it.

  1. Set a key in Settings, General, Dictate, then search the web. It is not set by default.
  2. Tap your search key to start and again to stop, or hold it while you talk. Say what you are looking for.
  • When you stop, the search opens in your default browser. Nothing is typed, so it works from any window.
  • VinPUT searches with Google. To use another search, put its address under Advanced, Web search, Search address, with %s where the words go. Empty the field to go back to Google.
  • If nothing was recognized, nothing opens.
  • The address must start with https:// or http://. Anything else is refused with a message.
SearchAddress
Google (default)https://www.google.com/search?q=%s
Binghttps://www.bing.com/search?q=%s
DuckDuckGohttps://duckduckgo.com/?q=%s
YouTubehttps://www.youtube.com/results?search_query=%s
Wikipediahttps://en.wikipedia.org/w/index.php?search=%s

Voice memo

  1. Set a key in Settings, General, Record a voice memo. It is not set by default.
  2. Tap your memo key to start and again to stop, or hold it while you talk.
  • The memo is saved as an MP3 to Documents\Vinput memos, named like Voice memo 2026-10-05 18.42.07.mp3. Change the folder under Advanced, Voice memos, Folder: Browse picks one, Open folder shows it, Use the default folder goes back.
  • The file is put on the clipboard, so Ctrl+V pastes it into a messenger, a mail or a folder. Switch this off with Copy each memo to the clipboard.
  • A Voice memo saved notification shows the name and length. Open the folder with Voice memos in the tray menu.
  • Memos are not recognized, so they need no speech model. Recordings shorter than 0.3 seconds are dropped; a memo ends after one hour.

Updates

  • VinPUT checks for a newer version at start and every 6 hours. Switch this off with Check for updates automatically under Settings, About.
  • Check now with Check for updates on the About page, which answers in place, or with Check for updates… in the tray menu. With Settings closed, the tray item opens the update window when there is a newer version and otherwise says in a notification that you are up to date; with Settings open, the answer shows on the About page.
  • When a check by itself finds a version, a notification and the tray item Update to version … lead to the update window. It shows what is new and the download size.
  • Every release is signed by its makers. VinPUT offers and installs only an update whose signature checks out against the key built into the program; an update without a valid signature is not offered and not downloaded.
  • Install update downloads the new setup program, checks its size and SHA-256 against the signed release manifest, and lets it replace the running program. Later closes the window.
  • If the new program cannot be put in place, the old one stays installed and, if it was running, is started again. A program is replaced in one step, so there is never half of one under the name.
  • VinPUT closes and starts again by itself. It then opens Settings on About, which names the new version, with a notification that the update is in.
  • Kept: settings, stored keys, the VinPUT Pro sign-in, downloaded models and engines. They live outside the program folder.

The setup program is saved in %LOCALAPPDATA%\Vinput\updates and deleted at the next start. What changed in each version: release notes.

Uninstall

  1. Open Windows Settings, Apps, Installed apps.
  2. Find VinPUT, open its menu, click Uninstall.
  3. VinPUT asks what happens to the rest:
    • Keep settings and models: removes only the program.
    • Remove everything: also deletes settings, stored keys and downloaded models, and signs this PC out of VinPUT Pro.
    • Closing the window removes nothing.

From a command prompt:

CommandDoes
vinput.exe --uninstallSame as above, with the question.
vinput.exe --uninstall --quietRemoves the program without asking or showing anything. Keeps settings, keys, the VinPUT Pro sign-in and models.

vinput.exe is in %LOCALAPPDATA%\Programs\Vinput. Uninstalling also stops and removes the bridges and their startup entry, if they are installed beside VinPUT. Voice memos are saved under Documents by default and are not touched. Uninstalling does not cancel a VinPUT Pro subscription: cancel it with Manage subscription first, or afterwards on the account page.

Files

WhatWhere
Program%LOCALAPPDATA%\Programs\Vinput\vinput.exe
Settings%APPDATA%\Vinput\settings.ini
Models you added%APPDATA%\Vinput\models.ini, files in %LOCALAPPDATA%\Vinput\models\custom
Log%APPDATA%\Vinput\vinput.log
State file%APPDATA%\Vinput\state, the word listening or idle
Models%LOCALAPPDATA%\Vinput\models
Engines%LOCALAPPDATA%\Vinput\engines
Downloaded updates%LOCALAPPDATA%\Vinput\updates
Gemini API keyCredential Manager, Vinput/gemini-api-key
Google Cloud service account keyCredential Manager, Vinput/google-cloud-key
VinPUT Pro sign-inCredential Manager, Vinput/vinput-pro-session
Voice memosDocuments\Vinput memos, or the folder set under Advanced

settings.ini is plain text, one key = value line per setting. VinPUT writes it when you change a setting; to edit it by hand, quit VinPUT first and start it again afterwards. The file keeps values and keys it does not know across versions, in both directions.

Troubleshooting

You seeDo
A key does nothing in one app, and works in othersWindows blocks typing into elevated (administrator) windows. Use the app without administrator rights.
VinPUT cannot dictate yet, or a hotkey that opens SettingsNo model is chosen, or the chosen one is not ready. Open Settings, Models, and click Use on one. The message says what is missing.
Hotkey unavailableAnother program holds that key. Click the notification and pick another in Hotkeys.
Nothing starts while Settings is openA hotkey field is waiting for a key. Press the key you want, or Esc.
It listens, but nothing is typedCheck Audio input: the microphone you chose may be unplugged. The log says why a session failed.
Gemini refused the connectionThe key is wrong or expired. On Models, click Change beside the Gemini model, then Replace. See Your own Google service.
Google Cloud sign-in or permission errorsOn Models, click Change beside the Google Cloud model: the setup checks the project with Google and says what is wrong. See Your own Google service.
Dictation with VinPUT Pro does not work right nowThe message gives the reason. See When Pro cannot be used.
A download failed, or the engine could not be downloadedCheck the connection and click Retry on the Models page. The row gives the reason.
A local model is slowChoose a smaller model such as Whisper base, or switch on Run on the graphics card. The first dictation after a pause also loads the model.
Wrong language recognizedSet Languages to the ones you speak. With one language set, Whisper and Qwen3-ASR use only that. Parakeet always detects the language itself. If the Models page says the model does not know the language, choose one that does.
Windows protected your PC on setupThe setup program is not code-signed yet. More info, then Run anyway.
Setup or uninstall says VinPUT is still runningChoose Quit in the tray menu and run it again.

The log is %APPDATA%\Vinput\vinput.log.

Developers: local API

VinPUT only types, searches and records. Other programs build on it through a local API: they see when VinPUT listens, start and stop a session of any kind, get a dictation's text instead of having it typed, and learn where each voice memo was saved. If you switch it on, they are also sent what a dictation types into a window, as it is typed.

Connecting

  • Windows named pipe \\.\pipe\vinput. Open it for reading and writing. Up to 16 programs can connect at once.
  • One JSON object per line, UTF-8, ended by \n, both ways. A line may be at most 65,536 bytes.
  • Only programs of the same Windows user can connect. Remote connections are refused.
  • The pipe exists while VinPUT runs and Let other programs connect is ticked under Settings, Advanced, Local API. On by default. The page shows the Pipe name, with a button to copy it, and lists the Connected programs by the names they gave. If opening fails, try again later.
  • Send typed text to connected programs, on the same page, decides whether connected programs are sent what a dictation types into a window. Off by default. In the settings file it is api_transcript.
  • Ignore unknown fields, events and error codes. New things are added that way; protocol stays 1.
  • A client that leaves lines unread for 5 seconds is disconnected.

A pipe opened as a plain blocking handle cannot be written while another of your threads is blocked reading it: the write waits for the read. Take turns (write a command, then read until its result), or open the pipe for overlapped I/O, as async runtimes do.

Events (VinPUT to client)

EventSent when
helloFirst line after connecting. protocol changes only when an existing client would break; modes and commands list what this version understands; state is idle or listening, with mode while listening.
stateListening started or stopped, by key or API, for dictation or memo. On start, mode is the session's mode and id that of the command that started it.
dictationA capture session ended. text is what was said, or "" if nothing was or the dictation was cancelled with Escape. id if the start had one.
transcriptOnly while Send typed text to connected programs is on. What a dictation has typed so far; see Typed text. Since 0.5.1.
memoA voice memo was saved. path is the MP3, seconds its length, id if the start had one.
errorA command could not be carried out, or a session failed. code for programs, message for people, id of the command or session. See Errors.
{"event":"hello","app":"vinput","version":"0.6.0","protocol":1,"modes":["type","type-enter","capture","search","memo"],"commands":["hello","start","stop","toggle"],"max_line":65536,"state":"idle"}
{"event":"state","state":"listening","mode":"capture","id":"my-42"}
{"event":"dictation","text":"What is the capital of Slovenia?","id":"my-42"}
{"event":"transcript","text":"What is the capital","mode":"type","session":7,"final":false}
{"event":"transcript","text":"What is the capital of Slovenia?","mode":"type","session":7,"final":true}
{"event":"memo","path":"C:\\Users\\you\\Documents\\Vinput memos\\Voice memo 2026-10-05 18.42.07.mp3","seconds":12.4}
{"event":"error","code":"busy","message":"Vinput is listening already","id":"my-42"}

Events go to every client, except errors about a command, which go only to the client that sent it. Use an id to find your results. A client that falls more than 64 events behind misses the oldest ones but stays connected.

Typed text

The text of dictations typed into a window is sent only while Send typed text to connected programs is on under Settings, Advanced, Local API. It is off until you switch it on. While it is off, no transcript event is sent and VinPUT keeps no copy of what it types. Switching it off takes effect at once, also for a dictation that is running.

While it is on, every connected program is sent what a dictation has typed so far.

FieldMeaning
textEverything the dictation has typed since it started, so each event replaces the one before. It is the text as typed, after the dictionary, the snippets and spoken formatting, with a line break where Enter was pressed.
modeThe mode of the dictation: type or type-enter, or search for a search whose text was typed because nobody was at the PC.
sessionA whole number, the same in every event of one dictation and different in the next. It starts again at 1 when VinPUT starts.
finalfalse while the dictation goes on. true in its last event, sent once when the dictation has ended, however it ended: stopped, ended by silence, cancelled with Escape, or failed. A dictation that typed nothing ends with "text":"".
idPresent if the start or toggle that began the dictation carried one.
  • An event is sent when the text has changed, at most about 10 times a second while the dictation goes on.
  • With a model on this PC the text grows at every pause in speech. Where words are typed as you say them, the text follows them and may take some back, so a later text can be shorter than an earlier one.
  • The last words are typed after the state event has said idle, so the event with "final":true comes after it.
  • No transcript event is sent for capture and memo sessions, or for a search that opened in the browser.

To follow along, connect and read. No command is needed.

import json

with open(r"\\.\pipe\vinput", "r+b", buffering=0) as pipe:
    for line in iter(pipe.readline, b""):
        event = json.loads(line)
        if event["event"] == "transcript":
            print("final:" if event["final"] else "so far:", event["text"])

Commands (client to VinPUT)

{"command":"hello","name":"My deck","protocol":1}
{"command":"start","mode":"capture","id":"my-42"}
{"command":"stop"}
{"command":"toggle","mode":"type"}
CommandEffect
helloNames your program for the Connected programs list, up to 48 characters. protocol is the version you speak. Both optional.
startStarts a session. If one runs, nothing changes and you get a busy error.
stopStops the session. Does nothing if none runs.
toggleStops the running session, or starts one.
ModeWhat happens to what you say
type (default)Typed into the focused window, like your dictate key.
type-enterTyped, then Enter is pressed.
captureNot typed. Sent to all clients as a dictation event when the session ends.
searchNot typed. Opened as a web search in the default browser when the session ends. Clients get the state events only. Since 0.2.4; check modes.
memoNot recognized. Saved as an MP3 and announced with a memo event.
  • Every command but hello takes an optional id, a string of up to 128 characters. It comes back in the state, dictation, memo and error events of that session, and in an error about the command.
  • A command that works has no reply of its own: the state event with your id is the confirmation. One that cannot be carried out gets an error, to you alone.
  • A session started over the API runs until stop, toggle or a press of a VinPUT key. It also ends after the stop after silence time.
  • Push-to-talk: send start on key down and stop on key up.
  • While a hotkey field in Settings is waiting for a key, start and toggle get a settings_open error. stop always works.

Errors

CodeMeaning
invalid_jsonThe line is not a JSON object, or not UTF-8.
invalid_requestcommand is missing, or a field has the wrong type or size.
unknown_commandcommand names nothing VinPUT knows.
unknown_modemode names nothing VinPUT knows.
line_too_longThe line was over 65,536 bytes and was skipped.
unsupported_protocolhello asked for a newer protocol than this VinPUT speaks.
too_many_clients16 programs are connected already. The pipe closes after it.
settings_openA hotkey field in Settings is waiting for a key; sessions start once that is done.
busystart was sent while a session runs.
no_modelNo model is chosen, or the chosen one cannot be used; only memo can start. message says why.
session_failedA session started but failed. Sent to every client.

Codes, the id on errors and the mode and id on state are new in 0.2.5. Earlier versions send errors with a message only, to every client.

Example

Python, no dependencies. Toggles a captured dictation and prints its text.

import json

with open(r"\\.\pipe\vinput", "r+b", buffering=0) as pipe:
    pipe.write(b'{"command":"toggle","mode":"capture","id":"demo"}\n')
    for line in iter(pipe.readline, b""):
        event = json.loads(line)
        if event.get("id") != "demo":
            continue
        if event["event"] == "dictation":
            print(event["text"])
            break
        if event["event"] == "error":
            print("VinPUT refused:", event["message"])
            break

Run it, speak, press your dictate key to stop. Swap capture for memo and dictation for memo to record a memo and print event["path"] instead.

In Rust, vinput_core::api::Client in the source tree connects, reconnects and parses for you; it is not published as a crate. Tools that only poll can read the state file, %APPDATA%\Vinput\state.

Connecting other apps

To send dictation to another app (a chat, a mailer, a control deck), write a small companion program on this API. VinPUT itself stays the same.

  1. Register your own hotkey in the companion program.
  2. On key down send {"command":"start","mode":"capture","id":"…"}; on key up, or the second tap, send {"command":"stop"}.
  3. Wait for the dictation event with your id and deliver its text to the app, on a thread of its own so the pipe keeps being read.
  4. Reconnect when the pipe closes; VinPUT may have restarted. Start with Windows and wait for VinPUT if it is not running yet.
  5. If a delivery fails, say why and keep the text, so nothing said is lost.

The same pattern with "mode":"memo" hands your program the MP3 path, ready to attach or upload.

F3 and F4: the bridges

Earlier versions of VinPUT had two more keys built in, which sent a dictation to a chat app and to an assistant app. They are now the bridges: a small separate program on this same API, not part of VinPUT's setup program. VinPUT itself has no F3 or F4 key.

  • F3 and F4 by default. Tap one to start and tap again to stop, or hold it and release, like the keys of VinPUT.
  • The bridge collects the whole dictation, and delivers it when you stop: it brings the app to the front, types the text and presses Enter. If a delivery fails, a message says why and the text is kept in the VinPUT log.
  • It runs in the background without a window, starts with Windows and waits for VinPUT if VinPUT is not running yet. Its settings, with the keys and where each goes, are in %APPDATA%\Vinput\bridges.ini. Empty a key there to switch it off; restart the bridges after editing.
  • Uninstalling VinPUT stops the bridges and removes their startup entry.