tencent cloud

EditMedia
Last updated:2026-03-10 11:15:03
EditMedia
Last updated: 2026-03-10 11:15:03

1. API Description

Domain name for API request: mps.intl.tencentcloudapi.com.

This API is used to edit a video to generate a new one. Editing features include:

  1. Editing task: simple video editing, such as clipping and splicing.
    1) Edit a file to generate a new video.
    2) Splice multiple files to generate a new video.
    3) Edit multiple files and then splice them to generate a new video.

  2. Compositing task: Generate a new video by describing information through APIs.
    1) Multi-track (video, audio, and subtitles) and multi-type elements (video, image, audio, text, and empty).
    2) Image level: mapping, zoom in/out, arbitrary rotation, mirroring, and more.
    3) Audio level: volume control, fade in/out, mixing, and more.
    4) Video level: transition, playback speed adjustment, splicing, clipping, subtitles, picture-in-picture, audio-video separation, entrance and exit animations, and more.

A maximum of 20 requests can be initiated per second for this API.

We recommend you to use API Explorer
Try it
API Explorer provides a range of capabilities, including online call, signature authentication, SDK code generation, and API quick search. It enables you to view the request, response, and auto-generated examples.

2. Input Parameters

The following request parameter list only provides API request parameters and some common parameters. For the complete common parameter list, see Common Request Parameters.

Parameter Name Required Type Description
Action Yes String Common Params. The value used for this API: EditMedia.
Version Yes String Common Params. The value used for this API: 2019-06-12.
Region No String Common Params. This parameter is not required for this API.
FileInfos.N Yes Array of EditMediaFileInfo

Input video file information.

OutputStorage Yes TaskOutputStorage

Target storage for the output file of the media processing task.

OutputObjectPath Yes String

Target path for the output file of the media processing task.

Note: For a complex compositing task, the file name in the path can contain only digits, letters, hyphens (-), and underscores (_), with a maximum of 64 characters.

OutputConfig No EditMediaOutputConfig

Configuration of the file generated by the [editing] task.

ComposeConfig No ComposeMediaConfig

[Compositing] task configuration.

Note: If this is not empty, the task is a compositing task. Otherwise, the task is an editing task.

TaskNotifyConfig No TaskNotifyConfig

Event notification information of the task. If this is not specified, no event notification is obtained.

TasksPriority No Integer

Task priority. The higher the value, the higher the priority. The value range is from -10 to 10. If this is not specified, the default value is 0.

SessionId No String

Identifier for deduplication. If a request with the same identifier has been sent within the past three days, an error is returned for the current request. The maximum length is 50 characters. If this is not specified or left empty, deduplication is not performed.

SessionContext No String

Source context. This is used to pass user request information. The task status change callback returns the value of this field. The maximum length is 1000 characters.

ResourceId No String

Resource ID. The resource needs to be enabled. The default value is the account's primary resource ID.

3. Output Parameters

Parameter Name Type Description
TaskId String

Video editing task ID. This can be used to query the task status.

RequestId String The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.

4. Example

Example1 [Editing Task] Editing a File to Generate a New Video

Input Example

https://mps.intl.tencentcloudapi.com/?Action=EditMedia
&FileInfos.0.InputInfo.Type=COS
&FileInfos.0.InputInfo.CosInputInfo.Bucket=TopRankVideo-125xxx88
&FileInfos.0.InputInfo.CosInputInfo.Region=ap-chongqing
&FileInfos.0.InputInfo.CosInputInfo.Object=/movie/201907/WildAnimal.mov
&FileInfos.0.StartTimeOffset=60.0
&FileInfos.0.EndTimeOffset=120.0
&OutputStorage.Type=COS
&OutputStorage.CosOutputStorage.Bucket=TopRankVideo-125xxx88
&OutputStorage.CosOutputStorage.Region=ap-chongqing
&OutputObjectPath=/clip_result/clip_WildAnimal.{format}
&<Common request parameters>

