explaingit

pengchujin/jzsub

Analysis updated 2026-05-18

841PythonAudience · vibe coderComplexity · 3/5LicenseSetup · moderate

TLDR

Turns a video link into the highest quality download, a cover image, and a bilingual subtitle burned in MP4, using yt-dlp and batch AI translation.

Mindmap

mindmap
  root((JZSub))
    What it does
      Downloads video
      Translates subtitles
      Burns bilingual subs
    Tech stack
      Python
      yt-dlp
      Deno
      FFmpeg
    Use cases
      Bilingual video sharing
      Portrait video subtitles
      Subtitle only extraction
    Audience
      Codex users
      Content creators
      Language learners

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

Download a YouTube, Bilibili, or TikTok video in its highest available quality along with its cover image.

USE CASE 2

Create a bilingual subtitle version of a foreign language video for easier sharing or study.

USE CASE 3

Generate a portrait format video with burned in bilingual subtitles for Shorts style platforms.

USE CASE 4

Extract just translated subtitle files from a video without downloading the video itself.

What is it built with?

Pythonyt-dlpDenoFFmpeglibass

How does it compare?

pengchujin/jzsubrobbyant/lingbot-visiongvclab/cutclaw
Stars841842831
LanguagePythonPythonPython
Setup difficultymoderatemoderatemoderate
Complexity3/54/53/5
Audiencevibe coderresearchergeneral

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

How do you get it running?

Difficulty · moderate Time to first run · 30min

Needs Python, yt-dlp, Deno, FFmpeg with libass, and a separately downloaded MiSans font.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

JZSub is a tool that takes a single video link and hands you back the highest quality version of that video, its cover image, and a version with two language subtitles burned directly into the picture. It works with YouTube, Bilibili, Vimeo, Twitch, Dailymotion, TikTok, and other sites supported by the yt-dlp download library, though what formats and subtitles are actually available depends on each platform. The tool downloads the best available video and audio streams and packages them into a nearly lossless MP4. For subtitles, it translates the source captions in small batches, keeping context between batches so the translation reads naturally, then splits the result back along sentence boundaries. The original subtitle text is never altered. By default it translates into Chinese, but you can set a different target language such as Japanese or French. The finished bilingual subtitles are burned into the video using a specific font, stacked at the bottom of the frame, with the layout adjusting automatically for vertical, portrait style videos. You choose what you actually want delivered: the full pipeline of video, cover, subtitles, and a burned in bilingual MP4, just the video plus any original subtitle file, just the raw subtitles, or only the bilingual subtitle files without downloading the video at all. If a platform has no subtitles, the tool still delivers the video, an MP4, and a cover image. JZSub is built to run as a Codex skill, a kind of plugin for the Codex coding assistant. You can install it with a single command through Codex's skill installer, or clone the repository and copy its skill folder into place manually. Once installed, you send a short command with a video link inside a Codex session and the tool handles downloading, translation, subtitle rendering, and final delivery on its own. Running it requires Python 3.10 or newer, the yt-dlp downloader, the Deno JavaScript runtime, FFmpeg built with subtitle rendering support, and a specific bold font that must be downloaded separately from Xiaomi's website. The author notes that JZSub only downloads content you already have the right to access, and does not bypass DRM, paywalls, captchas, or other platform protections. The project is released under the MIT license.

Copy-paste prompts

Prompt 1
Install the JZSub skill in Codex and use it to download a YouTube video with burned in Chinese subtitles.
Prompt 2
Use JZSub to fetch only the bilingual subtitle files for a video without downloading the video itself.
Prompt 3
Show me how to set JZSub's target language to Japanese for burning subtitles into a video.
Prompt 4
Walk me through installing JZSub's dependencies including yt-dlp, Deno, and FFmpeg with libass support.

Frequently asked questions

What is jzsub?

Turns a video link into the highest quality download, a cover image, and a bilingual subtitle burned in MP4, using yt-dlp and batch AI translation.

What language is jzsub written in?

Mainly Python. The stack also includes Python, yt-dlp, Deno.

What license does jzsub use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is jzsub to set up?

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

Who is jzsub for?

Mainly vibe coder.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.