Skip to content

Update Notes

Update TimeUpdate Notes
2025.07.301. 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.02Starting 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.13Added watermarkTracks related field descriptions
2024.08.011. Added anchorPointX and anchorPointY fields under captions and musicLyricsTracks
2024.07.301. Added enableRawSourceMode and rawFilterProcessesMode fields under videos
2024.04.251. Added the timelineFlags, isDefaultCaptionFade, and safeFrameSize fields under timeline.
2. Added the refImageWidth and refImageHeight fields under videos.
2024.04.221. 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.111. Added aliasTag field to audio, caption, compoundCaption, musicLyric, sticker, timelineVideoFx, and video

Some agreements

  1. Unless otherwise specified, the time unit is microseconds.
  2. The color value uses the #ffffffff color format, and the color channel order is a, r, g, b
  3. For built-in effect names and parameters, see https://www.meishesdk.com/android/doc_ch/html/content/FxNameList_8md.html
  4. 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

FieldTypeDescribeRequired
outputstringOutput the specified aspect ratioYes
timelinsobject[ ]Timeline array of all aspect ratiosYes

timeline

FieldTypeDescribeRequired
durationlongThe 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
enableRenderOrderByZValuebooleanWhether 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
encoderModestringThe 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 rateNo
encoderTypestringEncoding format, string type, supports H.264 and MPEG2-IBPNo
fpsintThe frame rate of the synthesized film, a positive integer type, supports 24, 25, 30, 50, 60 common valuesNo
nvencbooleanWhether 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 defaultNo
outputEndlongThe end point of the interval export, integer type, -1 means the end of the timeline, outputEnd and outputStart need to be consistent when exporting picturesNo
outputStartlongThe starting point of the interval export, integer type, outputEnd and outputStart need to be consistent when exporting imagesNo
outputTypestringOutput file format, string type, video supports mp4 and mov, audio supports m4a and mp3, and pictures support jpg and pngYes
resHeightintThe height of the timeline, a positive integer type, must be a multiple of 2Yes
resWidthintThe width of the timeline, a positive integer type, must be a multiple of 4Yes
sizeLevelstringThe 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 2160Yes
volumedoubleTimeline volume, floating point type, if not set, the default value is 1No
videoBitratelongThe 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 rateNo
videoSizestringAspect ratioYes
templateIdstringTemplate id. If the redirect is a template application, this field will be used to identify the template to be used.No
timelineFlagsintTimeline flag, integer type, basically fixed, do not modify it easilyNo
isDefaultCaptionFadebooleanWhether to enable the fade-in and fade-out effect of ordinary unstyled subtitles by defaultNo
safeFrameSizedoubleSafe box percentageNo
videoTracks[ ]objectVideo TrackNo
audioTracks[ ]objectAudio TrackNo
timelineVideoFxTracks[ ]objectVideo Effects TrackNo
captionTracks[ ]objectSubtitle trackNo
compoundCaptionTracks[ ]objectComposite subtitle trackNo
stickerTracks[ ]objectSticker TrackNo
assets[ ]objectAll font informationNo

assets

FieldTypeDescribeRequired
typestringType, currently includes
font
highlight subtitles subDir
Yes
fileNamestringWhen type is font, the font file nameNo
fontFamilystringWhen type is font, the font family informationNo
dirNamestringWhen type is subDir, it indicates the id of the highlighted subtitlesNo

videoTracks

FieldTypeDescribeRequired
volumedoubleTrack volume, floating point type. If not set, the default value is 1.No
showbooleanIndicates whether the track is visible, Boolean type, if not set, the default value is trueNo
videos[ ]objectVideo clipsYes
transitions[ ]objectTransitionNo

videos