Output Example

{
    "Response": {
        "RequestId": "6ca31e3a-6b8e-4b4e-9256-fdc700064ef3",
        "TaskId": "125xxx88-EditMedia-bffb15f07530b57bc1aabb01fac74bca"
    }
}

Example2 [Compositing Task] Editing and Adding an Intro, an Outro, a Watermark Image, Text, and Replacement Audio

This example shows you how to edit a video and add an intro, an outro, a watermark image, description text, and replacement audio to create a new video. The track form is as follows:

Sample result

Note: The intro and outro can be videos or images.
Note: The Canvas parameter specifies the output video size. If this parameter is not specified, the first video size is used by default. We recommend that you place the main video first in the asset list.

Input Example

POST / HTTP/1.1
Host: mps.intl.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: EditMedia
<Common request parameters>

{
    "FileInfos": [
        {
            "Id": "start",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../start.mp4"
                }
            }
        },
        {
            "Id": "video",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../video.mp4"
                }
            }
        },
        {
            "Id": "end",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../end.png"
                }
            }
        },
        {
            "Id": "img",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../logo.png"
                }
            }
        },
        {
            "Id": "aud",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": ".../back_music.mp3"
                }
            }
        }
    ],
    "OutputStorage": {
        "Type": "COS",
        "CosOutputStorage": {
            "Bucket": "your_bucket",
            "Region": "your_bucket_region"
        }
    },
    "OutputObjectPath": "/your/output/dir/",
    "ComposeConfig": {
        "TargetInfo": {
            "Container": "mp4",
            "VideoStream": {
                "Fps": 30
            }
        },
        "Styles": [
            {
                "Id": "ss",
                "Type": "Subtitle",
                "Subtitle": {
                    "MarginBottom": "50%",
                    "FontType": "SimHei",
                    "FontSize": "8%",
                    "FontBold": 1,
                    "FontColor": "#FF0000FF",
                    "BorderWidth": "2px",
                    "BorderColor": "#00FF00FF",
                    "BottomColor": "#0000FFFF"
                }
            }
        ],
        "Tracks": [
            {
                "Type": "Title",
                "Items": [
                    {
                        "Type": "Subtitle",
                        "Subtitle": {
                            "StyleId": "ss",
                            "TrackTime": {
                                "Start": "0s",
                                "Duration": "2s"
                            },
                            "Text": "Intro - example"
                        }
                    },
                    {
                        "Type": "Subtitle",
                        "Subtitle": {
                            "StyleId": "ss",
                            "TrackTime": {
                                "Start": "2s",
                                "Duration": "8s"
                            },
                            "Text": "Main video - example"
                        }
                    },
                    {
                        "Type": "Subtitle",
                        "Subtitle": {
                            "StyleId": "ss",
                            "TrackTime": {
                                "Start": "12s",
                                "Duration": "2s"
                            },
                            "Text": "Outro - example"
                        }
                    }
                ]
            },
            {
                "Type": "Video",
                "Items": [
                    {
                        "Type": "Image",
                        "Image": {
                            "SourceMedia": {
                                "FileId": "img"
                            },
                            "TrackTime": {
                                "Duration": "14s"
                            },
                            "XPos": "85%",
                            "YPos": "10%",
                            "Width": "15%"
                        }
                    }
                ]
            },
            {
                "Type": "Video",
                "Items": [
                    {
                        "Type": "Video",
                        "Video": {
                            "SourceMedia": {
                                "FileId": "start"
                            },
                            "AudioOperations": [
                                {
                                    "Type": "Volume",
                                    "Volume": 0
                                }
                            ]
                        }
                    },
                    {
                        "Type": "Video",
                        "Video": {
                            "SourceMedia": {
                                "FileId": "video",
                                "StartTime": "10s",
                                "EndTime": "20s"
                            },
                            "AudioOperations": [
                                {
                                    "Type": "Volume",
                                    "Volume": 0
                                }
                            ]
                        }
                    },
                    {
                        "Type": "Transition",
                        "Transition": {
                            "Transitions": [
                                {
                                    "Type": "Heart"
                                }
                            ]
                        }
                    },
                    {
                        "Type": "Image",
                        "Image": {
                            "SourceMedia": {
                                "FileId": "end"
                            },
                            "TrackTime": {
                                "Duration": "3s"
                            }
                        }
                    }
                ]
            },
            {
                "Type": "Audio",
                "Items": [
                    {
                        "Type": "Audio",
                        "Audio": {
                            "SourceMedia": {
                                "FileId": "aud"
                            },
                            "TrackTime": {
                                "Duration": "14s"
                            }
                        }
                    }
                ]
            }
        ]
    }
}

