KrillinAI Render Vertical
Use this skill for render-vertical. Read skills/krillinai-cli/references/cli-contract.md first for binary location, execution working directory, configuration, and JSON behavior.
Bilingual Short-Subtitle Video
(cd "$KRILLINAI_CWD" && "$KRILLINAI_CLI" render-vertical \
--workdir "$WORKDIR" \
--video "$WORKDIR/origin_video.mp4" \
--subtitle "$WORKDIR/short_origin_mixed_srt.srt" \
--major-title "今日话题" \
--minor-title "AI Video")
Dubbed Vertical Video
(cd "$KRILLINAI_CWD" && "$KRILLINAI_CLI" render-vertical \
--workdir "$WORKDIR" \
--video "$WORKDIR/video_with_tts.mp4" \
--subtitle "$WORKDIR/target_language_srt.srt" \
--dubbed \
--major-title "今日话题" \
--minor-title "AI Video")
Subtitle Behavior
The Go renderer follows the good behavior from vertical_srt.py:
- Chinese uses word segmentation before line decisions.
- Display width is used for line splitting: Chinese counts as width 2, other text as width 1.
- Long Chinese subtitles are split across time into multiple
Dialogueentries instead of stacked with\N. - The goal is to keep the screen to one English line plus one Chinese line when possible.
Outputs
transferred_vertical_video.mp4: source converted to portrait format.vertical_bilingual.mp4: default final vertical video.vertical_dubbed.mp4: final video with--dubbed.- Final variants are reported through the manifest key
vertical_video.
Verification
Use text and visual checks:
rg -n -F '\\N' "$WORKDIR/formatted_vertical_bilingual.ass"
ffmpeg -y -ss 00:00:01 -i "$WORKDIR/vertical_bilingual.mp4" \
-frames:v 1 "$WORKDIR/vertical_preview_%03d.jpg"
Also require terminal JSON with "ok": true, valid video/audio streams, readable subtitles, and non-garbled titles.