FieldTypeDescribeRequired
volumedoubleVolume, the default value is 1No
blendingModeintBlending ModeNo
combinationbooleanHas it been grouped?No
combinationOrderintGroup numberNo
curvesSpeedStringstringCurve speed value sequence stringNo
enableClipFreezeFramebooleanIs it a stop motion video?No
extraRotationdoubleThe video itself has a rotation angle valueNo
fadeInDurationlongAudio fade-in duration, default is 0No
fadeOutDurationlongAudio fade-out duration, default is 0No
fillModeintFill ModeNo
freezeFrameTrimPoslongTime point of the still frameNo
horizontalFlipbooleanHorizontal flip, default is falseNo
indexintThe index value of the video clip, used when adding transitions, needs to start from 0Yes
inPointlongThe starting point of the clip on the trackYes
outPointlongThe 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
trimInlongThe 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 descriptionYes
trimOutlongThe end point of the clip trimmingYes
speeddoubleSpeed, positive floating point type, default is 1, that is, no speed change effectNo
keepAudioPitchbooleanWhether the speed changes the pitch, true means no pitch change, false means pitch changeNo
noAudiobooleanWhether to have audio or not. True means no audio, and the audio in the video will be silent.No
pathstringHTTP path of the resourceYes
reversebooleanWhether to play in reverse, use reversePath as the original video when playing in reverseNo
reversePathstringHTTP path for reverse videoNo
separatedbooleanIs the audio separated from the video? True means it is separated and the audio in the video will be silent.No
verticalFlipbooleanVertical flip, default is falseNo
refImageWidthintThe width of the video material, used for video cropping coordinate transformation processingNo
refImageHeightintThe height of the video material, used for video cropping coordinate transformationNo
aliasTagstringmarkNo
enableRawSourceModebooleanWhether 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
rawFilterProcessesModeintThe 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[ ]objectClip EffectsNo

videoFxs

FieldTypeDescribeRequired
indexintSpecial effect index, the larger the value, the later the effectYes
typestringEffect type: property/builtin/package, property indicates property effect, builtin indicates built-in effect, and package indicates effect package.Yes
namestringBuilt-in special effect name, valid and required when type is builtinNo
idstringSpecial effects package ID, valid and required when type is packageNo
intensityintSpecial effect strength,
value range [0,1]
isRawboolWhether 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 valueNo
isRegionalboolIs it a regional effect?No
isIgnoreBackgroundboolIn case of regional effects, whether to ignore the backgroundNo
isInverseRegionboolIn the case of regional effects, whether to reverse the selection of the areaNo
regionalFeatherWidthintIn the case of regional effects, the feather value of the borderNo
fxParams[ ]objectSpecial Effects ParametersNo
keyFrames[ ]objectSpecial effect keyframe parametersNo
shapestringMask shapeNo
fxParams
FieldTypeDescribeRequired
typestringThe 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
keystringThe name of the effect parameterYes
valuestringThe 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 tagNo
idstringWhen type is compoundPackage, the id of the special effects packageNo
objectValueobjectThe value of the parameter, valid when type is objectNo
keyFrames
FieldTypeDescribeRequired
typestringThe 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
timelongSpecial effect keyframe timestamp, in microsecondsYes
keystringThe name of the effect keyframe parameterYes
valuestringThe 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 tagNo
idstringWhen type is compoundPackage, the id of the special effects packageNo
objectValueobjectThe value of the parameter, valid when type is objectNo
additionalDatastringThe type of keyframes set on the maskNo
objectValue -> When the key of fxParam or KeyFrame is ellipseRegion
FieldTypeDescribeRequired
centerXstringThe horizontal center point of the elliptical area maskYes
centerYstringThe vertical center point of the elliptical area maskYes
astringThe major axis radius of the elliptical region maskYes
bstringThe minor axis radius of the elliptical region maskYes
anglestringThe rotation angle of the elliptical area maskYes
objectValue -> When the key of fxParam or KeyFrame is region
FieldTypeDescribeRequired
x1stringThe x coordinate of the starting point of the square area maskYes
y1stringThe y coordinate of the starting point of the square area maskYes
x2stringThe x coordinate of the next point of the square area maskYes
y2stringThe y coordinate of the next point of the square area maskYes
x3stringThe x coordinate of the next point of the square area maskYes
y3stringThe y coordinate of the next point of the square area maskYes
x4stringThe x coordinate of the ending point of the square area maskYes
y4stringThe y coordinate of the end point of the square area maskYes
objectValue -> When the key of fxParam is curvePoint
FieldTypeDescribeRequired
timeSecdoubleThis 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
xdoubleThe horizontal coordinate of the particle at this momentYes
ydoubleThe vertical coordinate of the particle at this momentYes

transitions

FieldTypeDescribeRequired
indexintThe index value of the source video clip before the transition is the index value of the videoYes
typestringThe type of transition, string type, can be set to builtin or package, builtin is the built-in transition type, package is the transition package typeYes
namestringBuilt-in transition name, string type, valid and required when type is builtinNo
idstringThe ID of the transition package, string type, valid and required when type is packageNo
durationlongHalf 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 exceedNo

