API | 描述 |
设置权限提供器,用于在编辑流程中处理运行时权限(如存储、麦克风等)。 | |
使用一组素材路径初始化编辑器时间线,构建工程并刷新预览与时长信息。 | |
使用已有草稿初始化编辑器,加载草稿内容并重置草稿上下文。 | |
宿主页面 onResume 时调用,根据是否需要恢复播放控制播放器恢复或刷新,并通知面板恢复。 | |
宿主页面 onPause 时调用,暂停播放器播放并通知面板暂停。 | |
判断当前播放器是否处于播放中状态。 | |
处理返回键事件,优先由面板和图层消费,返回是否已处理该返回事件。 | |
宿主销毁时调用,释放播放器相关资源并清理全局 Toast 引用等。 | |
设置素材提供器,用于 UI 内部拉取、选择或展示业务素材资源。 | |
获取预编辑层对应的 FrameLayout,用于外部在预编辑界面添加自定义视图。 | |
根据传入的枚举切换编辑层(预编辑、主编辑、全屏预览、动效编辑等)。 | |
根据传入的枚举切换功能面板(文本、配音、滤镜、贴纸等),或关闭当前面板。 | |
设置面板变化监听器,当功能面板发生切换时回调当前面板类型。 | |
设置图层变化监听器,当编辑图层发生切换时回调当前图层类型。 | |
保存当前编辑状态为草稿,返回生成的 TAVDraft 对象。 | |
获取当前的草稿对象,用于外部持久化或再次恢复。 | |
派生一个离屏编辑器实例,返回离屏编辑器标识,用于后台渲染或导出。 | |
设置“下一步”点击回调,在用户点击下一步时回调并返回当前帧等结果。 | |
设置最大可编辑时长,并根据该时长自动更新播放区间。 | |
设置最小可编辑时长,用于限制工程时长下限。 | |
获取离屏帧提供器,根据指定长边像素获取编辑结果帧序列。 | |
获取指定时间点的一帧画面 Bitmap,通过回调异步返回结果。 | |
设置编辑拦截器,在关键编辑行为(如删除、应用特效等)前做拦截和自定义处理。 | |
设置播放器状态监听器,用于监听播放状态变化(播放、暂停、结束等)。 | |
设置草稿变化监听器,当草稿内容发生变更时回调通知。 | |
设置离屏视频播放器提供者,自定义离屏播放/渲染实现。 | |
获取当前预览的渲染尺寸,用于适配 UI。 | |
设置编辑 UI 使用的资源根路径。 |
public void setPermissionProvider(ITAVPermissionProvider provider)参数名 | 类型 | 说明 |
provider | 权限提供/请求适配接口实例。 |
void public void initWithClipPath(List<String> pathList)参数名 | 类型 | 说明 |
pathList | List\\<String> | 素材路径列表,可为视频或图片文件路径。 |
void public void initWithDraft(TAVDraft draft)参数名 | 类型 | 说明 |
draft | TAVDraft | 已保存的草稿对象。 |
void onResume。public void onResume(boolean resumePlay)参数名 | 类型 | 说明 |
resumePlay | boolean | 是否自动恢复播放:true 则尽量恢复播放,false 则仅刷新画面。 |
void onPause() 回调中调用。public void onPause()void public boolean isPlaying()boolean false 交由外层处理。public boolean onBackPressed()boolean onDestroy() 中调用。public void onDestroy()void public void setMaterialProvider(ITAVMaterialProvider provider)参数名 | 类型 | 说明 |
provider | 素材数据提供接口实例。 |
void public FrameLayout getPreEditLayer()FrameLayout FrameLayout。BaseLayer,并触发图层变更回调。public void showLayer(TAVEditorUIConstants.TAVLayer layer)参数名 | 类型 | 说明 |
layer | TAVEditorUIConstants.TAVLayer | 期望展示的图层类型,例如 PRE_EDIT、MAIN_EDIT、FULL_PREVIEW、MOTION_EDIT |
void public void showPanel(TAVEditorUIConstants.TAVPanel panel)参数名 | 类型 | 说明 |
panel | TAVEditorUIConstants.TAVPanel | 需要展示的面板类型,例如 NONE、TEXT、VOICEOVER、FILTER、STICKER |
void public void setPanelChangedListener(TAVPanelChangedListener listener)参数名 | 类型 | 说明 |
listener | TAVPanelChangedListener | 面板变更监听器实例,可为 null 取消监听。 |
void public void setLayerChangedListener(TAVLayerChangedListener listener)参数名 | 类型 | 说明 |
listener | TAVLayerChangedListener | 图层变更监听器实例,可为 null 取消监听。 |
void TAVDraft 对象,并返回该草稿。public TAVDraft saveDraft()TAVDraft TAVDraft 自身字段/接口获取。saveDraft 不同,该方法仅返回内存中的草稿对象引用,不会主动保存。public TAVDraft getDraft()TAVDraft public ITAVEditOperator getEditOperator()public String forkOffscreenEditor()String public void setNextClickCallback(TAVCallback<Bitmap> callback)参数名 | 类型 | 说明 |
callback | TAVCallback\\<Bitmap> | “下一步”点击时的回调,参数为封面或当前帧 Bitmap,可为 null 取消回调。 |
void public void setMaxEditDuration(long duration)参数名 | 类型 | 说明 |
duration | long | 最大编辑时长,单位:微秒(us)。 |
void public void setMinEditDuration(long duration)参数名 | 类型 | 说明 |
duration | long | 最小编辑时长,单位:微秒(us)。 |
void public ITAVFrameProvider getFrameProvider(int longSide)参数名 | 类型 | 说明 |
longSide | int | 目标渲染图像的最长边尺寸,单位:像素。 |
ITAVFrameProvider Bitmap。public void getFrameAtTime(long timeUs, int longSide, TAVConsumer<Bitmap> consumer)参数名 | 类型 | 说明 |
timeUs | long | 目标时间点,单位:微秒(us)。 |
longSide | int | 渲染图像最长边尺寸,单位:像素。 |
consumer | TAVConsumer\\<Bitmap> | 渲染结果回调,参数为对应时间点的 Bitmap。 |
void public void setEditInterceptor(ITAVEditInterceptor interceptor)参数名 | 类型 | 说明 |
interceptor | ITAVEditInterceptor | 编辑操作拦截器实例,可为 null 取消拦截。 |
void public void setPlayerStatusListener(TAVPlayerStatusListener listener)参数名 | 类型 | 说明 |
listener | TAVPlayerStatusListener | 播放器状态监听器实例,可为 null 取消监听。 |
void public void setDraftChangeListener(TAVDraftChangeListener listener)参数名 | 类型 | 说明 |
listener | TAVDraftChangeListener | 草稿变化监听器实例,可为 null 取消监听。 |
void public void setOffScreenVideoPlayer(ITAVProvider<ITAVOffScreenVideoPlayer> provider)参数名 | 类型 | 说明 |
provider | ITAVProvider<ITAVOffScreenVideoPlayer> | 离屏播放器提供器,用于创建实际播放实例。 |
void public Size getRenderSize()Size public void setResourceRootPath(String path)参数名 | 类型 | 说明 |
path | String | 资源根目录绝对路径或前缀。 |
void boolean hasPermission(String permission)参数名 | 类型 | 说明 |
permission | String | 需要检查的权限名称(如 android.permission.RECORD_AUDIO)。 |
boolean PermissionResultReceiver 回调异步通知调用方。void requirePermission(String permission, int requestCode, PermissionResultReceiver receiver)参数名 | 类型 | 说明 |
permission | String | 需要请求的权限名称(如 android.permission.RECORD_AUDIO)。 |
requestCode | int | 权限请求的请求码,用于在上层区分不同请求场景。 |
receiver | PermissionResultReceiver | 权限请求结果回调接收器实例,用于接收授权结果。 |
void PermissionResultReceiver 异步回调通知。requirePermission 后,用户在系统权限弹框中完成操作(允许/拒绝)时触发该回调。void onPermissionResult(boolean granted)参数名 | 类型 | 说明 |
granted | boolean | 为 true 表示权限授予成功;为 false 表示用户拒绝或授权失败。 |
void ITAVBgmResultHandler 回调返回。void getBgmFile(int requestCode, ITAVBgmResultHandler handler)参数名 | 类型 | 说明 |
requestCode | int | 请求码,用于区分不同业务场景下的 BGM 选择请求。 |
handler | 背景音乐选择结果回调接口,用于返回用户选中的素材。 |
void handler 异步回调通知。TAVAlbumOptions 控制最大选择数量、素材类型以及来源等,选择结果由 ITAVAlbumResultHandler 回调返回。void getAlbumFiles(int requestCode, TAVAlbumOptions options, ITAVAlbumResultHandler handler)参数名 | 类型 | 说明 |
requestCode | int | 请求码,用于区分不同相册选择请求场景。 |
options | 相册选择配置项,包括最大选择数量、资源类型、来源等。 | |
handler | 相册选择结果回调接口,用于返回用户选中的素材列表。 |
void handler 异步回调通知。ITAVMaterialProvider.getBgmFile(...) 触发的 BGM 选择流程结束后(无论成功或失败),都需要回调该方法,通知 UIKit 请求对应的选择结果。 void onBgmSelectResult(int requestCode, TAVBgmResource resource)参数名 | 类型 | 说明 |
requestCode | int | 本次 BGM 选择请求的请求码,用于区分不同业务场景下的选择结果。 |
resource | TAVBgmResource | 选择到的 BGM 资源对象;具体字段由 TAVBgmResource 定义,可能在用户取消时为 null。 |
void ITAVMaterialProvider.getAlbumFiles(...) 触发的相册选择流程结束后(无论用户是否真正选择了素材),都需要回调该方法,通知 UIKit 请求对应的选择结果。 void onAlbumSelectResult(int requestCode, List<TAVAlbumResource> resourceList)参数名 | 类型 | 说明 |
requestCode | int | 本次相册选择请求的请求码,用于区分不同业务场景的选择结果。 |
resourceList | List\\<TAVAlbumResource> | 用户选中的相册素材列表;当用户未选择或取消时可能为空列表。 |
void getAlbumFiles 时传入,用于指导 UI 和素材过滤逻辑。字段名 | 类型 | 说明 |
count | int | 可选择的最大素材数量,例如 1 表示仅可选择单个文件。 |
type | 资源类型(例如仅视频、仅图片或混合类型),由 TAVBaseResource.TYPE 定义。 | |
from | TAVEditorUIConstants.TAVResourceFrom | 素材来源类型(如系统相册、内置素材等),由 TAVResourceFrom 定义。 |
枚举值 | 说明 |
BGM | 背景音乐资源,仅音频类型。 |
PHOTO | 图片资源,仅静态图片类型。 |
VIDEO | 视频资源,仅视频文件类型。 |
MULTI | 多类型混合资源,可同时包含图片与视频等。 |
void onPanelChanged(TAVEditorUIConstants.TAVPanel panel)参数名 | 类型 | 说明 |
panel | TAVEditorUIConstants.TAVPanel | 当前展示的面板类型,例如 TEXT、VOICEOVER、FILTER 等。 |
void void onLayerChanged(TAVEditorUIConstants.TAVLayer layer)参数名 | 类型 | 说明 |
layer | TAVEditorUIConstants.TAVLayer | 当前展示的图层类型,例如 PRE_EDIT、MAIN_EDIT 等。 |
void API | 描述 |
获取当前工程中的所有主轨道片段模型列表 List<TAVClipModel>。 | |
获取当前工程中的所有背景音乐模型列表 List<TAVBgmModel>。 | |
获取当前工程中的所有配音模型列表 List<TAVVoiceoverModel>。 | |
获取当前工程中的所有文本模型列表 List<TAVTextModel>。 | |
获取当前工程中的所有画中画模型列表 List<TAVOverlayModel>。 | |
批量更新编辑模型列表(如 BGM、文本、配音、画中画),按传入的模型内容同步更新工程。 | |
给当前工程新增编辑模型列表。 | |
从当前工程中批量移除指定的编辑模型列表。 | |
激活指定的编辑模型,通常用于使该元素成为当前选中项并进入可编辑状态。 |
List<TAVClipModel> getClipModels()List<TAVClipModel> List<TAVBgmModel> getBgmModels()List<TAVBgmModel> List<TAVVoiceoverModel> getVoiceoverModels()List<TAVVoiceoverModel> List<TAVTextModel> getTextModels()List<TAVTextModel> List<TAVOverlayModel> getOverlayModels()List<TAVOverlayModel> void updateEditModels(List<? extends TAVEditModel<?>> models)参数名 | 类型 | 说明 |
models | List<? extends TAVEditModel<?>> | 需要更新的编辑模型列表,支持 BGM、配音、文字等类型。 |
void void setEditModels(List<? extends TAVEditModel<?>> models)参数名 | 类型 | 说明 |
models | List<? extends TAVEditModel<?>> | 新增的编辑模型列表。 |
void void removeEditModel(List<? extends TAVEditModel<?>> models)参数名 | 类型 | 说明 |
models | List<? extends TAVEditModel<?>> | 需要被删除的编辑模型列表,按模型 ID/标识进行移除。 |
void void activeEditModel(TAVEditModel<?> model)参数名 | 类型 | 说明 |
model | TAVEditModel<?> | 需要激活的编辑模型,可为 BGM、配音、文字等。 |
void 文档反馈