zackees/transcribe-anything

Multi-backend whisper app. Blazing fast. Mac-arm optimized. Easy install. Input a local file or url and this service will transcribe it using Whisper AI. Completely private and Free 🤯🤯🤯

What it solves

transcribe-anything is a unified command-line interface (CLI) and Python API that simplifies the installation and use of various OpenAI Whisper variants. It eliminates the "dependency hell" typically associated with setting up different transcription backends by running each in its own isolated environment, allowing users to transcribe local files or URLs (YouTube, Rumble) into text and subtitle files without complex manual configuration.

How it works

The tool acts as a router that directs audio/video input through a normalization process (using yt-dlp and ffmpeg) and then to a selected backend based on the --device flag. Each backend is managed in an isolated virtual environment created on first use. Supported backends include:

  • openai-whisper: The reference implementation for CPU/CUDA.
  • insanely-fast-whisper: A high-performance CUDA backend utilizing batched Hugging Face pipelines and optional FlashAttention2 (--device insane-flash).
  • WhisperX: Provides VAD chunking, wav2vec2 forced alignment for precise timestamps, and speaker diarization.
  • SenseVoice: A non-autoregressive, multilingual model optimized for CJK languages and speed.
  • lightning-whisper-mlx: Optimized for Apple Silicon (Metal GPU).
  • Intel Arc GPU: Support for XPU backends on Windows and Linux.

Who it’s for

Content creators, developers, and researchers who need high-quality, private, local transcription and translation services across different hardware platforms (NVIDIA GPUs, Apple Silicon, Intel Arc, or CPU) without managing multiple Python environments.

Highlights

  • Isolated Environments: Automatically manages separate venvs for each backend to prevent dependency conflicts.
  • Multi-Backend Support: Integrates multiple state-of-the-art transcription engines in one tool.
  • Speaker Diarization: Generates a unique speaker.json file that partitions conversations by speaker.
  • Phoneme-Precise Timestamps: Offers word-level alignment via the --align flag for the fast path.
  • Broad Input Support: Handles local files and remote URLs (YouTube/Rumble) natively.
  • Cross-Platform: Native support for Windows, Linux, and macOS.

Related

  • Project
  • Project
  • Project
  • Project