一、相关接口类
| 接口类名 | 描述 |
| TAVEditor | SDK 操作入口类。 |
二、接口方法汇总
| 方法 | 参数 | 说明 |
| addMotionEffect(String path, long startOffset, long duration) | path:动效路径。startOffset:开始时间(微秒)。duration:持续时间(微秒)。 | 添加动效并返回 ID。 |
| addMotionEffect(String path, long startOffset, long duration, int scaleMode) | path:动效路径。startOffset:开始时间(微秒)。duration:持续时间(微秒)。scaleMode:缩放模式。 | 添加带缩放模式的动效。 |
| updateMotionEffectPlayRange(int motionId, long startOffset, long duration) | motionId:动效 ID。startOffset:新开始时间(微秒)。duration:新持续时间(微秒)。 | 更新动效播放时间。 |
| removeMotionEffect(int motionId) | motionId:动效 ID。 | 删除动效。 |
三、缩放模式常量
位于 TAVEditorConstants,用于 addMotionEffect(…, int scaleMode) 的 scaleMode 入参:
| 常量 | 值 | 对应 PAGScaleMode | 说明 |
| TAVEditorConstants.SCALE_MODE_NONE | 0 | None | 不缩放,素材按原始尺寸渲染。 |
| TAVEditorConstants.SCALE_MODE_STRETCH | 1 | Stretch | 横纵分别拉伸铺满区域,可能变形。 |
| TAVEditorConstants.SCALE_MODE_LETTER_BOX | 2 | LetterBox | 等比缩放至完整可见,可能留黑边。 |
| TAVEditorConstants.SCALE_MODE_ZOOM | 3 | Zoom | 等比缩放至铺满区域,可能裁剪。 |
四、添加动效
// 基本添加方式int motionId = editor.addMotionEffect(path, startOffset, duration);// 带缩放模式的添加方式(二选一,不要与上面同时声明同名变量)int scaledMotionId = editor.addMotionEffect(path, startOffset, duration, scaleMode);
五、调整动效播放时间
/** * 调整动效播放时间 * * @param motionId 动效ID * @param startOffset 开始时间(微秒) * @param duration 持续时间(微秒) */editor.updateMotionEffectPlayRange(motionId, startOffset, duration);
六、删除动效
/** * 删除动效 * * @param motionId 动效ID */editor.removeMotionEffect(motionId);