Output Example

{
    "Response": {
        "RequestId": "6ca31e3a-6b8e-4b4e-9256-fdc700064ef3",
        "TaskId": "125xxx88-EditMedia-bffb15f07530b57bc1aabb01fac74bca"
    }
}

Example3 [Compositing Task] Compositing Images and Audio into a Video

This example shows you how to combine a set of images and background music into a video and add transition effects between images. The track form is as follows:

Sample result

Note: Transitions consume the track duration of the preceding and following elements. If an element has transitions before and after it, you need to make sure that the track duration of the element is greater than the sum of the duration of the two transitions.

Input Example

POST / HTTP/1.1
Host: mps.intl.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: EditMedia
<Common request parameters>

{
    "FileInfos": [
        {
            "Id": "img01",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../1.jpg"
                }
            }
        },
        {
            "Id": "img02",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../2.jpg"
                }
            }
        },
        {
            "Id": "img03",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../3.jpg"
                }
            }
        },
        {
            "Id": "img04",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../4.jpg"
                }
            }
        },
        {
            "Id": "img05",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../5.jpg"
                }
            }
        },
        {
            "Id": "img06",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../6.jpg"
                }
            }
        },
        {
            "Id": "img07",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../7.jpg"
                }
            }
        },
        {
            "Id": "img08",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../8.jpg"
                }
            }
        },
        {
            "Id": "img09",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../9.jpg"
                }
            }
        },
        {
            "Id": "img10",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../10.jpg"
                }
            }
        },
        {
            "Id": "adu",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../back_music.mp3"
                }
            }
        }
    ],
    "OutputStorage": {
        "Type": "COS",
        "CosOutputStorage": {
            "Bucket": "your_bucket",
            "Region": "your_bucket_region"
        }
    },
    "OutputObjectPath": "/your/output/dir/",
    "ComposeConfig": {
        "TargetInfo": {
            "Container": "mp4",
            "VideoStream": {
                "Fps": 30
            }
        },
        "Tracks": [
            {
                "Type": "Video",
                "Items": [
                    {
                        "Type": "Image",
                        "Image": {
                            "SourceMedia": {
                                "FileId": "img01"
                            },
                            "TrackTime": {
                                "Duration": "3s"
                            }
                        }
                    },
                    {
                        "Type": "Transition",
                        "Transition": {
                            "Transitions": [
                                {
                                    "Type": "Dreamy"
                                }
                            ]
                        }
                    },
                    {
                        "Type": "Image",
                        "Image": {
                            "SourceMedia": {
                                "FileId": "img02"
                            },
                            "TrackTime": {
                                "Duration": "3s"
                            }
                        }
                    },
                    {
                        "Type": "Transition",
                        "Transition": {
                            "Transitions": [
                                {
                                    "Type": "Circleopen"
                                }
                            ]
                        }
                    },
                    {
                        "Type": "Image",
                        "Image": {
                            "SourceMedia": {
                                "FileId": "img03"
                            },
                            "TrackTime": {
                                "Duration": "3s"
                            }
                        }
                    },
                    {
                        "Type": "Transition",
                        "Transition": {
                            "Transitions": [
                                {
                                    "Type": "Heart"
                                }
                            ]
                        }
                    },
                    {
                        "Type": "Image",
                        "Image": {
                            "SourceMedia": {
                                "FileId": "img04"
                            },
                            "TrackTime": {
                                "Duration": "3s"
                            }
                        }
                    },
                    {
                        "Type": "Transition",
                        "Transition": {
                            "Transitions": [
                                {
                                    "Type": "PolarFunction"
                                }
                            ]
                        }
                    },
                    {
                        "Type": "Image",
                        "Image": {
                            "SourceMedia": {
                                "FileId": "img05"
                            },
                            "TrackTime": {
                                "Duration": "3s"
                            }
                        }
                    },
                    {
                        "Type": "Transition",
                        "Transition": {
                            "Transitions": [
                                {
                                    "Type": "Swirl"
                                }
                            ]
                        }
                    },
                    {
                        "Type": "Image",
                        "Image": {
                            "SourceMedia": {
                                "FileId": "img06"
                            },
                            "TrackTime": {
                                "Duration": "3s"
                            }
                        }
                    },
                    {
                        "Type": "Transition",
                        "Transition": {
                            "Transitions": [
                                {
                                    "Type": "WipeRight"
                                }
                            ]
                        }
                    },
                    {
                        "Type": "Image",
                        "Image": {
                            "SourceMedia": {
                                "FileId": "img07"
                            },
                            "TrackTime": {
                                "Duration": "3s"
                            }
                        }
                    },
                    {
                        "Type": "Transition",
                        "Transition": {
                            "Transitions": [
                                {
                                    "Type": "ZoomInCircles"
                                }
                            ]
                        }
                    },
                    {
                        "Type": "Image",
                        "Image": {
                            "SourceMedia": {
                                "FileId": "img08"
                            },
                            "TrackTime": {
                                "Duration": "3s"
                            }
                        }
                    },
                    {
                        "Type": "Transition",
                        "Transition": {
                            "Transitions": [
                                {
                                    "Type": "ImageFadeInFadeOut"
                                }
                            ]
                        }
                    },
                    {
                        "Type": "Image",
                        "Image": {
                            "SourceMedia": {
                                "FileId": "img09"
                            },
                            "TrackTime": {
                                "Duration": "3s"
                            }
                        }
                    },
                    {
                        "Type": "Transition",
                        "Transition": {
                            "Transitions": [
                                {
                                    "Type": "ButterflyWaveScrawler"
                                }
                            ]
                        }
                    },
                    {
                        "Type": "Image",
                        "Image": {
                            "SourceMedia": {
                                "FileId": "img10"
                            },
                            "TrackTime": {
                                "Duration": "3s"
                            }
                        }
                    }
                ]
            },
            {
                "Type": "Audio",
                "Items": [
                    {
                        "Type": "Audio",
                        "Audio": {
                            "SourceMedia": {
                                "FileId": "adu"
                            },
                            "TrackTime": {
                                "Duration": "21s"
                            }
                        }
                    }
                ]
            }
        ]
    }
}