audioTracks

FieldTypeDescribeRequired
audios[ ]objectAudio propertiesYes
showbooleanIndicates whether the track is visible, Boolean type, if not set, the default value is trueNo
volumedoubleTrack volume, floating point type. If not set, the default value is 1.No

audios

FieldTypeDescribeRequired
idstringThe index value of the audio clip, which is not useful at the moment. It will be used when adding transitions in the future.Yes
pathstringHTTP path of the audioYes
inPointlongThe starting point of the audio region on the trackYes
outPointlongThe end point of the audio clip on the trackYes
trimInlongThe trimming start point of the audio clip needs to be set at the same time as trimOut. Refer to the description in the videoYes
trimOutlongThe trimming end point of the audio clip needs to be set at the same time as trimIn. Refer to the description in the videoYes
volumedoubleVolume, the default value is 1No
speeddoubleSpeed, positive floating point type, default is 1, that is, no speed change effectNo
keepAudioPitchbooleanWhether the speed changes the pitch, true means no pitch change, false means pitch changeNo
fadeInDurationlongFade-in duration, default is 0No
fadeOutDurationlongFade out duration, default is 0No
curvesSpeedStringstringCurve speed value sequence stringNo
audioStreamIndexintThe index value of the audio stream in the case of multiple audio streamsNo
channelTypestringChannel type, stereo or monoNo
combinationbooleanHas it been grouped?No
combinationOrderintGroup numberNo
aliasTagstringmarkNo
audioFxsobject[ ]Audio EffectsNo

audioFx

FieldTypeDescribeRequired
indexintAudio effect index value, integer typeYes
typestringThe 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 typeYes
namestringBuilt-in special effect name, string type, valid and required when type is builtinNo
keyframesobject[ ]Special effect keyframe parametersNo

timelineVideoFxTracks

FieldTypeDescribeRequired
timelineVideoFxobjectTimeline Video EffectsYes
showbooleanIndicates whether the track is visible, Boolean type, if not set, the default value is trueNo

timelineVideoFx

FieldTypeDescribeRequired
inPointlongThe starting point of the timeline filter on the timelineYes
durationlongDuration of timeline filtersYes
typestringThe 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 typeYes
idstringThe ID of the filter package, string type, valid and required when type is packageNo
namestringBuilt-in filter name, string type, valid and required when type is builtinNo
intensityintThe intensity of the timeline filter, floating point type, value 0~1, closed interval, if not set, the default is 1No
isRegionalbooleanIs it a regional effectNo
isIgnoreBackgroundbooleanIn case of regional effects, whether to ignore the backgroundNo
isInverseRegionbooleanIn the case of regional effects, whether to reverse the selection of the areaNo
regionalFeatherWidthintIn the case of regional effects, the feather value of the borderNo
zValueintThe rendering level of the timeline filter, integer type, if not set, the default is 0No
combinationbooleanWhether to groupNo
combinationOrderintGroup numberNo
aliasTagstringmarkNo
fxParams[ ]objectSpecial Effects ParametersNo
keyFrames[ ]objectSpecial effect keyframe parametersNo
shapestringMask shapeNo

captionTracks

FieldTypeDescribeRequired
captionsobject[ ]Subtitle propertiesYes
showbooleanIndicates whether the track is visible, Boolean type, if not set, the default value is trueNo

captions

