Break down a real-person talking-head creator's opening movements into text rules that a digital human can execute. The deliverable is a new skills/talking-head-<slug>/ directory.
Principles
- Extract only movements, rhythm, and structure. Do not include the person's appearance, clothing, scene details, or verbatim lines; for lines, record only the sentence function (greeting, pain-point question, promise...), and for catchphrases quote at most a few characters to illustrate the sentence pattern
- The repository only accepts opening clips. For each sample, cut the first 25 seconds and put it into
samples/talking-head-<slug>/, with the filename "sequence number_work ID"; keep the full original video, audio, extracted frames, and full transcript in a working directory outside the repository (.gitignoreonly allowsamples/mp4 under it) - Do not feed the original video to the generation model as a reference video, otherwise the other person's face, clothes, and background may bleed into the final video
- Write only reproducible specific movements: which hand, what shape, at what height, for how long, and on which word it lands. Do not write words the model cannot execute, such as "natural", "rich", or "charismatic"
- Distinguish "observation" from "suggestion": write observations into
references/samples.md, and write suggestions intoSKILL.md's "digital human generation suggestions"
Process
1. Select videos
- Select the 4 most-likedstudio-shot talking-head videos by the person; skip podcasts, outdoor visits, mashups, and collaborations
- Record each one's link, publication date, like count at collection time, and topic
2. Prepare materials (local)
Save the videos to a local directory in a way the platform allows (for example yt-dlp), then:
scripts/prepare_clips.sh <原片目录> <工作目录> 25
Obtain the first 25-second clip, 16k audio, and an overview contact sheet at 2 frames per second.
3. Transcribe
Use any ASR to transcribe audio/*.wav, keeping sentence-level timestamps. For example, local Whisper:
mlx_whisper audio/xxx.wav --model mlx-community/whisper-large-v3-turbo --language zh --output-format json
4. Look at the overall structure
Read each overview contact sheet and mark the screen state second by second: full-screen real person / picture-in-picture (where the person is, what shape) / no-person footage / on-screen text. Calculate the proportion of full-screen real person in the first 20 seconds, and write down the opening structure (what function the first sentence serves, when it cuts away, when it returns).
5. Look at gestures
Only do detailed frame viewing at 4 frames per second for full-screen real-person segments:
scripts/contact_sheet.sh clips/xxx.mp4 sheets/xxx_10.5s.jpg 10.5 6 4 6x4 400
Against the transcript, record sentence by sentence: gesture shape, one hand or both hands, height range, duration, which word it lands on, facial expression, and head movement.
6. Summarize
- Gesture vocabulary: how many recur repeatedly? Number each one (author's initials + sequence number)
- Range: the hand movement box (for example, chest to eyebrows), whether it exceeds shoulder width, whether the elbows stay close to the body
- Rhythm: when gestures switch, how often, whether they are symmetrical
- Expression: the expression in the first frame, the fixed expression at emphasis points (squinting, eyebrow raise)
- Risk grading: Low (hands not in frame, one hand low) / Medium (both hands symmetrical, fingers need not be precise) / High (both index fingers, pinch, five fingers spread, bent fingers)
- Opening structure type: "person first, then evidence" or "evidence first, then person"
7. Write as a Skill
Copy templates/creator-skill-template.md to skills/talking-head-<slug>/SKILL.md and fill in; write the sample table and observations into references/samples.md. Then:
- Copy the opening clips in
clips/tosamples/talking-head-<slug>/ - In
data/samples.csvappend a sample row (including theclipcolumn) - In the repository
README.md's blogger table, add a row
Self-check list
- Every item in the gesture vocabulary has: shape, triggering line type, position, duration
- Has "prohibited actions"
- The lines in the opening structure template only state the function, without copying the original sentences
- Does not describe the other person's appearance, clothing, or specific scene
- The repository only contains the opening clips under
samples/, with no complete original video, audio, screenshots, or full transcript - The "generation description example" is original and can be directly adapted into your own