AI MediaKit 的视频流畅度提升工具,旨在解决视频(尤其是 AI 生成视频)中常见的运动不流畅问题。工具基于视频画面与运动信息,自动识别并修复两类核心问题:运动节奏突变(周期性卡顿)和连续多帧画面完全相同(重复帧)。通过光流、运动矢量等算法,工具能够智能地生成中间帧以补完缺失的运动过程,或删除冗余的重复帧,从而在不改变分辨率的前提下,显著改善视频的流畅度,还原连续、自然的运动画面。
该工具尤其适用于修复由 Seedance 系列模型生成的、存在概率性卡顿的视频,也广泛应用于低帧率转码、录屏、游戏画面、直播回放等易出现卡顿或重复帧的场景。
适用场景
视频流畅度提升适用于任何存在运动不连续问题的视频,典型场景包括:
- AI 生成视频修复:Seedance 等视频生成模型在输出时可能出现概率性的运动节奏突变或重复帧,导致画面卡一下或连续多帧完全相同。您可以在拿到生成结果后调用本工具,自动补齐缺失的运动过程、删除冗余重复帧,让画面恢复自然流畅。
- 低帧率或转码视频优化:对低帧率素材或经过多次转码、可能存在丢帧的视频,通过智能插帧还原连续运动。
- 录屏、游戏与直播回放:录屏、游戏画面或直播回放中因采集/编码抖动产生的周期性卡顿,可自动检测并修复。
快速入门:检测并修复视频卡顿
本节以对一段视频执行默认的卡顿检测与修复为例,演示视频流畅度提升的完整流程。
准备工作
- 获取访问凭证:在开始之前,请访问 AI MediaKit 控制台的 API Key 管理页面,创建并获取 MediaKit API Key。
- 准备视频文件:准备一个待处理的视频文件,并将其上传至公网可访问的服务器或视频点播服务中,以获取可供 API 调用的 URL。
操作流程
视频流畅度提升是一个异步任务,其标准流程如下:
- 成功调用 POST /api/v1/tools/enhance-video-smoothness 提交任务后,您将获得一个任务 ID。
- 您可以轮询 GET /api/v1/tasks/{task_id} 接口,直到任务状态 status 变为 completed;或者使用事件回调自动接收任务状态变化。
- 任务完成后,解析响应中的 result 字段,即可在 video_url 中获取修复后视频的下载地址。若视频无需修复或未启用任何修复,则响应中不返回 video_url。
第 1 步:提交流畅度提升任务
说明
- 将 {Your_API_Key} 替换为您的有效 API Key。
- 将 video_url 替换为您自己的视频地址。
- 默认情况下,工具将同时开启周期性卡顿检测和重复帧检测,并对检测到的问题自动修复,直接返回修复后的视频。当您需要关闭修复或使用进阶功能时,可传入 periodic_stutter_detect 或 duplicate_frame_detect 配置对象。详见进阶使用。
请求成功后,您会收到如下包含 task_id 的响应,请保存此 ID 用于后续查询。
第 2 步:获取修复结果
卡顿修复任务需要一定的处理时间(与视频文件大小、时长相关)。您需要轮询查询任务信息 API,直到任务状态 status 变为 completed。 说明
将 URL 末尾的 {task_id} 替换为第 1 步返回的任务 ID。
当任务成功完成后,您将收到如下响应。result.video_url 即为修复后视频的下载地址(有效期为 24 小时,请及时保存产物)。
进阶使用
默认调用已能覆盖绝大多数场景。若您有更精细的控制需求,可参考以下进阶用法。
如果您同时开启了多种修复功能,了解其内部执行链路有助于更好地预期结果。
工具内部按以下顺序串行执行:
- 周期性卡顿处理:首先进行周期性卡顿检测。如果 periodic_stutter_repair 为 true,则执行修复(智能插帧)。
- 重复帧处理:然后进行重复帧检测。如果 duplicate_frame_repair 为 true,则执行修复(删除重复帧)。
步骤 2 的输入依赖于步骤 1 的结果:
- 若步骤 1 的周期性卡顿修复成功执行,则步骤 2 的重复帧检测将基于修复后的中间产物进行。
- 若步骤 1 的修复因效果不佳而被自动跳过,则步骤 2 的重复帧检测将基于原始视频进行。
- 自动跳过机制:两个修复环节(周期性卡顿、重复帧)各自独立进行效果评估。如果算法评估认为当前环节的修复无法带来有效提升或可能产生负向效果,将自动跳过该环节的修复操作。这确保了输出产物的质量。即使修复被跳过,任务结果中的检测明细(如 inserted_frames_detail)仍会正常返回。
- 人工指定插帧的最高优先级:通过 insert_frame_indices 参数进行的人工指定插帧不受效果评估机制的影响。只要 periodic_stutter_repair 为 true,您手动指定的帧就必然会被插入。以下示例表示在第 80 帧与第 81 帧之间、第 120 帧与第 121 帧之间各插入一帧。
如果您只想评估视频的卡顿与重复帧情况,而不产出修复后的视频,可将对应的修复开关设为 false。此时任务仅返回检测摘要信息(如 inserted_frames_detail、duplicate_frames_detail),不返回 video_url,且计费会发生变化,详见计费说明。 保持帧率一致
默认情况下,修复后视频的帧率可能因插帧而高于原视频,此时修复效果最优。若您的业务对帧率一致性有要求(如需保持与原片相同的总帧数),可将 align_source_fps 设为 true。开启后,工具会在插入补偿帧的同时删除等量的低变化帧,使总帧数与时长保持不变。
参考信息
使用限制
计费说明
视频流畅度提升的计费按分钟计,根据是否实际执行了修复操作分为两档:
计费模式的关键在于任务的最终执行结果:
- 如果任务最终输出了修复后的视频(即结果中包含 video_url),则按检测并修复计费。
- 如果任务未输出视频(即结果中不包含 video_url),则按仅检测计费。即便您开启了修复开关,如果算法检测后认为视频无需修复或因效果评估而跳过修复,任务依然会按更优惠的仅检测模式计费。
相关 API 文档