FieldTypeDescribeRequired
typestringThe subtitle type, string type, can be set to general or modular, general is the general subtitle type, modular is the modular subtitle typeYes
styleIdstringThe 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
textstringSubtitle textYes
inPointlongThe starting point of the subtitle on the timelineYes
durationlongDurationYes
fontstringSubtitle 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
fontSizeRatiointSubtitle font size ratio value, floating point type, calculated as fontSizeRatio=fontSize/resHeightYes
scaleXdoubleSubtitle horizontal scaling factorNo
scaleYdoubleSubtitle vertical scaling factorNo
rotationdoubleSubtitle rotation angle value, floating point type, counterclockwise is the positive directionNo
translationXdoubleThe 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
translationYdoubleSubtitle vertical shift valueNo
zValueintThe rendering level of subtitles, integer type, if not set, the default is 0No
colorstringSubtitle 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 specifiedNo
weightintThe 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
italicboolWhether to set italicNo
underlineboolWhether to set underlineNo
alignstringSubtitle 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 alignmentNo
shadowboolWhether to set shadowNo
shadowColorstringShadow ColorNo
shadowOffsetXdouleShadow horizontal offset valueNo
shadowOffsetYdouleShadow vertical offset valueNo
shadowFeatherdouleShadow FeatheringNo
outlineboolWhether to set the strokeNo
outlineColorstringStroke colorNo
outlineWidthintStroke WidthNo
bgColorstringBackground colorNo
bgRadiusdoubleBackground corner radiusNo
contextIdstringSubtitle bubble style package ID, string type, valid when type is modular, detailed description is the same as styleIdNo
rendererIdstringModule subtitle font style package ID, string type, detailed description is the same as styleIdNo
animationIdstringSubtitle loop animation package ID, string type, valid when type is modularNo
inAnimationIdstringSubtitle in animation package ID, string type, valid when type is modularNo
outAnimationIdstringSubtitle out animation package ID, string type, valid when type is modularNo
animationPeroidlongThe period value of the subtitle loop animation, in millisecondsNo
inAnimationDurationlongIn animation duration, millisecondsNo
outAnimationDurationlongOut animation duration, millisecondsNo
letterSpacingTypestringThe type of word spacing. The default value is 0, which means absolute value type. Try not to modify this parameter.No
letterSpacingintLetter spacingNo
lineSpacingintLine SpacingNo
enableSpeedbooleanWhether 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 togetherNo
isRegionalbooleanIs it a regional effectNo
isIgnoreBackgroundbooleanIn case of regional effects, whether to ignore the backgroundNo
isInverseRegionbooleanIn the case of regional effects, whether to reverse the selection of the areaNo
regionalFeatherWidthintIn the case of regional effects, the feather value of the borderNo
recordingUserOperationTransbooleanWhether 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 parameterNo
anchorPointXdoubleThe 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
anchorPointYdoubleThe vertical value of the subtitle anchor point, floating point type, detailed description is the same as above.No
aliasTagstringmarkNo
fxParams[ ]objectSpecial Effects ParametersNo
keyFrames[ ]objectSpecial effect keyframe parametersNo
spans[ ]objectRich text parametersNo
followIdstringThe ID of the highlight subtitle packageNo
fxGroupstringHighlight subtitles with the same group id, marking the subtitles as the same highlighted subtitlesNo

spans

