Update Notes
Update Time | Update Notes |
---|---|
2025.07.30 | 1. Added font-related fields. 2. Added the dirName attribute to asset: When type is subDir, this value is the ID of the highlight subtitle package. 3. Added followId and fxGroup to musicLyric: followId is the ID of the highlight subtitle package, and fxGroup is the ID of the same group of highlight subtitles, identifying subtitles as the same highlight subtitle. 4. Added shape to videoFx: Mask shape. 5. Added shape to timelineVideoFx: Mask shape. 6. Added shape to caption: Mask shape. 7. Added additionalData to keyFrame: The type of keyframe set on the mask. |
2025.07.02 | Starting from Cloud Edit version 3.4.0, in the exported XML, the properties of musicLyricsTrack are consistent with captionTrack, and the properties of musicLyrics are consistent with caption. The XML exported from 3.4.0 must use the updated xml2json interface, otherwise some subtitle effects will be lost. |
2024.12.13 | Added watermarkTracks related field descriptions |
2024.08.01 | 1. Added anchorPointX and anchorPointY fields under captions and musicLyricsTracks |
2024.07.30 | 1. Added enableRawSourceMode and rawFilterProcessesMode fields under videos |
2024.04.25 | 1. Added the timelineFlags, isDefaultCaptionFade, and safeFrameSize fields under timeline. 2. Added the refImageWidth and refImageHeight fields under videos. |
2024.04.22 | 1. Added the animationPeroid, inAnimationDuration, and outAnimationDuration fields to musicLyric 2. Added the type, direction, rendererId, contextId, animationId, inAnimationId, outAnimationId, letterSpacingType, letterSpacing, and lineSpacing fields to musicLyricTrack |
2024.04.11 | 1. Added aliasTag field to audio, caption, compoundCaption, musicLyric, sticker, timelineVideoFx, and video |
Some agreements
- Unless otherwise specified, the time unit is microseconds.
- The color value uses the #ffffffff color format, and the color channel order is a, r, g, b
- For built-in effect names and parameters, see https://www.meishesdk.com/android/doc_ch/html/content/FxNameList_8md.html
- If you need to manually wrap the subtitles, you can add a line break character in the text property of the subtitles\n
json format
json
{
"output": "16:9",
"timelines": [
{
"duration": 59720000,
"enableRenderOrderByZValue": true,
"encoderMode": "cbr",
"encoderType": "H.264",
"fps": 30,
"nvenc": true,
"outputEnd": -1,
"outputStart": 0,
"outputType": "mp4",
"resHeight": 540,
"resWidth": 960,
"sizeLevel": 1080,
"volume": 0.5226850115488941,
"videoBitrate": 16000000,
"videoSize": "16:9",
"templateId": "",
"videoTracks": [
{
"volume": 0.0,
"show": true,
"videos": [
{
"volume": 1.0,
"blendingMode": 0,
"combination": false,
"combinationOrder": 0,
"curvesSpeedString": "",
"enableClipFreezeFrame": false,
"extraRotation": 0,
"fadeInDuration": 0,
"fadeOutDuration": 0,
"fillMode": 0,
"freezeFrameTrimPos": 0,
"horizontalFlip": false,
"inPoint": 0,
"index": 0,
"keepAudioPitch": true,
"noAudio": false,
"outPoint": 16280000,
"path": "",
"reverse": false,
"reversePath": "",
"separated": false,
"speed": 1.0,
"trimIn": 10200000,
"trimOut": 26480000,
"verticalFlip": false,
"aliasTag": "",
"videoFxs": [
{
"index": 0,
"intensity": 1.0,
"isIgnoreBackground": false,
"isInverseRegion": false,
"isRaw": false,
"isRegional": false,
"name": "",
"regionalFeatherWidth": 0,
"type": "property",
"fxParams": [
{
"key": "Scale X",
"type": "float",
"value": "1"
},
{
"key": "",
"type": "int",
"value": "0"
},
{
"key": "",
"type": "bool",
"value": "true"
},
{
"key": "",
"type": "string",
"value": ""
},
{
"key": "Fill Mode",
"type": "menu",
"value": "AspectFit"
},
{
"key": "Background Mode",
"type": "menu",
"value": "Color Solid"
},
{
"key": "Background Color",
"type": "color",
"value": "#00000000"
},
{
"key": "region",
"objectValue": {
"x1": -0.5,
"x2": -0.5,
"x3": 0.5,
"x4": 0.5,
"y1": 0.5,
"y2": -0.5,
"y3": -0.5,
"y4": 0.5
},
"type": "object"
},
{
"key": "ellipseRegion",
"objectValue": {
"a": 0.35049019607843137,
"angle": 0,
"b": 0.6158892463235295,
"centerX": 0.19117647058823529,
"centerY": -0.10053104575163408
},
"type": "object"
},
{
"key": "curvePoint",
"objectValue": {
"timeSec": 0.0,
"x": -260.31488037109377,
"y": 7.8883209228515629
},
"type": "object"
},
{
"key": "curvePoint",
"objectValue": {
"timeSec": 0.036,
"x": -260.31488037109377,
"y": 7.8883209228515629
},
"type": "object"
},
{
"key": "curvePoint",
"objectValue": {
"timeSec": 0.07500025,
"x": -260.31488037109377,
"y": 7.8883209228515629
},
"type": "object"
}
],
"keyFrames": [
{
"key": "Scale X",
"time": 0,
"type": "float",
"value": "1"
},
{
"key": "",
"time": 0,
"type": "int",
"value": "0"
},
{
"key": "",
"time": 0,
"type": "bool",
"value": "true"
},
{
"key": "",
"time": 0,
"type": "string",
"value": ""
},
{
"key": "Fill Mode",
"time": 0,
"type": "menu",
"value": "AspectFit"
},
{
"key": "Background Mode",
"time": 0,
"type": "menu",
"value": "Color Solid"
},
{
"key": "Background Color",
"time": 0,
"type": "color",
"value": "#00000000"
},
{
"key": "region",
"objectValue": {
"x1": -0.4999999403953552,
"x2": -0.4999999403953552,
"x3": 0.5,
"x4": 0.5,
"y1": 0.5,
"y2": -0.5,
"y3": -0.5,
"y4": 0.5
},
"time": 0,
"type": "object"
}
]
},
{
"id": "02B33530-8663-4A01-A6F1-C9DAB3322590",
"index": 1,
"intensity": 1.0,
"isIgnoreBackground": false,
"isInverseRegion": false,
"isRaw": false,
"isRegional": false,
"regionalFeatherWidth": 0,
"type": "package"
},
{
"fxParams": [
{
"key": "Key Color",
"type": "color",
"value": "#ff02aa02"
},
{
"key": "Spill Removal",
"type": "bool",
"value": "true"
},
{
"key": "Softeness Amendment",
"type": "float",
"value": "0.1"
},
{
"key": "Spill Removal Intensity",
"type": "float",
"value": "0"
},
{
"key": "Shrink Intensity",
"type": "float",
"value": "0"
}
],
"index": 2,
"intensity": 1.0,
"isIgnoreBackground": false,
"isInverseRegion": false,
"isRaw": true,
"isRegional": false,
"name": "Master Keyer",
"regionalFeatherWidth": 0,
"type": "builtin"
}
],
"audioFxs": [
{
"fxParams": [
{
"key": "Level",
"type": "int",
"value": "2"
}
],
"index": 0,
"name": "Audio Noise Suppression",
"type": "builtin"
},
{
"index": 1,
"keyFrames": [
{
"key": "Left Gain",
"time": 0,
"type": "float",
"value": "1"
},
{
"key": "Right Gain",
"time": 0,
"type": "float",
"value": "1"
}
],
"type": "volume"
}
]
}
],
"transitions": [
{
"duration": 1000000,
"id": "8298527D-C479-4A14-B363-BE0528397E2E",
"index": 0,
"type": "package"
},
{
"duration": 1000000,
"index": 1,
"name": "",
"type": "builtin"
}
]
}
],
"audioTracks": [
{
"audios": [
{
"audioFxs": [
{
"index": 0,
"name": "Fast Cartoon Voice",
"type": "builtin"
},
{
"index": 1,
"keyFrames": [
{
"key": "Left Gain",
"time": 0,
"type": "float",
"value": "1"
},
{
"key": "Right Gain",
"time": 0,
"type": "float",
"value": "1"
},
{
"key": "Left Gain",
"time": 3840000,
"type": "float",
"value": "3.02"
},
{
"key": "Right Gain",
"time": 3840000,
"type": "float",
"value": "3.02"
}
],
"type": "volume"
}
],
"audioStreamIndex": 0,
"channelType": "stereo",
"combination": false,
"combinationOrder": 0,
"curvesSpeedString": "",
"fadeInDuration": 0,
"fadeOutDuration": 0,
"inPoint": 0,
"index": 0,
"keepAudioPitch": true,
"outPoint": 59600000,
"path": "",
"speed": 1.0,
"trimIn": 0,
"trimOut": 59600000,
"volume": 1.0,
"aliasTag": ""
}
],
"show": true,
"volume": 1.0
}
],
"timelineVideoFxTracks": [
{
"show": true,
"timelineVideoFxs": [
{
"combination": false,
"combinationOrder": 0,
"duration": 13400000,
"fxParams": [
{
"key": "Radius",
"type": "float",
"value": "23"
},
{
"key": "region",
"objectValue": {
"x1": -0.058823585510253909,
"x2": -0.058823585510253909,
"x3": 0.23529410362243653,
"x4": 0.23529410362243653,
"y1": -0.07382643222808838,
"y2": 0.10002732276916504,
"y3": 0.10002732276916504,
"y4": -0.07382643222808838
},
"type": "object"
}
],
"inPoint": 14920000,
"intensity": 1.0,
"isIgnoreBackground": false,
"isInverseRegion": false,
"isRegional": true,
"keyFrames": [
{
"key": "region",
"objectValue": {
"x1": -0.4999999403953552,
"x2": -0.4999999403953552,
"x3": 0.5,
"x4": 0.5,
"y1": 0.5,
"y2": -0.5,
"y3": -0.5,
"y4": 0.5
},
"time": 0,
"type": "object"
}
],
"name": "Gaussian Blur",
"regionalFeatherWidth": 0,
"type": "builtin",
"zValue": 5,
"aliasTag": ""
}
]
},
{
"show": true,
"timelineVideoFxs": [
{
"combination": false,
"combinationOrder": 0,
"duration": 5000000,
"id": "F845C51E-AFA0-44A5-B18A-87F7E1FA702F",
"inPoint": 6400000,
"intensity": 1.0,
"isIgnoreBackground": false,
"isInverseRegion": false,
"isRegional": false,
"regionalFeatherWidth": 0,
"type": "package",
"zValue": 9
}
]
}
],
"captionTracks": [
{
"captions": [
{
"align": "left",
"animationId": "",
"animationPeroid": 0,
"bgColor": "#00000000",
"bgRadius": 0.0,
"color": "#ffff73ab",
"combination": false,
"combinationOrder": 0,
"contextId": "53CDC64D-3CB6-4AE5-912B-B8F893D6A7E5",
"duration": 8120000,
"enableSpeed": false,
"font": "",
"fontSizeRatio": 0.1,
"fxParams": [],
"inAnimationDuration": 2827,
"inAnimationId": "F09FCB66-C1D5-4F73-8DC1-06B98599237C",
"inPoint": 1880000,
"italic": true,
"keyFrames": [],
"letterSpacing": 100.0,
"letterSpacingType": 0,
"lineSpacing": 0.0,
"outAnimationDuration": 705,
"outAnimationId": "36486C78-EC5F-471E-A5B0-1F41A7E60BBB",
"outline": false,
"outlineColor": "#ffffffff",
"outlineWidth": 0.0,
"recordingUserOperationTrans": true,
"rendererId": "869FD577-F5C7-40A3-A547-7DF806C41273",
"rotation": 0.0,
"scaleX": 1.0,
"scaleY": 1.0,
"shadow": false,
"shadowColor": "#7f808080",
"shadowFeather": 0.0,
"shadowOffsetX": 0.0,
"shadowOffsetY": 0.0,
"spans": [
{
"end": 4,
"start": 2,
"type": "fontFamily",
"value": "ZCOOL_KuHei [ZCOOL_KuHei]"
},
{
"end": 2,
"start": 1,
"type": "color",
"value": "#ff982828"
},
{
"end": 2,
"start": 1,
"type": "color",
"value": "#ffb52b2b"
}
],
"styleId": "",
"text": "浪漫的文字",
"translationX": 284.1484680175781,
"translationY": -146.20086669921876,
"type": "modular",
"underline": true,
"weight": 700,
"zValue": 6,
"aliasTag": ""
}
],
"show": true
}
],
"compoundCaptionTracks": [
{
"compoundCaptions": [
{
"captionItems": [
{
"color": "#ffffffff",
"font": "Noto Sans CJK JP [NotoSansCJKjp-Regular]",
"index": 0,
"text": "Love"
},
{
"color": "#ffffffff",
"font": "Noto Sans CJK JP [NotoSansCJKjp-Regular]",
"index": 1,
"text": "Crush"
}
],
"combination": false,
"combinationOrder": 0,
"duration": 5000000,
"fxParams": [],
"inPoint": 30880000,
"keyFrames": [],
"rotation": 0.0,
"scaleX": 0.6201772689819336,
"scaleY": 0.6201772689819336,
"styleId": "CCCAB518-CA56-465C-8E03-B0B6B10EAE90",
"translationX": -347.81640625,
"translationY": 176.85586547851563,
"zValue": 8,
"aliasTag": ""
}
],
"show": true
}
],
"stickerTracks": [
{
"show": true,
"stickers": [
{
"animationId": "",
"animationPeroid": 0,
"combination": false,
"combinationOrder": 0,
"duration": 15680000,
"fxParams": [],
"horizontalFlip": false,
"id": "ED5E9AF5-AF46-4FA4-8690-7F4D17168CD1",
"inAnimationDuration": 0,
"inAnimationId": "",
"inPoint": 8920000,
"keyFrames": [],
"outAnimationDuration": 0,
"outAnimationId": "",
"rotation": 0.0,
"scaleX": 0.8174743056297302,
"scaleY": 0.8174743056297302,
"translationX": -358.4278564453125,
"translationY": -146.20086669921876,
"type": "general",
"verticalFlip": false,
"volume": 1.0,
"zValue": 7,
"aliasTag": ""
}
],
"volume": 1.0
}
],
"musicLyricsTracks": [
{
"align": "center",
"color": "",
"font": "Noto Sans CJK SC [NotoSansCJKsc-Regular]",
"fontSizeRatio": 0.07037037037037038,
"italic": false,
"musicLyrics": [
{
"duration": 5000000,
"inPoint": 0,
"text": "示例字幕",
"zValue": 100,
"aliasTag": ""
}
],
"outline": false,
"outlineColor": "#ff000000",
"outlineWidth": 1.5,
"rotation": 0.0,
"scaleX": 1.0,
"scaleY": 1.0,
"show": true,
"styleId": "5F772E33-FF29-47F9-AD23-8A46770EEB95",
"translationX": 0.0,
"translationY": 0.0,
"underline": false,
"weight": 400
}
],
"watermarkTracks": [
{
"captionTracks": [
{
"captions": [
{
"type": "modular",
"text": "浪漫的文字",
"inPoint": 1880000,
"duration": 8120000,
"scaleX": 1.0,
"scaleY": 1.0,
"rotation": 0.0,
"recordingUserOperationTrans": true,
"translationX": 284.1484680175781,
"translationY": -146.20086669921876,
"zValue": 6,
"font": "",
"fontSizeRatio": 0.1,
"color": "#ffff73ab",
"weight": 700,
"italic": true,
"underline": true,
"align": "left",
"shadow": false,
"shadowColor": "#7f808080",
"shadowOffsetX": 0.0,
"shadowOffsetY": 0.0,
"shadowFeather": 0.0,
"outline": false,
"outlineColor": "#ffffffff",
"outlineWidth": 0.0,
"bgColor": "#00000000",
"bgRadius": 0.0,
"styleId": "",
"contextId": "53CDC64D-3CB6-4AE5-912B-B8F893D6A7E5",
"rendererId": "869FD577-F5C7-40A3-A547-7DF806C41273",
"animationId": "",
"inAnimationId": "F09FCB66-C1D5-4F73-8DC1-06B98599237C",
"outAnimationId": "36486C78-EC5F-471E-A5B0-1F41A7E60BBB",
"animationPeroid": 0,
"inAnimationDuration": 2827,
"outAnimationDuration": 705,
"letterSpacingType": 0,
"letterSpacing": 100.0,
"lineSpacing": 0.0,
"enableSpeed": false,
"combination": false,
"combinationOrder": 0
}
]
}
],
"stickerTracks": [
{
"volume": 1.0,
"show": true,
"stickers": [
{
"type": "general",
"inPoint": 8920000,
"duration": 15680000,
"scaleX": 0.8174743056297302,
"scaleY": 0.8174743056297302,
"rotation": 0.0,
"translationX": -358.4278564453125,
"translationY": -146.20086669921876,
"horizontalFlip": false,
"verticalFlip": false,
"zValue": 7,
"id": "ED5E9AF5-AF46-4FA4-8690-7F4D17168CD1",
"volume": 1.0,
"animationId": "",
"inAnimationId": "",
"outAnimationId": "",
"animationPeroid": 0,
"inAnimationDuration": 0,
"outAnimationDuration": 0,
"combination": false,
"combinationOrder": 0
}
]
},
{
"volume": 1.0,
"show": true,
"stickers": [
{
"type": "general",
"inPoint": 8920000,
"duration": 15680000,
"scaleX": 0.8174743056297302,
"scaleY": 0.8174743056297302,
"rotation": 0.0,
"translationX": -358.4278564453125,
"translationY": -146.20086669921876,
"horizontalFlip": false,
"verticalFlip": false,
"zValue": 7,
"id": "ED5E9AF5-AF46-4FA4-8690-7F4D17168CD1",
"volume": 1.0,
"animationId": "",
"inAnimationId": "",
"outAnimationId": "",
"animationPeroid": 0,
"inAnimationDuration": 0,
"outAnimationDuration": 0,
"combination": false,
"combinationOrder": 0
}
]
}
]
}
]
}
]
}
root
Field | Type | Describe | Required |
---|---|---|---|
output | string | Output the specified aspect ratio | Yes |
timelins | object[ ] | Timeline array of all aspect ratios | Yes |
timeline
Field | Type | Describe | Required |
---|---|---|---|
duration | long | The duration of the timeline, a positive integer type, in microseconds. Note: All the following units regarding the position and duration of the timeline, unless otherwise specified, are in microseconds by default. This value must be greater than or equal to the end point of all tracks (including special effects, subtitles, and stickers) in the timeline to ensure the correct duration. Otherwise, adding special effects and other elements may fail due to insufficient timeline duration, causing synthesis failure. | Yes |
enableRenderOrderByZValue | boolean | Whether to enable timeline effects (including filters, subtitles, stickers, etc.) to use zValue as the basis for mixed rendering levels. Boolean type. If it is false or this property is not set, the rendering levels are subtitles, stickers, filters, and videos from top to bottom by default. Each type of effect determines the rendering level based on its own zValue value. Different types of effects will not mix rendering levels. If it is true, different types of effects will be mixed based on their own zValue values to determine the rendering level. | No |
encoderMode | string | The encoding mode of the synthesized film, string type, if this attribute is not set, the default is crf, you can set cbr to indicate a fixed bit rate | No |
encoderType | string | Encoding format, string type, supports H.264 and MPEG2-IBP | No |
fps | int | The frame rate of the synthesized film, a positive integer type, supports 24, 25, 30, 50, 60 common values | No |
nvenc | boolean | Whether to use hard coding for synthesis, Boolean type, when set to true, if the server graphics card deployed by the synthesizer supports hardware encoding, hardware encoding will be used first, when set to false or not set, soft encoding will be used by default | No |
outputEnd | long | The end point of the interval export, integer type, -1 means the end of the timeline, outputEnd and outputStart need to be consistent when exporting pictures | No |
outputStart | long | The starting point of the interval export, integer type, outputEnd and outputStart need to be consistent when exporting images | No |
outputType | string | Output file format, string type, video supports mp4 and mov, audio supports m4a and mp3, and pictures support jpg and png | Yes |
resHeight | int | The height of the timeline, a positive integer type, must be a multiple of 2 | Yes |
resWidth | int | The width of the timeline, a positive integer type, must be a multiple of 4 | Yes |
sizeLevel | string | The resolution level of the synthesized film, integer type, represents the short side value of the generated film, and supports common values of 480, 720, 1080, and 2160 | Yes |
volume | double | Timeline volume, floating point type, if not set, the default value is 1 | No |
videoBitrate | long | The bit rate of the synthesized video, a positive integer type, for example, 6000000 means 6M. If the encoding mode is crf, it means the maximum bit rate | No |
videoSize | string | Aspect ratio | Yes |
templateId | string | Template id. If the redirect is a template application, this field will be used to identify the template to be used. | No |
timelineFlags | int | Timeline flag, integer type, basically fixed, do not modify it easily | No |
isDefaultCaptionFade | boolean | Whether to enable the fade-in and fade-out effect of ordinary unstyled subtitles by default | No |
safeFrameSize | double | Safe box percentage | No |
videoTracks | [ ]object | Video Track | No |
audioTracks | [ ]object | Audio Track | No |
timelineVideoFxTracks | [ ]object | Video Effects Track | No |
captionTracks | [ ]object | Subtitle track | No |
compoundCaptionTracks | [ ]object | Composite subtitle track | No |
stickerTracks | [ ]object | Sticker Track | No |
assets | [ ]object | All font information | No |
assets
Field | Type | Describe | Required |
---|---|---|---|
type | string | Type, currently includes font highlight subtitles subDir | Yes |
fileName | string | When type is font, the font file name | No |
fontFamily | string | When type is font, the font family information | No |
dirName | string | When type is subDir, it indicates the id of the highlighted subtitles | No |
videoTracks
Field | Type | Describe | Required |
---|---|---|---|
volume | double | Track volume, floating point type. If not set, the default value is 1. | No |
show | boolean | Indicates whether the track is visible, Boolean type, if not set, the default value is true | No |
videos | [ ]object | Video clips | Yes |
transitions | [ ]object | Transition | No |
videos
Field | Type | Describe | Required |
---|---|---|---|
volume | double | Volume, the default value is 1 | No |
blendingMode | int | Blending Mode | No |
combination | boolean | Has it been grouped? | No |
combinationOrder | int | Group number | No |
curvesSpeedString | string | Curve speed value sequence string | No |
enableClipFreezeFrame | boolean | Is it a stop motion video? | No |
extraRotation | double | The video itself has a rotation angle value | No |
fadeInDuration | long | Audio fade-in duration, default is 0 | No |
fadeOutDuration | long | Audio fade-out duration, default is 0 | No |
fillMode | int | Fill Mode | No |
freezeFrameTrimPos | long | Time point of the still frame | No |
horizontalFlip | boolean | Horizontal flip, default is false | No |
index | int | The index value of the video clip, used when adding transitions, needs to start from 0 | Yes |
inPoint | long | The starting point of the clip on the track | Yes |
outPoint | long | The ending point of the clip on the track. This property has no practical use for composite videos, but it is recommended to fill it in correctly so that you can quickly locate the cause when there is a problem in the composite. For example, if the transition between two video clips fails to be added, it may be because the outPoint of the previous clip is not equal to the inPoint of the next clip. | Yes |
trimIn | long | The trimming start point of the video clip, integer type, needs to be set at the same time as trimOut. If these two properties are not set, the default is to add the entire video file to the video clip. If these two properties are set, the video clip will be added according to the trimming start and end points. However, it should be noted that trimIn, trimOut and inPoint, outPoint, speed have a corresponding calculation relationship, that is: (outPoint-inPoint) * speed = trimOut-trimIn. To ensure the correctness of this relationship, it will not cause the video to fail to add or the effect to be incorrect. For the speed property, please refer to the speed description | Yes |
trimOut | long | The end point of the clip trimming | Yes |
speed | double | Speed, positive floating point type, default is 1, that is, no speed change effect | No |
keepAudioPitch | boolean | Whether the speed changes the pitch, true means no pitch change, false means pitch change | No |
noAudio | boolean | Whether to have audio or not. True means no audio, and the audio in the video will be silent. | No |
path | string | HTTP path of the resource | Yes |
reverse | boolean | Whether to play in reverse, use reversePath as the original video when playing in reverse | No |
reversePath | string | HTTP path for reverse video | No |
separated | boolean | Is the audio separated from the video? True means it is separated and the audio in the video will be silent. | No |
verticalFlip | boolean | Vertical flip, default is false | No |
refImageWidth | int | The width of the video material, used for video cropping coordinate transformation processing | No |
refImageHeight | int | The height of the video material, used for video cropping coordinate transformation | No |
aliasTag | string | mark | No |
enableRawSourceMode | boolean | Whether to enable the original frame mode, the default is false. Currently, it only needs to be set to true when using the Crop built-in special effect. | No |
rawFilterProcessesMode | int | The processing mode of the Raw filter is 0 by default. Currently, it is only necessary to set it to 2 when using the built-in special effect of Crop, which means that the output size of all Raw filters will be based on the actual output size of the filter, and finally adapted to the size of the timeline according to the set fill mode. | No |
videoFxs | [ ]object | Clip Effects | No |
videoFxs
Field | Type | Describe | Required |
---|---|---|---|
index | int | Special effect index, the larger the value, the later the effect | Yes |
type | string | Effect type: property/builtin/package, property indicates property effect, builtin indicates built-in effect, and package indicates effect package. | Yes |
name | string | Built-in special effect name, valid and required when type is builtin | No |
id | string | Special effects package ID, valid and required when type is package | No |
intensity | int | Special effect strength, value range [0,1] | |
isRaw | bool | Whether it is a raw special effect, true means that the special effect is processed according to the original video screen, false means that the special effect is processed after adapting the timeline coordinate system. This concept is relatively complicated, so try not to modify this value | No |
isRegional | bool | Is it a regional effect? | No |
isIgnoreBackground | bool | In case of regional effects, whether to ignore the background | No |
isInverseRegion | bool | In the case of regional effects, whether to reverse the selection of the area | No |
regionalFeatherWidth | int | In the case of regional effects, the feather value of the border | No |
fxParams | [ ]object | Special Effects Parameters | No |
keyFrames | [ ]object | Special effect keyframe parameters | No |
shape | string | Mask shape | No |
fxParams
Field | Type | Describe | Required |
---|---|---|---|
type | string | The type of the effect parameter, string type, can be float, int, bool, string, menu, color, or object. Float is a floating point number type, int is an integer type, bool is a Boolean type, string is a string type, menu is an enumeration type, color is a color type, object is an object type, and compoundPackage is a package type. | Yes |
key | string | The name of the effect parameter | Yes |
value | string | The value of the special effect parameter. Different parameter types correspond to different types of values. When the key is object type, this value does not need to be set. In this case, you need to refer to the objectValue tag | No |
id | string | When type is compoundPackage, the id of the special effects package | No |
objectValue | object | The value of the parameter, valid when type is object | No |
keyFrames
Field | Type | Describe | Required |
---|---|---|---|
type | string | The type of the effect keyframe parameter, string type. You can set it to float, int, bool, string, menu, color, or object. Float is a floating point number type, int is an integer type, bool is a Boolean type, string is a string type, menu is an enumeration type, color is a color type, object is an object type, and compoundPackage is a package type. | Yes |
time | long | Special effect keyframe timestamp, in microseconds | Yes |
key | string | The name of the effect keyframe parameter | Yes |
value | string | The value of the special effect keyframe parameter. Different parameter types correspond to different types of values. When the key is of object type, this value does not need to be set. In this case, you need to refer to the objectValue tag | No |
id | string | When type is compoundPackage, the id of the special effects package | No |
objectValue | object | The value of the parameter, valid when type is object | No |
additionalData | string | The type of keyframes set on the mask | No |
objectValue -> When the key of fxParam or KeyFrame is ellipseRegion
Field | Type | Describe | Required |
---|---|---|---|
centerX | string | The horizontal center point of the elliptical area mask | Yes |
centerY | string | The vertical center point of the elliptical area mask | Yes |
a | string | The major axis radius of the elliptical region mask | Yes |
b | string | The minor axis radius of the elliptical region mask | Yes |
angle | string | The rotation angle of the elliptical area mask | Yes |
objectValue -> When the key of fxParam or KeyFrame is region
Field | Type | Describe | Required |
---|---|---|---|
x1 | string | The x coordinate of the starting point of the square area mask | Yes |
y1 | string | The y coordinate of the starting point of the square area mask | Yes |
x2 | string | The x coordinate of the next point of the square area mask | Yes |
y2 | string | The y coordinate of the next point of the square area mask | Yes |
x3 | string | The x coordinate of the next point of the square area mask | Yes |
y3 | string | The y coordinate of the next point of the square area mask | Yes |
x4 | string | The x coordinate of the ending point of the square area mask | Yes |
y4 | string | The y coordinate of the end point of the square area mask | Yes |
objectValue -> When the key of fxParam is curvePoint
Field | Type | Describe | Required |
---|---|---|---|
timeSec | double | This represents the timestamp of hand-drawn particles, in seconds. Particle effects are complex, so modifying these parameters is not recommended. Hand-drawn particles already have timestamps and are not suitable for keyframe parameters. | Yes |
x | double | The horizontal coordinate of the particle at this moment | Yes |
y | double | The vertical coordinate of the particle at this moment | Yes |
transitions
Field | Type | Describe | Required |
---|---|---|---|
index | int | The index value of the source video clip before the transition is the index value of the video | Yes |
type | string | The type of transition, string type, can be set to builtin or package, builtin is the built-in transition type, package is the transition package type | Yes |
name | string | Built-in transition name, string type, valid and required when type is builtin | No |
id | string | The ID of the transition package, string type, valid and required when type is package | No |
duration | long | Half of the transition duration cannot be greater than the duration of the two video clips before and after. If two transitions are added before and after a clip, half of the total duration of the two transitions is greater than the clip itself, which may cause the transition effects to overlap. It is best not to exceed | No |
audioTracks
Field | Type | Describe | Required |
---|---|---|---|
audios | [ ]object | Audio properties | Yes |
show | boolean | Indicates whether the track is visible, Boolean type, if not set, the default value is true | No |
volume | double | Track volume, floating point type. If not set, the default value is 1. | No |
audios
Field | Type | Describe | Required |
---|---|---|---|
id | string | The index value of the audio clip, which is not useful at the moment. It will be used when adding transitions in the future. | Yes |
path | string | HTTP path of the audio | Yes |
inPoint | long | The starting point of the audio region on the track | Yes |
outPoint | long | The end point of the audio clip on the track | Yes |
trimIn | long | The trimming start point of the audio clip needs to be set at the same time as trimOut. Refer to the description in the video | Yes |
trimOut | long | The trimming end point of the audio clip needs to be set at the same time as trimIn. Refer to the description in the video | Yes |
volume | double | Volume, the default value is 1 | No |
speed | double | Speed, positive floating point type, default is 1, that is, no speed change effect | No |
keepAudioPitch | boolean | Whether the speed changes the pitch, true means no pitch change, false means pitch change | No |
fadeInDuration | long | Fade-in duration, default is 0 | No |
fadeOutDuration | long | Fade out duration, default is 0 | No |
curvesSpeedString | string | Curve speed value sequence string | No |
audioStreamIndex | int | The index value of the audio stream in the case of multiple audio streams | No |
channelType | string | Channel type, stereo or mono | No |
combination | boolean | Has it been grouped? | No |
combinationOrder | int | Group number | No |
aliasTag | string | mark | No |
audioFxs | object[ ] | Audio Effects | No |
audioFx
Field | Type | Describe | Required |
---|---|---|---|
index | int | Audio effect index value, integer type | Yes |
type | string | The type of audio effect, string type, can be set to builtin or volume, builtin is the built-in effect type, volume is the volume effect type | Yes |
name | string | Built-in special effect name, string type, valid and required when type is builtin | No |
keyframes | object[ ] | Special effect keyframe parameters | No |
timelineVideoFxTracks
Field | Type | Describe | Required |
---|---|---|---|
timelineVideoFx | object | Timeline Video Effects | Yes |
show | boolean | Indicates whether the track is visible, Boolean type, if not set, the default value is true | No |
timelineVideoFx
Field | Type | Describe | Required |
---|---|---|---|
inPoint | long | The starting point of the timeline filter on the timeline | Yes |
duration | long | Duration of timeline filters | Yes |
type | string | The type of timeline filter, string type, can be set to builtin or package, builtin is the built-in filter type, package is the filter package type | Yes |
id | string | The ID of the filter package, string type, valid and required when type is package | No |
name | string | Built-in filter name, string type, valid and required when type is builtin | No |
intensity | int | The intensity of the timeline filter, floating point type, value 0~1, closed interval, if not set, the default is 1 | No |
isRegional | boolean | Is it a regional effect | No |
isIgnoreBackground | boolean | In case of regional effects, whether to ignore the background | No |
isInverseRegion | boolean | In the case of regional effects, whether to reverse the selection of the area | No |
regionalFeatherWidth | int | In the case of regional effects, the feather value of the border | No |
zValue | int | The rendering level of the timeline filter, integer type, if not set, the default is 0 | No |
combination | boolean | Whether to group | No |
combinationOrder | int | Group number | No |
aliasTag | string | mark | No |
fxParams | [ ]object | Special Effects Parameters | No |
keyFrames | [ ]object | Special effect keyframe parameters | No |
shape | string | Mask shape | No |
captionTracks
Field | Type | Describe | Required |
---|---|---|---|
captions | object[ ] | Subtitle properties | Yes |
show | boolean | Indicates whether the track is visible, Boolean type, if not set, the default value is true | No |
captions
Field | Type | Describe | Required |
---|---|---|---|
type | string | The subtitle type, string type, can be set to general or modular, general is the general subtitle type, modular is the modular subtitle type | Yes |
styleId | string | The ID of the subtitle package, string type, valid when type is general. Many attributes of the subtitle are fixed in these style packages. If no adjustment is required, there is no need to set other non-required attributes. | No |
text | string | Subtitle text | Yes |
inPoint | long | The starting point of the subtitle on the timeline | Yes |
duration | long | Duration | Yes |
font | string | Subtitle font, string type, using the font family name with a subname in square brackets, for example: Noto Sans CJK SC [NotoSansCJKsc-Regular]. Setting the font family name without the subname in square brackets may result in inaccurate font family searches. | No |
fontSizeRatio | int | Subtitle font size ratio value, floating point type, calculated as fontSizeRatio=fontSize/resHeight | Yes |
scaleX | double | Subtitle horizontal scaling factor | No |
scaleY | double | Subtitle vertical scaling factor | No |
rotation | double | Subtitle rotation angle value, floating point type, counterclockwise is the positive direction | No |
translationX | double | The horizontal translation value of the subtitles is a floating point number. When setting this value, the resolution of the timeline should be considered. The center of the timeline coordinate system is (0,0). The right direction is the horizontal positive direction, and the upward direction is the vertical positive direction. For example, if translationX=resWidth/4, the subtitles will be moved horizontally to the center of the right half of the timeline. | No |
translationY | double | Subtitle vertical shift value | No |
zValue | int | The rendering level of subtitles, integer type, if not set, the default is 0 | No |
color | string | Subtitle text color, string type, using the #ffffffff color format, the color channel order is a, r, g, b, all colors are set by default in this format unless otherwise specified | No |
weight | int | The thickness of the subtitles, integer type, can be set to 400, 500, 600, 700, etc., to adjust the subtitle thickness more finely, where 700 renders the effect bold. | No |
italic | bool | Whether to set italic | No |
underline | bool | Whether to set underline | No |
align | string | Subtitle text alignment, string type, horizontal layout subtitles can be set to left, center, right three alignments, left is left alignment, center is center alignment, right is right alignment, vertical layout subtitles can be set to top, vCenter, bottom three alignments, top is top alignment, vCenter is center alignment, bottom is bottom alignment | No |
shadow | bool | Whether to set shadow | No |
shadowColor | string | Shadow Color | No |
shadowOffsetX | doule | Shadow horizontal offset value | No |
shadowOffsetY | doule | Shadow vertical offset value | No |
shadowFeather | doule | Shadow Feathering | No |
outline | bool | Whether to set the stroke | No |
outlineColor | string | Stroke color | No |
outlineWidth | int | Stroke Width | No |
bgColor | string | Background color | No |
bgRadius | double | Background corner radius | No |
contextId | string | Subtitle bubble style package ID, string type, valid when type is modular, detailed description is the same as styleId | No |
rendererId | string | Module subtitle font style package ID, string type, detailed description is the same as styleId | No |
animationId | string | Subtitle loop animation package ID, string type, valid when type is modular | No |
inAnimationId | string | Subtitle in animation package ID, string type, valid when type is modular | No |
outAnimationId | string | Subtitle out animation package ID, string type, valid when type is modular | No |
animationPeroid | long | The period value of the subtitle loop animation, in milliseconds | No |
inAnimationDuration | long | In animation duration, milliseconds | No |
outAnimationDuration | long | Out animation duration, milliseconds | No |
letterSpacingType | string | The type of word spacing. The default value is 0, which means absolute value type. Try not to modify this parameter. | No |
letterSpacing | int | Letter spacing | No |
lineSpacing | int | Line Spacing | No |
enableSpeed | boolean | Whether to enable subtitle speed change. If enabled, the subtitle will automatically change the movement speed according to the set duration to ensure smooth movement to the end. By default, if it is not enabled, the subtitle will move according to the duration and speed set in the subtitle style package. After enabling speed change, you also need to add an fxParam parameter type="bool" key="Stretch Time" value="true" to use it together | No |
isRegional | boolean | Is it a regional effect | No |
isIgnoreBackground | boolean | In case of regional effects, whether to ignore the background | No |
isInverseRegion | boolean | In the case of regional effects, whether to reverse the selection of the area | No |
regionalFeatherWidth | int | In the case of regional effects, the feather value of the border | No |
recordingUserOperationTrans | boolean | Whether to record the user's subtitle parameter settings. The default setting is true, which means recording. If it is set to false, some parameter effects will not be applied, so try not to modify this parameter | No |
anchorPointX | double | The horizontal value of the subtitle anchor point, floating point type. When setting this value, the resolution of the timeline should be considered. The center of the timeline coordinate system is (0,0). The right direction is the horizontal positive direction, and the upward direction is the vertical positive direction. Do not modify it easily, otherwise the subtitle position will be unpredictable after scaling. | No |
anchorPointY | double | The vertical value of the subtitle anchor point, floating point type, detailed description is the same as above. | No |
aliasTag | string | mark | No |
fxParams | [ ]object | Special Effects Parameters | No |
keyFrames | [ ]object | Special effect keyframe parameters | No |
spans | [ ]object | Rich text parameters | No |
followId | string | The ID of the highlight subtitle package | No |
fxGroup | string | Highlight subtitles with the same group id, marking the subtitles as the same highlighted subtitles | No |
spans
Field | Type | Describe | Required |
---|---|---|---|
type | string | [Required] The parameter name for setting rich text subtitles in this area. String type. You can set fontSizeRatio, opacity, outlineOpacity, shadowOpacity, outlineWidth, normalText, weight, underline, italic, color, outlineColor, fontFamily, and rendererId. fontSizeRatio indicates the font size, opacity indicates the text transparency, outlineOpacity indicates the stroke transparency, shadowOpacity indicates the shadow transparency, and outlineWidth indicates the stroke width. normalText sets the text to normal text style (only a body, possibly with a stroke). The parameter outlineWidth is 0, and when outlineWidth = 0, the added text style has no stroke. weight indicates the text weight, underline indicates underline, italic indicates italics, color indicates the text color, outlineColor indicates the stroke color, fontFamily indicates the font, and rendererId indicates the font style package ID. | Yes |
start | long | The starting position of this area of rich text subtitles | Yes |
end | long | The end position of this area of rich text subtitles, integer type, the area does not include the end position, it is an open interval. | Yes |
value | string | The parameter values set in this area for rich text subtitles. Different parameter names correspond to different value types. fontSizeRatio, opacity, outlineOpacity, shadowOpacity, outlineWidth, and normalText are floating-point types, weight is an integer type, underline and italic are Boolean types, color and outlineColor are color types, and fontFamily and rendererId are string types. | Yes |
compoundCaptionTracks
Field | Type | Describe | Required |
---|---|---|---|
compoundCaptions | object[ ] | Composite subtitle properties | Yes |
show | boolean | Indicates whether the track is visible, Boolean type, if not set, the default value is true | No |
compoundCaptions
Field | Type | Describe | Required |
---|---|---|---|
inPoint | long | The starting point of the combined subtitles on the timeline | Yes |
duration | long | Duration of combined subtitles | Yes |
styleId | string | ID of the combined subtitle package | Yes |
scaleX | double | Combined subtitle horizontal scaling factor | No |
scaleY | double | Combined subtitle vertical scaling factor | No |
rotation | double | The rotation angle of the combined subtitles, floating point type, counterclockwise is the positive direction | No |
translationX | double | The horizontal translation value of the combined subtitles is a floating point number. When setting this value, the timeline resolution should be considered. The center of the timeline coordinate system is (0,0). The right direction is the horizontal positive direction, and the upward direction is the vertical positive direction. For example, if translationX=resWidth/4, the combined subtitles will be horizontally moved to the center of the right half of the timeline. | No |
translationY | double | The vertical translation value of the combined subtitle, floating point type, detailed description is the same as above | No |
zValue | int | The rendering level of the combined subtitles, integer type, if not set, the default is 0 | No |
combination | boolean | Has it been grouped | No |
combinationOrder | int | Group number | No |
aliasTag | string | mark | No |
fxParams | [ ]object | Special Effects Parameters | No |
keyFrames | [ ]object | Special effect keyframe parameters | No |
captionItems | [ ]object | Subtitle properties | No |
captionItem
Field | Type | Describe | Required |
---|---|---|---|
index | int | The index value of one of the subtitles in the combined subtitles | Yes |
text | string | Combined subtitles This index value corresponds to the subtitle text | Yes |
font | string | Combined subtitles This index value corresponds to the font of the subtitles | No |
color | string | Combined subtitles This index value corresponds to the color of the subtitles | No |
stickerTracks
Field | Type | Describe | Required |
---|---|---|---|
stickers | object[ ] | Sticker attributes | Yes |
show | boolean | Indicates whether the track is visible, Boolean type, if not set, the default value is true | No |
volume | double | Track volume, floating point type. If not set, the default value is 1. | No |
stickers
Field | Type | Describe | Required |
---|---|---|---|
type | string | The type of sticker, string type, the default is general, which means the general sticker type, other types are used for subsequent expansion, do not modify this parameter | Yes |
inPoint | long | The starting point of the sticker on the timeline | Yes |
duration | long | The duration of the sticker, integer type | Yes |
id | string | Sticker Pack ID | Yes |
path | string | The local path of the custom sticker image resource, string type, valid and required when type is custom | No |
scaleX | double | Sticker horizontal scaling factor | No |
scaleY | double | Sticker vertical scaling factor | No |
rotation | double | Sticker rotation angle value, floating point type, counterclockwise is the positive direction | No |
translationX | double | The horizontal translation value of the sticker, a floating point number. When setting this value, the timeline resolution should be considered. The center of the timeline coordinate system is (0,0). The right direction is the horizontal positive direction, and the upward direction is the vertical positive direction. For example: translationX=resWidth/4 will move the sticker horizontally to the center of the right half of the timeline. | No |
translationY | double | Sticker vertical translation value, floating point type, detailed description is the same as above | No |
horizontalFlip | boolean | Flip vertically | No |
verticalFlip | boolean | Flip Horizontal | No |
zValue | int | The rendering level of the sticker, integer type, if not set, the default is 0 | No |
volume | double | The volume of the sound sticker, floating point type, if not set, the default value is 1 | No |
animationId | string | Sticker loop animation pack ID | No |
inAnimationId | string | Sticker in animation pack ID | No |
outAnimationId | string | Sticker out animation pack ID | No |
animationPeroid | long | The period value of the sticker loop animation, in milliseconds | No |
inAnimationDuration | long | The duration of the sticker in animation, in milliseconds | No |
outAnimationDuration | long | The duration of the sticker out animation, in milliseconds | No |
combination | boolean | Has it been grouped | No |
combinationOrder | int | Group number | No |
aliasTag | string | mark | No |
fxParams | [ ]object | Special Effects Parameters | No |
keyFrames | [ ]object | Special effect keyframe parameters | No |
musicLyricsTracks
Field | Type | Describe | Required |
---|---|---|---|
show | boolean | Indicates whether the subtitle track is visible. It is a Boolean type. If not set, the default value is true. | No |
styleId | string | ID of the lyrics and subtitles package, valid when type is non-modular | No |
scaleX | double | Horizontal scaling factor | No |
scaleY | double | Vertical scaling factor | No |
rotation | double | Rotation angle value, floating point type, counterclockwise is the positive direction | No |
translationX | double | Horizontal translation value, floating point type. When setting this value, the resolution of the timeline should be considered. The center of the timeline coordinate system is (0,0). The right direction is the horizontal positive direction, and the upward direction is the vertical positive direction. For example: translationX=resWidth/4, which means horizontal movement to the center of the right half of the timeline. | No |
translationY | double | Vertical translation value, floating point type, detailed description is the same as above | No |
font | string | The subtitle font is a string type, using the font family name with a subname in square brackets, for example: Noto Sans CJK SC [NotoSansCJKsc-Regular]. Setting the font family name without the subname in square brackets may result in inaccurate font family search. | No |
fontSizeRatio | double | The font size ratio of the lyrics and subtitles is a floating point number. The calculation method is fontSizeRatio=fontSize/resHeight | No |
color | string | The subtitle text color, string type, uses the #ffffffff color format, and the color channel order is a, r, g, b. All colors are set by default in this format unless otherwise specified. | No |
weight | int | The thickness of the subtitles, integer type, can be set to 400, 500, 600, 700, etc., to fine-tune the subtitle thickness. 700 renders the subtitles bold. | No |
italic | boolean | Whether to set italic | No |
underline | boolean | Whether to set underline | No |
outline | boolean | Whether to set the stroke | No |
outlineColor | string | Lyrics subtitle stroke color | No |
outlineWidth | long | Lyrics subtitle stroke width | No |
align | string | Subtitle alignment, string type. Can be set to center-vCenter, left-vCenter, right-vCenter, center-top, left-top, right-top, center-bottom, left-bottom, or right-bottom. center-vCenter is horizontally and vertically centered; left-vCenter is horizontally left-aligned and vertically centered; right-vCenter is horizontally right-aligned and vertically centered; center-top is horizontally and vertically centered; left-top is horizontally left-aligned and vertically centered; right-top is horizontally right-aligned and vertically centered; center-bottom is horizontally and vertically centered; left-bottom is horizontally left-aligned and vertically centered; right-bottom is horizontally right-aligned and vertically centered. | No |
type | string | The type of subtitles, string type, can be set to empty string, general or modular. Empty string and general are ordinary subtitle types, and modular is modular subtitle type | No |
direction | string | The subtitle layout direction, string type, can be set to vertical or horizontal, horizontal for horizontal layout, vertical for vertical layout | No |
rendererId | string | Lyrics and subtitles flower font style package ID | No |
contextId | string | Lyrics and subtitles bubble style package ID, string type, valid when type is modular | No |
animationId | string | Lyrics and subtitle loop animation package ID, string type, valid when type is modular | No |
inAnimationId | string | The ID of the in animation package for lyrics and subtitles, string type, valid when type is modular | No |
outAnimationId | string | The ID of the out animation package for lyrics and subtitles, string type, valid when type is modular | No |
letterSpacingType | int | The type of subtitle spacing. The default value is 0, indicating an absolute value. Try not to modify this parameter. | No |
letterSpacing | double | Font spacing between lyrics and subtitles | No |
lineSpacing | double | Lyrics and subtitles line spacing | No |
anchorPointX | double | The horizontal value of the subtitle anchor point, floating point type. When setting this value, the resolution of the timeline should be considered. The center of the timeline coordinate system is (0,0). The right direction is the horizontal positive direction, and the upward direction is the vertical positive direction. Do not modify it easily, otherwise the subtitle position will be unpredictable after scaling. | No |
anchorPointY | double | The vertical value of the subtitle anchor point, floating point type, detailed description is the same as above. | No |
musicLyrics | object[ ] | Sticker attributes | Yes |
musicLyrics
Field | Type | Describe | Required |
---|---|---|---|
inPoint | long | The starting point of the subtitles on the timeline | Yes |
duration | long | Length of lyrics and subtitles | Yes |
text | string | Lyrics and subtitles | No |
zValue | int | The rendering level of the lyrics and subtitles, integer type, if not set, the default is 0. In order to make the lyrics and subtitles always displayed on the top layer, it will be set to 100. You can modify this value to control the display level according to the final requirements | No |
animationPeroid | long | The period value of the subtitle loop animation, in milliseconds | No |
inAnimationDuration | long | The duration of the subtitle in animation, in milliseconds | No |
outAnimationDuration | long | The duration of the subtitle out animation, in milliseconds | No |
aliasTag | string | mark | No |
watermarkTracks
Field | Type | Describe | Required |
---|---|---|---|
stickerTracks | object[ ] | Sticker watermark, refer to the stickerTracks instructions above | No |
captionTracks | object[ ] | Text watermark, refer to the stickerTracks instructions above | No |