Output Example

{
    "Response": {
        "RequestId": "6ca31e3a-6b8e-4b4e-9256-fdc700064ef3",
        "TaskId": "125xxx88-EditMedia-bffb15f07530b57bc1aabb01fac74bca"
    }
}

Example4 [Compositing Task] Picture-in-Picture

This example shows you how to resize a video and embed it onto another video to create a new video. The track form is as follows:

Sample result

Input Example

POST / HTTP/1.1
Host: mps.intl.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: EditMedia
<Common request parameters>

{
    "FileInfos": [
        {
            "Id": "back",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../video.mp4"
                }
            }
        },
        {
            "Id": "over",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../over.mp4"
                }
            }
        }
    ],
    "OutputStorage": {
        "Type": "COS",
        "CosOutputStorage": {
            "Bucket": "your_bucket",
            "Region": "your_bucket_region"
        }
    },
    "OutputObjectPath": "/your/output/dir/",
    "ComposeConfig": {
        "Tracks": [
            {
                "Type": "Video",
                "Items": [
                    {
                        "Type": "Video",
                        "Video": {
                            "SourceMedia": {
                                "FileId": "over",
                                "StartTime": "30s",
                                "EndTime": "40s"
                            },
                            "AudioOperations": [
                                {
                                    "Type": "Volume",
                                    "Volume": 0
                                }
                            ],
                            "XPos": "60%",
                            "YPos": "30%",
                            "Width": "300px"
                        }
                    }
                ]
            },
            {
                "Type": "Video",
                "Items": [
                    {
                        "Type": "Video",
                        "Video": {
                            "SourceMedia": {
                                "FileId": "back",
                                "StartTime": "10s",
                                "EndTime": "20s"
                            }
                        }
                    }
                ]
            }
        ]
    }
}

