YuzuLingo vs cuddly-journey (Shirajuki)
YuzuLingo stays in the browser. You cover burned-in subtitles on the video you are already watching, including YouTube, Bilibili, and other web players. There is no script to run and no video file to start from. Turn on Interact to read the burned-in line on your device, with furigana or pinyin when the language has them. Show that text always, on hover, or while you hold a hotkey.
cuddly-journey is Shirajuki’s project, in the repo cuddly-journey. The README marks it WIP. The goal is an SRT from a video with hardcoded subtitles, then a dubbed audio track from that SRT. Standalone scripts do those steps: hard_subs_to_srt.py takes a video, an output SRT, and a helper SRT, using Tesseract. process_tts.py cleans an SRT. tts-edge.py makes TTS chunks, and another script turns those into an audio file. The README says the extract script only supports 1280x720 for now. A web editor, a crop box, LLM sentence correction, Docker, and the how-to are still TODO or TBA. It needs Python 3, Tesseract for your target language, and FFmpeg. The README credits video-subtitle-extractor for the VideoSubFinderCli binary. The last commit was about 2 years ago, and there is no release.
Where each one fits
| Feature | YuzuLingo | cuddly-journey |
|---|---|---|
| Install in the browser, no script to run | ||
| Cover burned-in subs while a web video plays | ||
| No video file to start from | ||
| Read that line while the video plays, on your device | ||
| Furigana or pinyin on that line | ||
| Show that text always, on hover, or while you hold a hotkey | ||
| Extract hardcoded subs from a local video into an SRT | ||
| Generate dubbed audio from that SRT | ||
| Any video size, not only 1280x720 | ||
| OCR stays on the device | ||
| Add the line to an Anki deck |