whatisgithub

What is yt-realtime-translate?

minh1997/yt-realtime-translate — explained in plain English

Analysis updated 2026-05-18

2JavaScriptAudience · developerComplexity · 4/5Setup · hard

In one sentence

A Chrome extension that captures audio from an open YouTube tab and shows a live, locally generated transcript in a side panel, using a self-hosted Whisper speech recognition server.

Mindmap

mindmap
  root((yt realtime translate))
    What it does
      Live YouTube transcription
      Side panel display
      Optional translation
    Tech stack
      Chrome extension
      React
      FastAPI
      faster-whisper
    Use cases
      Local live captions
      Privacy friendly transcription
      ASR engine prototyping
    Audience
      Browser extension developers
      Privacy conscious users

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

Get a live, on-device transcript of a YouTube video or livestream without using the microphone or a cloud API.

USE CASE 2

Add automatic translation of the finalized transcript by configuring an LLM provider in the extension's settings.

USE CASE 3

Use the project as a starting point for building a browser extension that streams tab audio to a local speech recognition server.

What is it built with?

JavaScriptReactFastAPIPythonWhisper

How does it compare?

minh1997/yt-realtime-translate3imed-jaberi/cryptography-si-isamm3imed-jaberi/koa-isomorphic-router
Stars222
LanguageJavaScriptJavaScriptJavaScript
Last pushed2021-09-252021-02-06
MaintenanceDormantDormant
Setup difficultyhardeasyeasy
Complexity4/51/52/5
Audiencedeveloperresearcherdeveloper

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

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires Node.js, a recent Chrome version, and a locally running Python FastAPI Whisper server.

No license is stated in the README, so usage rights are unclear.

So what is it?

This project is a Chrome browser extension that captures the audio playing in an open YouTube tab and transcribes what is being said in real time, showing the text in a side panel next to the video. It is described as an MVP, meaning a minimal early version of the idea rather than a finished polished product. Instead of using the microphone or a cloud speech service, the extension grabs the tab's own audio directly through Chrome's tab capture feature, so it does not need microphone permission and no audio ever leaves your computer. That audio is processed through a local speech recognition server that you run yourself on your machine, built with Python's FastAPI framework and a project called faster-whisper, which is a fast version of OpenAI's Whisper speech recognition model. The extension streams audio to this local server over a WebSocket connection, gets back partial and finalized text as people speak, and displays it live in a React-based side panel rather than as subtitles overlaid on the YouTube video itself. If an AI translation service is configured in the extension's settings, the finalized transcript lines can also be translated shortly after they appear. To use it, you need Node.js, a recent version of Chrome, and Python 3.9 or newer for the local Whisper server. You build the extension with npm, load it into Chrome as an unpacked extension from the generated output folder, then start the local Whisper server separately before opening a YouTube tab and clicking the extension icon. If the local server is not running, the panel simply reports that it is disconnected while audio playback continues normally either way. The project is structured so the underlying speech recognition engine can be swapped out, with an older experimental implementation based on a different toolkit called Vosk still present in the code but not currently used. The README does not state a license for the project.

Copy-paste prompts

Prompt 1
Walk me through building this extension and running the local Whisper API server so YouTube transcription works.
Prompt 2
Explain how chrome.tabCapture and the AudioWorklet pipeline get YouTube audio into this extension without microphone access.
Prompt 3
How would I swap the Whisper-based speech engine in this project for a different ASR backend?
Prompt 4
Show me how the WebSocket message flow works between the extension and the local FastAPI Whisper server.

Frequently asked questions

What is yt-realtime-translate?

A Chrome extension that captures audio from an open YouTube tab and shows a live, locally generated transcript in a side panel, using a self-hosted Whisper speech recognition server.

What language is yt-realtime-translate written in?

Mainly JavaScript. The stack also includes JavaScript, React, FastAPI.

What license does yt-realtime-translate use?

No license is stated in the README, so usage rights are unclear.

How hard is yt-realtime-translate to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is yt-realtime-translate for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.