Picture-to-Video Generator · Open Skill 公开技能

Picture-to-Video Generator

Picture-to-Video Generator 是 Digen 上的公开 Open Skill。打开后即可了解该工作流能制作什么。

@laurenashleydaigle4

Film

35 2 13

https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/4016928/2026-09-25/qcr49f2m.jpg

# Picture-to-Video Generator

Turn a user-provided image into a short video clip driven by a motion/scene prompt, optionally driven by an audio track so the subject talks/lip-syncs.

## When to use
- The user uploads one or more images and wants them animated into a video (e.g. "make this photo move", "animate this scene", "turn this character still into a clip").
- The user gives a picture plus a prompt describing the motion, camera, or scene change they want.
- The user provides an image plus an audio track (voiceover, dialogue) and wants the subject to talk/lip-sync to it.

## Steps
1. Confirm the input: the user should provide at least one image (asset_id / URL) and a prompt describing the desired motion or scene. If they gave an image but no prompt, ask what motion/action they want before generating.
2. (Optional) If the image content is unclear and a good prompt depends on it, call `recognize_image(image_url=<asset>, prompt="Describe the subject, setting, and any motion cues in this image.")` to ground the prompt.
3. Call `generate_video` to animate the image:
   - `model='i2v'` (image-to-video channel).
   - `input_urls=[<the user's image asset_id or URL>]` — the source picture as the start frame.
   - `prompt=<the user's motion/scene prompt, written in English>` — describe the movement, camera, and scene change explicitly.
   - `orientation`: match the source image's orientation (`portrait` for 9:16 vertical, `landscape` for 16:9, `square` for 1:1); default to `portrait` for short-form if unknown.
   - `resolution`: default `1080P`; use `720P` if the user wants faster/lighter output.
   - `duration`: default 10 seconds unless the user specifies otherwise.
   - `name`: a short descriptive title for the clip (e.g. the subject + action).
   - `entity_type='final_videos'`.
4. If the user also provides an audio track (voiceover/dialogue) and wants the subject to talk or lip-sync to it, use the audio-driven channel instead:
   - `model='ai2v'` (image + audio → video).
   - `input_urls=[<the image>]` and `audio_url=<the user's audio asset_id or URL>` — the audio drives the subject's speech/lip movement.
   - Keep the same `prompt`, `orientation`, `resolution`, `duration`, `name`, and `entity_type='final_videos'`.
5. On success, reply in natural language summarizing the clip (subject, motion, orientation, duration, and whether it was audio-driven). Do not paste large URL blocks.
6. If the user wants to iterate (different motion, longer clip, different orientation, different audio), regenerate with the updated prompt/parameters.

## Notes
- Video generation does not support NSFW/adult content on any channel — politely decline such requests.
- Only animate images the user has provided or owns; do not fabricate source images.
- For audio-driven clips, only use an audio track the user has provided or owns.
- Report failures honestly; never invent a video URL if generation fails.
- Intermediate products are visible on the canvas; that is expected.