explaingit

handy-computer/transcribe.cpp

Analysis updated 2026-05-18

1,516C++Audience · developerComplexity · 3/5Setup · moderate

TLDR

A C and C++ library that transcribes speech to text offline, supporting 16 model families like Whisper and Parakeet on CPU or GPU.

Mindmap

mindmap
  root((transcribe.cpp))
    What it does
      Speech to text
      Streaming and batch
      GPU accelerated
    Tech stack
      C and C plus plus
      ggml runtime
      Metal Vulkan CUDA
    Use cases
      Offline transcription tools
      Voice assistants
      Accessibility features
    Audience
      Developers
      Researchers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run offline speech-to-text on audio files without sending data to a cloud API.

USE CASE 2

Choose from many different model families to compare accuracy and speed.

USE CASE 3

Build a transcription feature into an app using the Python, TypeScript, Rust, or Swift bindings.

USE CASE 4

Convert and quantize speech models to run faster on limited hardware.

What is it built with?

C++CggmlCMakeCUDAVulkanMetal

How does it compare?

handy-computer/transcribe.cppammaarreshi/generals-mac-ios-ipadmicrosoft/intelligent-terminal
Stars1,5161,5081,349
LanguageC++C++C++
Last pushed2026-07-03
MaintenanceActive
Setup difficultymoderatehardeasy
Complexity3/55/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Needs a C++ build toolchain and CMake, plus a downloaded GGUF model file to run.

License is not stated in the README shown, so terms of use are unclear.

In plain English

transcribe.cpp is a C and C++ library for turning speech audio into text. It runs on the ggml engine, the same style of runtime used by projects like whisper.cpp, and supports GPU backends including Metal on Apple Silicon, Vulkan, and CUDA, plus a fast CPU only path when no GPU is available. The standout feature is breadth: the library supports 16 different families of speech recognition models and more than 60 variants in total, covering both streaming audio and batch processing of full recordings. Supported families include well known names like OpenAI's Whisper and NVIDIA's Parakeet and Canary, along with a range of newer or more specialized models such as Moonshine, GigaAM, Qwen3-ASR, and a medical dictation model called MedASR. Every model published by the project is checked against its original reference implementation to confirm the transcriptions match. Getting started means building the project with CMake, which automatically turns on Metal support on Apple hardware, or can be configured for Vulkan or CUDA on Linux and Windows. Pre-built model files are hosted on Hugging Face and linked from documentation for each model family, so most users can download a ready to use model rather than converting one from scratch. For those who do need to convert a model, the project includes a script that pulls from NVIDIA's NeMo checkpoints. A separate quantization tool can shrink models to smaller file sizes at a small cost to precision. Once built, transcription happens through a command line tool that takes a 16kHz mono WAV audio file and a chosen model file as input. Other audio formats need to be converted first using a tool like ffmpeg. For developers who want to use the library from another programming language, official bindings are provided for Python, TypeScript and JavaScript, Rust, and Swift or Objective-C. This project fits developers building applications that need offline or self-hosted speech-to-text, such as transcription tools, voice assistants, or accessibility features, where running many different model options through one consistent interface is valuable.

Copy-paste prompts

Prompt 1
Help me build transcribe.cpp with Vulkan support on Linux.
Prompt 2
Show me how to transcribe a WAV file using transcribe.cpp with a Whisper model.
Prompt 3
Explain how to use the Python bindings for transcribe.cpp in my app.
Prompt 4
Help me convert an audio file to the 16kHz mono WAV format transcribe.cpp needs.
Prompt 5
Show me how to quantize a transcribe.cpp model to make it smaller.

Frequently asked questions

What is transcribe.cpp?

A C and C++ library that transcribes speech to text offline, supporting 16 model families like Whisper and Parakeet on CPU or GPU.

What language is transcribe.cpp written in?

Mainly C++. The stack also includes C++, C, ggml.

What license does transcribe.cpp use?

License is not stated in the README shown, so terms of use are unclear.

How hard is transcribe.cpp to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is transcribe.cpp for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.