VocaLinux - Universal Voice Input for Linux, macOS and Windows
Greetings!

A free cross-platform utility for voice input of text directly into any Linux application. Works completely offline, supports three recognition engines, GPU acceleration and customizable hotkeys. I liked it 😌.

Preamble

VocaLinux is an open-source software (GPLv3) that allows you to dictate text into any application. There are ready-made builds for Linux 🐧, macOS or Windows. Speech recognition works completely offline, three built-in engines are available (whisper.cpp, OpenAI Whisper, VOSK), automatic GPU acceleration via Vulkan and customizable hotkeys.

I hate voice messages in messengers. So voice input is a novelty for me. But despite this, I sometimes used voice input in applications like ChatGPT or Claude.

Then I came across this software. The idea of confidential and universal voice input with AI-based recognition seemed quite interesting. I have a relatively decent external microphone (Fifine), so I decided to try it. Spoiler: I liked it. But I still don’t record voice messages, just so you know 😑.

A bit about recognition engines

Before moving on to installation, let’s briefly discuss the available recognition engines that VocaLinux offers:

Initial Setup

This article used:

SoftwareVersion
Linux Mint22.3
VocaLinux0.10.1-beta

Installing VocaLinux

The VocaLinux installation script is on GitHub. We won’t run it blindly, but will definitely check its contents via VirusTotal using the vt-cli utility, which we discussed last time:

BASH
vt scan file <(curl -Ls https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh) --wait
Click to expand and view more

If the scan shows the script is clean, download and run it in interactive mode:

BASH
curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh -o /tmp/vl.sh

bash /tmp/vl.sh --interactive
Click to expand and view more

The installer does the following (description from official site):

The launch will start with selecting the speech engine. If everything is normal, you’ll see approximately this screen:

Choosing a recognition engine

By default, whisper.cpp is offered, which is a good choice for most cases. But it makes sense to also try the original Whisper from OpenAI - it’s usually more accurate (but heavier):

GPU acceleration

The next important choice is whether to use GPU for acceleration. If you have a graphics card with Vulkan support (most modern AMD and NVIDIA cards), then definitely enable it:

With GPU, recognition works much faster.

Model download

At this stage, the installer will begin downloading the selected recognition model. The process may take some time depending on model choice and internet speed:

After the model is downloaded, confirm the installation by pressing Enter:

Next, the installer will install the remaining dependencies from the repositories and a few packages via pip:

Done, installation is complete. VocaLinux is ready to use.

First Launch and Configuration

After installation, launch the application from the main menu:

You’ll immediately be offered to configure autostart on login:

To access the program settings, find the icon in the system tray, click on it and select “Settings”:

“Speech Engine” tab

Here you can select the engine, language and model weights: “tiny”, “base”, “small”, “medium”, “large”:

Select “Small”. After selection, automatic downloading will begin:

“Recognition” tab

On this tab you can set several fine-tuning options and run a recognition test:

“Audio” tab

Here you can explicitly specify which audio device to use for voice recording:

“Hotkeys” tab

On this tab we define how recognition will be activated:

By default, “toggle” mode is enabled (turn on-off with one key) but I prefer the second option: activation by pressing, for example, the right Control (push-to-talk mode). For me this is justified because I almost never use this key.

“General” tab

On the last tab you can re-configure autostart and enable automatic copying of recognized text to the clipboard:

I’m sure the last option will be especially convenient for someone 😉.

Testing

Go to any application with a text field and test recognition. Press the hotkey and start speaking:

After you finish speaking or release the key, VocaLinux will automatically insert the recognized text into the active window. Processing happens locally on your machine, no data is sent anywhere over the network 😌.

Status indicator

Pay attention to the color of the tray icon - it’s a visual status indicator:

Afterword

Voice recognition has its advantages. If you, like me, regularly communicate by typing text, then voice input will make your brain work a bit differently: you’ll need to develop the skill of forming logically connected text on the fly 🙄. And VocaLinux will help you with that.

By the way, the project is actively being developed - the author regularly fixes bugs and adds features. If you like it - give it a star on GitHub.

Thank you for reading. Good luck exploring open-source tools! 🐧

Useful materials

Comments

Copyright Notice

Author: Ivan Chyorny

Link: https://r4ven.me/en/software/vocalinux-universalnyy-golosovoy-vvod-v-linux-macos-i-windows/

License: CC BY-NC-SA 4.0

Blog materials may be used with attribution to the author and source, for non-commercial purposes, and under the same license.

Start searching

Enter keywords to search articles

↑↓
ESC
⌘K Shortcut