Output Example

{
    "Response": {
        "RequestId": "6ca31e3a-6b8e-4b4e-9256-fdc700064ef3",
        "TaskId": "125xxx88-EditMedia-bffb15f07530b57bc1aabb01fac74bca"
    }
}

Example5 [Compositing Task] Adjusting the Video Playback Speed

This example shows you how to edit a video, play the first 10 seconds at 2x speed and the next 10 seconds at 0.8x speed, and create a new video. The track form is as follows:

Sample result

Note: Variable speed playback is achieved when the duration of the asset in SourceMedia differs from the duration specified in TrackTime.
Note: Variable speed playback cannot be used simultaneously with the transition effect.

Input Example

POST / HTTP/1.1
Host: mps.intl.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: EditMedia
<Common request parameters>

{
    "FileInfos": [
        {
            "Id": "vod",
            "InputInfo": {
                "Type": "URL",
                "UrlInputInfo": {
                    "Url": "https://.../video.mp4"
                }
            }
        }
    ],
    "OutputStorage": {
        "Type": "COS",
        "CosOutputStorage": {
            "Bucket": "your_bucket",
            "Region": "your_bucket_region"
        }
    },
    "OutputObjectPath": "/your/output/dir/",
    "ComposeConfig": {
        "Tracks": [
            {
                "Type": "Video",
                "Items": [
                    {
                        "Type": "Video",
                        "Video": {
                            "SourceMedia": {
                                "FileId": "vod",
                                "StartTime": "10s",
                                "EndTime": "20s"
                            },
                            "TrackTime": {
                                "Duration": "5s"
                            }
                        }
                    }
                ]
            },
            {
                "Type": "Video",
                "Items": [
                    {
                        "Type": "Video",
                        "Video": {
                            "SourceMedia": {
                                "FileId": "vod",
                                "StartTime": "20s",
                                "EndTime": "30s"
                            },
                            "TrackTime": {
                                "Duration": "12.5s"
                            }
                        }
                    }
                ]
            }
        ]
    }
}

Output Example

{
    "Response": {
        "RequestId": "6ca31e3a-6b8e-4b4e-9256-fdc700064ef3",
        "TaskId": "125xxx88-EditMedia-bffb15f07530b57bc1aabb01fac74bca"
    }
}

5. Developer Resources

SDK

TencentCloud API 3.0 integrates SDKs that support various programming languages to make it easier for you to call APIs.

Command Line Interface

6. Error Code

The following only lists the error codes related to the API business logic. For other error codes, see Common Error Codes.

Error Code Description
FailedOperation.GenerateResource Resource generation failed.
FailedOperation.InvalidMpsUser Operation failed: unauthorized MPS user.
InternalError Internal error.
InvalidParameter Parameter error.
Was this page helpful?
You can also Contact Sales or Submit a Ticket for help.
Yes
No

Feedback