ctranslate2-faster-whisper-transcriber icon indicating copy to clipboard operation
ctranslate2-faster-whisper-transcriber copied to clipboard

Record audio and save a transcription to your system's clipboard with ctranslate2 and faster-whisper.

Record and Transcribe Audio Using Ctranslate2!

Record audio and save a transcription to your system's clipboard with ctranslate2 and faster-whisper.

Prerequisites

  1. Python 3.10 or 3.11.
  2. Git
  3. git-lfs

Obtain Repository

Download the latest release and unzip the files to your chosen directory.

Setup

Navigate to the folder containing ct2_main.py, open a command prompt, and create a virtual environment:

python -m venv .
.\Scripts\activate

‼️On Linux and MacOS run: source bin/activate

python -m pip3 install --upgrade pip

Install Platform-Specific Libraries

  • Linux
sudo apt-get install python3-dev
sudo apt-get install portaudio19-dev
  • MacOS
brew install portaudio

Install Dependencies

pip3 install -r requirements.txt

Install Faster-Whisper

pip3 install faster-whisper==0.10.1

Nvidia GPU support

Only systems with GPU acceleration need to follow this step:

Go here for instructions on how to get the "cublas" and "cudnn" libraries and place them in the directory.
Alternatively, you can go here.

Usage

Within the virtual environment run this command:

python ct2_main.py

‼️ If you receive an error something similar to this qt.qpa.plugin: Could not load the Qt platform plugin "xcb" please check here for a possible solution..

EXAMPLE COMMANDS

image

The first time using the program, click "Update Settings" button to download the model. After that, you can change the model and quantization (and device) by simply changing the settings and clicking "Update Settings" again.

Click start recording, speak, then stop recording. Then just use control + v or right click "paste" the transcription into wherever you want; for example, into the chat box for your LLM!

Remember, anytime you want to restart the program, make sure to activate the virtual environment first!