1. Overview
1.1 Service Capabilities
Video Extend unlocks endless possibilities from a single clip. Powered by the ToMoviee AI Video Extend Engine, this tool takes any video snippet and a short text prompt, and then intelligently infers how the story should continue, generating seamless visual extensions with a single click.
Fine-grained control over extension flow: Timeline anchoring: Select key frames from the original video as anchor points. Use timeline markers to define pace changes and scene transitions.
Dynamic reasoning: Use text prompts to control character actions (for example, “the character turns and runs”), environmental changes (such as “heavy rain clears to blue skies”), or visual effects (like particles, lighting effects, or camera shake).
Multiple output modes: Standard Extend (preserving original styles) and Creative Derivation (incorporating new artistic styles) are supported. Both modes support dual-resolution output: 720p Quick Preview and 4K Ultra-HD Professional.
1.2 Sample Prompts and Outputs
|
Input Video |
prompt |
Output Video |
|
|
The character opens his eyes again and smiles. |
|
2Prompt engine
Each AI-generated video can be extended by 4 seconds per request, with support for multiple extensions (up to X minutes). You can fine-tune the prompt to guide how the video is extended. To ensure consistency and avoid artifacts in the extended footage, the prompt should relate to the original video and clearly specify the subject and its motion. You can use the following formula as a reference:
|
Prompt = Subject + Motion Subject: The main object in the video that performs the motion. To ensure optimal response quality, it is best to focus on one subject. Motion: The specific movement or action you want the subject to perform.
|
3. API Requests
3.1 Request URL
https://open-api.wondershare.cc/v1/open/capacity/application/tm_video_continuation
3.2 Request Parameters
Header:
|
Parameter Name |
Value |
Required |
Example |
Description |
|
Content-Type |
application/json |
Yes |
|
|
|
X-Prod-Id |
|
Yes |
|
Product ID. |
|
X-User-Id |
|
Yes |
|
User WSID. |
Body:
|
arameter Name |
Type |
Required |
Default Value |
Description |
Other Info |
|
prompt |
string |
Yes |
|
Prompt text, which can be in both Chinese and English. Recommended format: Subject + Motion + Camera Description. Length: Up to 1,000 characters. For optimal results, English prompts should be under 200 words. |
|
|
camera_move_index |
integer |
No |
|
Camera movement control type: 1: "orbit", 2: "spin", 3: "pan left", 4: "pan right", 5: "tilt up", 6: "tilt down", 7: "push in", 8: "pull out", 9: "static", 10: "tracking", 11: "others", 12: "object pov", 13: "super dolly in", 14: "super dolly out", 15: "snorricam", 16: "head tracking", 17: "car grip", 18: "screen transition", 19: "car chasing", 20: "fisheye", 21: "FPV drone", 22: "crane over the head", 23: "timelapse landscape", 24: "dolly in", 25: "dolly out", 26: "zoom in", 27: "zoom out", 28: "full shot", 29: "close-up shot", 30: "extreme close-up", 31: "Macro shot", 32: "bird's-eye view", 33: "rule of thirds", 34: "symmetrical composition". |
|
|
origin_video |
string |
Yes |
|
Original video URL. 1. Input resolution: The product of the input video’s width and height must fall within one of the following ranges (perfected after communication with Huawei): ① 720p: The pixel product must be between 624×1360 and 496×1936. The output remains 720p. If the video dimensions are not divisible by 32, the edges will be cropped to the nearest multiple of 32. ② 1080p: The pixel product must be between 936×2040 and 744×2904. The output remains 1080p. If the video dimensions are not divisible by 32, the edges will be cropped to the nearest multiple of 32. 2. Aspect ratio: No restrictions (unchanged). 3. Frame rate: Must be 8 FPS or higher. (Note: This is a new mandatory requirement for the current Video Extend engine.) 4. Duration: Must be between 3 seconds and 5 minutes (unchanged). 5. File size: Must not exceed 200 MB (unchanged). 6. Supported formats: MP4, AVI, MOV, and FLV. (Note: GIF format is not supported and should be excluded.) |
|
|
wsid |
string |
Yes |
|
User ID. |
|
|
callback |
string |
No |
|
Callback URL. |
|
|
params |
string |
No |
|
透明参数 |
|
|
priority |
string |
No |
|
Priority level. |
|
|
units_value |
integer |
Yes |
|
Unit of credit deduction. For example, if the deduction is based on the origin_video field, the amount will be calculated using the duration of the input video. |
|
|
drive |
string |
No |
|
If you use cloud storage for video/image output, this field is required in JSON format. Example: { "space_id": 11111, // Cloud storage space ID "file_dest_path": "/path/sss", // Cloud storage destination path (directory) "file_tag": [ // File tags { "key": "key1", "value": "value1" }, { "key": "key2", "value": "value2" } ] } |
|
|
origin_video_duration |
integer |
Yes |
|
Length of the original video. Unit: ms. |
|
Response parameters:
|
Parameter Name |
Type |
Required |
Default Value |
Description |
Other Info |
|
code |
integer |
Yes |
|
Error code. |
|
|
msg |
string |
Yes |
|
Error message. |
|
|
data |
object |
No |
|
|
Notes: |
|
task_id |
string |
No |
|
Task ID. |
3.3 Response
{
"code": 0,
"msg": "success",
"data": {
"task_id": "sky_video_continuation-0-202410098a764dafa0445d33ded5a532",
"wsid": 0,
"priority": 1,
"status": 3,
"reason": "success",
"progress": 1,
"position": -1,
"wait_time": 91,
"params": "tongyiemo",
"result":"{\"video_path\":[\"fileId\"]}"
}
}
3.4 Sample Requests
curl --location 'https://open-api.wondershare.cc/v1/open/capacity/application/tm_video_continuation' \
--header 'X-Prod-Id: 14958' \
--header 'X-User-Id: 578608264' \
--header 'Content-Type: application/json' \
--data '{
"prompt": "Generate a dance video for a little girl",
"origin_video": "Video URL",
"wsid": 578608264,
"params": "asdfasdf",
"priority": 0,
"callback": "http://www.baidu.com",
"units_value": 1,
"origin_video_duration": 4000
}'