Repolode
ggml-org

ggml-org/whisper.cpp

C/C++ port of OpenAI's Whisper speech recognition model for fast, offline, dependency-free speech-to-text on CPU and GPU.

Open-source alternative to:Otter.aiGoogle Cloud Speech-to-Text

Stars
54,500
Forks
6,271
Open issues
353
Last commit
yesterday

What is it?

whisper.cpp is a plain C/C++ implementation of OpenAI's Whisper automatic speech recognition model. It runs transcription locally without Python or heavy runtime dependencies, which makes it practical to embed in desktop, mobile, and embedded applications.

The project covers many hardware backends, including Apple Silicon through Metal and Core ML, NVIDIA via CUDA, AMD via HIP/ROCm, and Vulkan, plus AVX, ARM NEON, OpenBLAS, OpenVINO, and several NPUs. Models are stored in a custom ggml format, and integer quantization is available to reduce memory and disk use. Voice activity detection can be enabled to skip silent portions before transcription.

Beyond the whisper-cli tool, the repository includes an HTTP server with an OpenAI-style API, a real-time microphone streaming example, and bindings for languages such as Rust, Go, Ruby, JavaScript, and .NET. It also builds to WebAssembly and runs on iOS, Android, and Raspberry Pi.

Key features

  • 01Runs fully offline in plain C/C++ with no required dependencies.
  • 02Accelerates inference on Metal, Core ML, CUDA, Vulkan, HIP/ROCm, and OpenVINO backends.
  • 03Supports integer quantization to shrink model size and memory use.
  • 04Includes voice activity detection to process only speech segments.
  • 05Provides an HTTP server, real-time streaming, and language bindings.

Use cases

  • Adding offline speech-to-text to a desktop or mobile app without a cloud API.
  • Transcribing audio files from the command line or in batch scripts.
  • Running a self-hosted transcription endpoint on a local GPU or CPU server.
  • Building a voice command or assistant on an embedded device such as a Raspberry Pi.

Quick start

  1. 1

    Clone the repository

    git clone https://github.com/ggml-org/whisper.cpp.git
  2. 2

    Enter the project directory

    cd whisper.cpp
  3. 3

    Download a base.en model

    sh ./models/download-ggml-model.sh base.en
  4. 4

    Build whisper-cli and transcribe a sample file

    cmake -B build && cmake --build build -j --config Release && ./build/bin/whisper-cli -f samples/jfk.wav

Things to know

  • The whisper-cli example only accepts 16-bit WAV files, so other formats must be converted first, for example with ffmpeg.
  • Some accelerated paths such as Core ML, OpenVINO and the AMD NPU require extra setup and specific hardware.

Topics

FAQ

What is whisper.cpp?
C/C++ port of OpenAI's Whisper speech recognition model for fast, offline, dependency-free speech-to-text on CPU and GPU. whisper.cpp is a plain C/C++ implementation of OpenAI's Whisper automatic speech recognition model. It runs transcription locally without Python or heavy runtime dependencies, which makes it practical to embed in desktop, mobile, and embedded applications.
Is whisper.cpp free to use? What license does it have?
whisper.cpp is open source under the MIT license. Check the license terms before using it in commercial products.
Is whisper.cpp still maintained?
Actively maintained. The last commit to whisper.cpp was on Oct 19, 2026.
What can I use whisper.cpp for?
Adding offline speech-to-text to a desktop or mobile app without a cloud API. Transcribing audio files from the command line or in batch scripts. Running a self-hosted transcription endpoint on a local GPU or CPU server. Building a voice command or assistant on an embedded device such as a Raspberry Pi.
How do I install whisper.cpp?
Clone the repository: git clone https://github.com/ggml-org/whisper.cpp.git Enter the project directory: cd whisper.cpp Download a base.en model: sh ./models/download-ggml-model.sh base.en Build whisper-cli and transcribe a sample file: cmake -B build && cmake --build build -j --config Release && ./build/bin/whisper-cli -f samples/jfk.wav
Where can I get whisper.cpp?
The source code and installation instructions are on GitHub: https://github.com/ggml-org/whisper.cpp

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects