| name | video-subtitle-notes |
| description | Convert a provided video plus subtitle file into Chinese Markdown notes with extracted screenshots inserted at useful visual reference points. Use when the user gives video/subtitle artifacts such as .mp4 with .srt, .vtt, .ass, or .ssa subtitles and asks for Markdown notes, lecture notes, transcript notes, screenshot placeholders, screenshot insertion, or subtitle-to-notes conversion while preserving all subtitle text. |
Video Subtitle Notes
Workflow
- Locate both the video file and the subtitle file. The subtitle provides text and timestamps; the video provides screenshot frames.
- Extract subtitle segments with
scripts/extract_subtitle_segments.py when the subtitle is .srt, .vtt, .ass, or .ssa:
python "scripts\extract_subtitle_segments.py" "path\to\subtitle.srt"
- Use the extracted
text, start, end, and end_mmss fields to create the final Markdown body.
- Insert
Screenshot-[mm:ss] placeholders at useful sentence ends while drafting.
- Save the draft Markdown to a file, then run
scripts/insert_screenshots.py to extract the corresponding video frames and insert Markdown image links after each placeholder:
python "scripts\insert_screenshots.py" "path\to\video.mp4" "path\to\draft.md" --output-dir "path\to\screenshots" --output-markdown "path\to\notes_with_screenshots.md"
- Return only the final Markdown正文 from
notes_with_screenshots.md. Do not wrap the output in a code block and do not add explanations before or after it.
Note Rules
- Write in Chinese. Preserve necessary proper nouns, product names, APIs, commands, code identifiers, UI labels, and URLs in English when that is clearer or more faithful.
- Preserve all subtitle content. Do not summarize, omit, merge away, or delete spoken text. It is acceptable to add punctuation, normalize obvious line-break artifacts, and group continuous text into paragraphs.
- Keep only one heading level: use
## for section titles.
- Make the first paragraph an introduction with no heading.
- Use
## headings only after the introductory paragraph. Do not use #, ###, bullet lists, numbered lists, tables, or blockquotes unless the user explicitly asks for a different format.
- Add paragraphing and punctuation so the transcript reads like coherent notes, but keep the original order and all information.
- Do not include raw subtitle indices or timestamps except screenshot placeholders.
Screenshot Placeholder Rules
Insert a screenshot placeholder at the end of a sentence only when a still image would genuinely help comprehension. After generating screenshots, keep the placeholder and insert the corresponding image immediately after it. Use exactly this placeholder form:
Screenshot-[mm:ss]
Use the end_mmss of the subtitle segment containing the sentence end. For videos longer than one hour, use total minutes, for example Screenshot-[75:12].
Add a placeholder when the sentence:
- Explains code, code output, terminal commands, notebooks, diagrams, charts, or data tables.
- Describes UI interaction, buttons, menus, pages, settings, windows, panels, or visual layout.
- Uses visually referential language such as “这么”, “这里”, or “这儿” in a way that depends on seeing the screen.
- Mentions “网址”, “地址”, “链接”, “URL”, “website”, “site”, “page”, or asks the viewer to go to/open/click a specific web address.
- Compares key technical concepts, architecture, model behavior, before/after states, or visual examples where a screenshot would make the contrast easier to follow.
Be selective. If the visual reference is only a filler word and the sentence is understandable without the screen, skip the placeholder.
Screenshot Image Rules
- Extract one screenshot for each unique
Screenshot-[mm:ss] placeholder from the provided video.
- Insert the Markdown image directly after the placeholder, separated by a blank line:
这句话需要看画面。Screenshot-[03:12]

- Use relative image paths when returning or saving the Markdown so the notes and screenshot folder remain portable together.
- If multiple sentences use the same timestamp, reuse the same image file.
- If video extraction fails because the video is missing,
ffmpeg is unavailable, or the timestamp is outside the video, leave the placeholder in place and briefly state the extraction problem outside the Markdown only if the user asked for files rather than pasted Markdown.
Quality Check
Before responding, verify:
- Every subtitle segment is represented in the Markdown.
- The output is Chinese Markdown正文 only.
- The first paragraph has no heading.
- Every later section title uses
##.
- No content has been shortened or summarized.
- Screenshot placeholders use the sentence-ending timestamp and exact
Screenshot-[mm:ss] format.
- Every screenshot placeholder is followed by a Markdown image link to the extracted frame whenever the video is available.