FieldTypeDescribeRequired
typestring[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
startlongThe starting position of this area of rich text subtitlesYes
endlongThe 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
valuestringThe 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

FieldTypeDescribeRequired
compoundCaptionsobject[ ]Composite subtitle propertiesYes
showbooleanIndicates whether the track is visible, Boolean type, if not set, the default value is trueNo

compoundCaptions

FieldTypeDescribeRequired
inPointlongThe starting point of the combined subtitles on the timelineYes
durationlongDuration of combined subtitlesYes
styleIdstringID of the combined subtitle packageYes
scaleXdoubleCombined subtitle horizontal scaling factorNo
scaleYdoubleCombined subtitle vertical scaling factorNo
rotationdoubleThe rotation angle of the combined subtitles, floating point type, counterclockwise is the positive directionNo
translationXdoubleThe 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
translationYdoubleThe vertical translation value of the combined subtitle, floating point type, detailed description is the same as aboveNo
zValueintThe rendering level of the combined subtitles, integer type, if not set, the default is 0No
combinationbooleanHas it been groupedNo
combinationOrderintGroup numberNo
aliasTagstringmarkNo
fxParams[ ]objectSpecial Effects ParametersNo
keyFrames[ ]objectSpecial effect keyframe parametersNo
captionItems[ ]objectSubtitle propertiesNo

captionItem

FieldTypeDescribeRequired
indexintThe index value of one of the subtitles in the combined subtitlesYes
textstringCombined subtitles This index value corresponds to the subtitle textYes
fontstringCombined subtitles This index value corresponds to the font of the subtitlesNo
colorstringCombined subtitles This index value corresponds to the color of the subtitlesNo

stickerTracks

FieldTypeDescribeRequired
stickersobject[ ]Sticker attributesYes
showbooleanIndicates whether the track is visible, Boolean type, if not set, the default value is trueNo
volumedoubleTrack volume, floating point type. If not set, the default value is 1.No

stickers

FieldTypeDescribeRequired
typestringThe 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 parameterYes
inPointlongThe starting point of the sticker on the timelineYes
durationlongThe duration of the sticker, integer typeYes
idstringSticker Pack IDYes
pathstringThe local path of the custom sticker image resource, string type, valid and required when type is customNo
scaleXdoubleSticker horizontal scaling factorNo
scaleYdoubleSticker vertical scaling factorNo
rotationdoubleSticker rotation angle value, floating point type, counterclockwise is the positive directionNo
translationXdoubleThe 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
translationYdoubleSticker vertical translation value, floating point type, detailed description is the same as aboveNo
horizontalFlipbooleanFlip verticallyNo
verticalFlipbooleanFlip HorizontalNo
zValueintThe rendering level of the sticker, integer type, if not set, the default is 0No
volumedoubleThe volume of the sound sticker, floating point type, if not set, the default value is 1No
animationIdstringSticker loop animation pack IDNo
inAnimationIdstringSticker in animation pack IDNo
outAnimationIdstringSticker out animation pack IDNo
animationPeroidlongThe period value of the sticker loop animation, in millisecondsNo
inAnimationDurationlongThe duration of the sticker in animation, in millisecondsNo
outAnimationDurationlongThe duration of the sticker out animation, in millisecondsNo
combinationbooleanHas it been groupedNo
combinationOrderintGroup numberNo
aliasTagstringmarkNo
fxParams[ ]objectSpecial Effects ParametersNo
keyFrames[ ]objectSpecial effect keyframe parametersNo

musicLyricsTracks

FieldTypeDescribeRequired
showbooleanIndicates whether the subtitle track is visible. It is a Boolean type. If not set, the default value is true.No
styleIdstringID of the lyrics and subtitles package, valid when type is non-modularNo
scaleXdoubleHorizontal scaling factorNo
scaleYdoubleVertical scaling factorNo
rotationdoubleRotation angle value, floating point type, counterclockwise is the positive directionNo
translationXdoubleHorizontal 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
translationYdoubleVertical translation value, floating point type, detailed description is the same as aboveNo
fontstringThe 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
fontSizeRatiodoubleThe font size ratio of the lyrics and subtitles is a floating point number. The calculation method is fontSizeRatio=fontSize/resHeightNo
colorstringThe 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
weightintThe 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
italicbooleanWhether to set italicNo
underlinebooleanWhether to set underlineNo
outlinebooleanWhether to set the strokeNo
outlineColorstringLyrics subtitle stroke colorNo
outlineWidthlongLyrics subtitle stroke widthNo
alignstringSubtitle 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
typestringThe 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 typeNo
directionstringThe subtitle layout direction, string type, can be set to vertical or horizontal, horizontal for horizontal layout, vertical for vertical layoutNo
rendererIdstringLyrics and subtitles flower font style package IDNo
contextIdstringLyrics and subtitles bubble style package ID, string type, valid when type is modularNo
animationIdstringLyrics and subtitle loop animation package ID, string type, valid when type is modularNo
inAnimationIdstringThe ID of the in animation package for lyrics and subtitles, string type, valid when type is modularNo
outAnimationIdstringThe ID of the out animation package for lyrics and subtitles, string type, valid when type is modularNo
letterSpacingTypeintThe type of subtitle spacing. The default value is 0, indicating an absolute value. Try not to modify this parameter.No
letterSpacingdoubleFont spacing between lyrics and subtitlesNo
lineSpacingdoubleLyrics and subtitles line spacingNo
anchorPointXdoubleThe 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
anchorPointYdoubleThe vertical value of the subtitle anchor point, floating point type, detailed description is the same as above.No
musicLyricsobject[ ]Sticker attributesYes

musicLyrics

FieldTypeDescribeRequired
inPointlongThe starting point of the subtitles on the timelineYes
durationlongLength of lyrics and subtitlesYes
textstringLyrics and subtitlesNo
zValueintThe 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 requirementsNo
animationPeroidlongThe period value of the subtitle loop animation, in millisecondsNo
inAnimationDurationlongThe duration of the subtitle in animation, in millisecondsNo
outAnimationDurationlongThe duration of the subtitle out animation, in millisecondsNo
aliasTagstringmarkNo

watermarkTracks

FieldTypeDescribeRequired
stickerTracksobject[ ]Sticker watermark, refer to the stickerTracks instructions aboveNo
captionTracksobject[ ]Text watermark, refer to the stickerTracks instructions aboveNo