absadiki/pywhispercpp
Python bindings for whisper.cpp
What it solves
It provides a simple, Pythonic API for whisper.cpp, allowing developers to integrate high-performance speech-to-text transcription into Python applications without needing to interact with the underlying C++ implementation directly.
How it works
The project acts as Python bindings for the whisper.cpp engine. It allows users to load models (which are downloaded automatically or provided locally) and transcribe audio files (such as .wav or .mp3 via ffmpeg) into text segments. It supports various hardware acceleration backends including NVIDIA CUDA, CoreML, Vulkan, OpenBLAS, and OpenVINO.
Who it’s for
- Python Developers: Those who want the efficiency of
whisper.cpp with the ease of use of Python.
- AI Assistant Builders: Developers creating voice-activated tools using the project's built-in assistant example and Voice Activity Detection (VAD).
- End Users: People who want a simple CLI or GUI tool for transcribing audio files.
Highlights
- Multi-Backend Support: Compatible with CUDA, CoreML, Vulkan, OpenBLAS, and OpenVINO for optimized performance.
- Pythonic API: Simple
Model class for transcription with support for custom callbacks for real-time processing.
- Comprehensive Tooling: Includes a Command Line Interface (CLI), a PyQt5-based Graphical User Interface (GUI), and a voice assistant example.
- Direct C-API Access: Advanced users can access the exposed C-APIs via the
_pywhispercpp module.
Related
- Project
openai/whisperWhisper is OpenAI’s open‑source, transformer‑based speech‑to‑text system that handles transcription, language identification, and translation across many languages. It ships as a pip‑installable package with six model sizes (tiny → large, plus a fast “turbo” variant). The CLI (`whisper …`) and a simple Python API (`whisper.load_model(...).transcribe(...)`) let you turn audio files into text with just a few commands. The project runs on Python 3.8‑3.11, PyTorch, and requires ffmpeg (and optionally Rust for the tokenizer). All code and model weights are MIT‑licensed.
- Project
sandrohanea/whisper.netDotnet bindings for OpenAI Whisper via whisper.cpp, enabling local speech-to-text and translation in .NET applications with extensive hardware acceleration support.
- Project
Uberi/speech_recognitionA Python library that provides a unified interface for speech recognition, supporting multiple online and offline engines like OpenAI Whisper, Google Speech, and Vosk.
- Project
innovatorved/whisper.apiA self-hosted, high-performance speech-to-text API powered by whisper.cpp that is Deepgram-compatible for easy integration.
- Project
collabora/WhisperLiveWhisperLive is an open‑source, near‑real‑time transcription server built around OpenAI’s Whisper model. It supports multiple inference back‑ends (faster‑whisper, NVIDIA TensorRT, Intel OpenVINO, AMD ROCm), offers word‑level timestamps, hot‑word boosting, speaker diarization and optional translation, and provides both simple command‑line clients and a Python streaming API. Docker images are provided for GPU and CPU deployments, and browser/iOS extensions let you transcribe audio directly from a web page or mobile device.