wjs-burning-subtitles
Embed SRT subtitles directly into video pixels using libass, or add them as a toggleable track for compatible players. This skill also serves as the final encoding stage for localized video: it can burn target-language subtitles, mix a dubbed audio track over the original at low volume, and produce a ready-to-upload MP4 in a single ffmpeg operation—no re-encoding cascade.
wjs-burning-subtitles permanently embeds subtitles into video for platforms like WeChat and TikTok that don't support subtitle tracks.
AI-generated summary based on this skill's SKILL.md
Install
jianshuo/claude-skills/wjs-burning-subtitles · repository language: Python
git clone https://github.com/jianshuo/claude-skills
cp -r claude-skills/wjs-burning-subtitles ~/.claude/skills/wjs-burning-subtitlesnpx skillfed install jianshuo/claude-skills/wjs-burning-subtitlesFrequently asked questions
AI-generated answers based on this skill's SKILL.md and metadata
How do I burn subtitles into video permanently?
wjs-burning-subtitles embeds SRT subtitles directly into video pixels using libass. The skill renders subtitles as part of the video frame during encoding, making them permanent and visible on all players and platforms. This hard-burn approach is ideal for social media where viewers cannot toggle subtitles off.
Can wjs-burning-subtitles embed SRT file in video?
Yes. wjs-burning-subtitles reads SRT subtitle files and either burns them permanently into the video pixels or adds them as a soft-muxed toggleable track. For permanent embedding, subtitles render during ffmpeg encoding; for toggleable tracks, they're stored as a separate stream in the MP4 container.
What is soft-mux vs hard-burn subtitles in this skill?
wjs-burning-subtitles supports both approaches. Hard-burn (default) renders subtitles into video pixels permanently—ideal for social media. Soft-mux adds subtitles as a separate toggleable track in the MP4 file, allowing viewers to turn them on or off in compatible players.
Can wjs-burning-subtitles create a localized video with dub and subs?
Yes. wjs-burning-subtitles serves as the final encoding stage for localized video. It burns target-language subtitles, mixes a dubbed audio track over the original at controlled volume levels, and produces a ready-to-upload MP4 in a single ffmpeg operation—eliminating re-encoding cascades.
How does wjs-burning-subtitles handle libass configuration?
wjs-burning-subtitles verifies and configures libass for subtitle rendering, ensuring proper font handling, styling, and positioning. The skill manages libass parameters automatically during the encoding process to guarantee consistent subtitle appearance across different video players.
Can I mix dubbed audio with original audio using this skill?
Yes. wjs-burning-subtitles can mix a dubbed audio track with the original audio at controlled volume levels during final encoding. This allows you to create localized videos where the dub plays at full volume while the original audio bed plays underneath at reduced volume.
SKILL.md
rendered from the published skill — quoted content, verbatim
wjs-burning-subtitles
Video + SRT → video with subtitles. Also the final-encode stage for the localization pipeline: takes a video, an optional dub track from /wjs-dubbing-video, and an optional SRT to burn, and produces the upload-ready MP4 in one ffmpeg pass. No cascade of decodes/re-encodes.
When to use
- User has an SRT and wants it always-visible on the video (burn-in for 微信视频号 / 抖音 / WeChat — players that won't honor embedded subtitle tracks).
- User wants a togglable subtitle track (soft-mux) for QuickTime / VLC / IINA / mobile players that support
(truncated - see the full file via the links below)
Read as markdown · JSON record · Browse the source repository
File tree — 2 files
wjs-burning-subtitles/SKILL.md
wjs-burning-subtitles/scripts/render.py