视频智能修复算子,基于多模态大模型实现视频水印和字幕智能擦除能力。支持自动检测和擦除视频中的水印、字幕、滚动字幕等不需要的内容,输出修复后的视频文件。
算子 ID : las_video_inpaint
输入视频:横版视频-水印+字幕
核心参数
"targets": ["watermark", "subtitle"], "detection_precise_mode": "true", "inpainting_backend": "pixel_replace"
输出结果
输入视频:横版视频-动态水印
核心参数
"targets": ["watermark"], "detection_precise_mode": "true", "inpainting_backend": "pixel_generate"
输出结果
输入视频:竖屏视频-动态水印
核心参数
"targets": ["watermark"], "detection_precise_mode": "true", "inpainting_backend": "pixel_generate"
输出结果
输入视频:横版视频-滚动字幕
核心参数
"targets": ["scrolling_subtitle"], "detection_precise_mode": "true", "inpainting_backend": "pixel_replace"
输出结果
输入视频:竖版视频-滚动字幕
核心参数
"targets": ["scrolling_subtitle"], "detection_precise_mode": "true", "inpainting_backend": "pixel_replace"
输出结果
细分项 | 性能影响说明 |
|---|---|
耗时 |
|
网络性能 |
|
细分 | 详细说明 |
|---|---|
支持的输入数据模态 |
|
输入格式:视频 |
|
输入路径要求 | 通过请求参数
|
细分 | 详细说明 |
|---|---|
输出数据模态 |
|
输出路径:TOS | 通过请求参数
|
计费标准
细分项 | 计费标准说明 |
|---|---|
计费项 | 基于输出视频的时长进行用量统计计费,当输出视频视频帧率高于 30fps,将按照实际输出视频的帧率与基础帧率(30fps)的倍率(向上取整),对输出视频时长进行系数折算。 |
计费类型 | 按量计费,单位: |
单价 | 单价与您选择使用视频修复时的视频检测、视频修复模式有关。 |
注意
计费详情
计费公式:总费用 = 单价 * 计费用量 = 单价 * (视频时长 * 时长折算系数)
细分场景 | 单价 | 计费时长折算系数 |
|---|---|---|
| 1.2 元/分钟 |
|
| 1.6 元/分钟 | |
| 2.8 元/分钟 | |
| 3.2 元/分钟 |
计费示例
普通检测模式-pixel_replace修复模式进行视频修复,修复后实际输出视频的帧率为 50fps 、视频时长为 10 分钟时:
总费用 = 1.2 元/分钟 * (10分钟 * 2)= 24元 。细分项 | 注意与前提 |
|---|---|
开通 LAS |
|
费用 | 调用算子前,您需先了解使用算子时的模型调用费用,详情请参见大模型调用计费。 |
鉴权(API Key) | 调用算子前,您需要先生成算子调用的API Key,并建议将API Key配置为环境变量,便于更安全地调用算子,详情请参见获取 API Key 并配置。 |
BaseURL | 调用算子前,您需要先根据您当前使用的LAS服务所在地域,了解算子调用的BaseURL,用于配置算子调用路径参数取值。 |
调用视频修复算子提交修复任务,支持对公网,火山内网或 TOS 视频源文件进行水印、字幕、logo等内容的智能擦除。
参数 | 类型 | 是否必填 | 示例值 | 说明 |
|---|---|---|---|---|
operator_id | string | 是 | las_video_inpaint | 算子 ID |
operator_version | string | 是 | v1 | 算子版本 |
data | VideoInpaintUserRequest | 是 | 视频修复请求参数 | |
video_url | string | 是 | https://example.com/video.mp4 | 视频文件的可下载地址。支持 http/https、火山 TOS (tos://bucket/key)。 |
output_tos_path | string | 是 | tos://bucket/output | 视频修复结果保存的 TOS 地址,修复后的视频将保存到该地址。注意:TOS 桶的region要与算子 BaseURL 的region 保持一致。 |
targets | array | 否 | ["watermark", "subtitle"] | 需要擦除的目标类型,默认 ["watermark", "subtitle"]。可选值:
|
return_subtitle_bbox | boolean | 否 | true | 是否返回字幕区域 bbox,默认 true。 |
detection_precise_mode | boolean | 否 | false | 是否启用精确检测模式,默认 True。 |
inpainting_backend | string | 否 | pixel_replace | 修复后端算法,可选值:
|
max_process_frames | integer | 否 | -1 | 最大处理帧数,传入则会只处理具体帧数的视频,比如原视频fps为30,传入300,则只处理10s的视频。-1 表示不限制,默认 -1。 |
subtitle_mask_precise | boolean | 否 | false | 是否启用精确字幕遮罩,默认 false。为 true 时针对白色、黄色字幕效果较好,但是针对透明、滚动字幕效果较差,按需开启。 |
fixed_bboxes | array | 否 | [[100, 600, 300, 650], [1000, 1000, 1000, 1000]] | 固定的修复区域,格式为 [x1, y1, x2, y2]。坐标系以视频左上角为原点 (0,0),输入值以 1000x1000 为基准(即右下角坐标为 [1000,1000]),系统会根据视频实际宽高自动调整。x1,y1 为左上角坐标,x2,y2 为右下角坐标。传入此参数后,系统仅对指定区域进行修复,不再修复其他区域。 |
参数 | 类型 | 示例值 | 说明 |
|---|---|---|---|
metadata | metadata | - | 请求元信息 |
task_id | string | task-xxx | 异步模式下的任务 ID,用于作业状态查询。 |
task_status | string | PENDING | 异步模式下的任务状态。
|
business_code | string | 0 | 业务码。 |
error_msg | string | - | 如有异常,会返回详细的异常信息。 |
# 请将 OUTPUT_TOS_PATH 设置为本账号上可写入的tos路径 export OUTPUT_TOS_PATH="tos://path/to/output" curl --location "https://operator.las.cn-beijing.volces.com/api/v1/submit" \ --header "Content-Type: application/json" \ --header "Authorization: Bearer $LAS_API_KEY" \ --data '{ "operator_id": "las_video_inpaint", "operator_version": "v1", "data": { "video_url": "https://*****/watermark_video.mp4", "output_tos_path": "$OUTPUT_TOS_PATH", "targets": ["watermark", "subtitle"] } }'
{ "metadata": { "task_id": "task-20251125163544-abc123", "task_status": "PENDING", "business_code": "0", "error_msg": "" } }
HttpCode | 错误码 | 错误信息 | 说明 |
|---|---|---|---|
400 | Url.Invalid | The url is invalid. | 视频链接不合法 |
400 | Video.Invalid | The video file is invalid. | 视频文件不合法 |
400 | Video.DurationExceeded | Video duration exceeds maximum limit of 4 hours. | 视频时长超出最大限制 |
400 | Video.FileTooLarge | Video file size exceeds maximum limit of 30GB. | 视频文件大小超出限制 |
400 | Parameter.Invalid | The parameter is invalid. | 参数不合法 |
401 | Authorization.Missing | Missing Authorization. | 缺少鉴权 |
401 | ApiKey.InValid | The api key is invalid. | API不合法 |
400 | Video.DurationTooShort | Video duration is too short, minimum 1 second required. | 视频时长过短 |
400 | Video.Timeout | Video processing timeout. | 视频处理超时 |
500 | Internal.ServerError | Internal server error. | 服务内部错误 |
查询视频修复任务的执行状态和结果。
参数 | 类型 | 必填 | 示例值 | 说明 |
|---|---|---|---|---|
operator_id | string | 是 | las_video_inpaint | 算子 ID |
operator_version | string | 是 | v1 | 算子版本 |
task_id | string | 是 | task-xxx | 任务 ID |
参数 | 类型 | 示例值 | 说明 |
|---|---|---|---|
metadata | metadata | 请求元信息 | |
task_id | string | task-xxx | 异步模式下的任务 ID。 |
task_status | string | COMPLETED | 异步模式下的任务状态。
|
business_code | string | 0 | 业务码。 |
error_msg | string | 如有异常,会返回详细的异常信息。 | |
data | VideoInpaintResponse | 返回的数据 | |
inpainted_video_path | string | tos://bucket/output/video.mp4 | 修复后的视频路径(TOS 地址)。 |
output_video_url | string | https://video.mp4 | 修复后的视频预签名链接,24h有效。 |
subtitle_bbox | string | 100,200,800,400 | 字幕区域 bbox(如果检测到),格式为 x1,y1,x2,y2,值为原视频像素点。 |
curl --location "https://operator.las.cn-beijing.volces.com/api/v1/poll" \ --header "Content-Type: application/json" \ --header "Authorization: Bearer $LAS_API_KEY" \ --data '{ "operator_id": "las_video_inpaint", "operator_version": "v1", "task_id": "task-20251125163544-abc123" }'
{ "metadata": { "task_id": "task-20251125163544-abc123", "task_status": "COMPLETED", "business_code": "0", "error_msg": "" }, "data": { "inpainted_video_path": "tos://bucket/output/video_inpaint/xxx/output.mp4", "subtitle_bbox": "120,800,1800,960", "resolution": "1920x1080" } }
HttpStatusCode | 错误码 | 错误信息 | 描述 |
|---|---|---|---|
400 | MISSING_REQUIRED_PARAMETER | Missing required parameter. | 缺少必选参数 |
400 | INVALID_PARAMETER | Invalid parameter. | 参数不合法 |
400 | INVALID_URL | Invalid URL. | URL 不合法 |
400 | INVALID_VIDEO_FILE | Invalid video file. | 视频文件无效 |
400 | VIDEO_DOWNLOAD_FAILED | Video download failed. | 视频下载失败 |
400 | VIDEO_FORMAT_UNSUPPORTED | Video format not supported. | 视频格式不支持 |
400 | VIDEO_TIMEOUT | Video processing timeout. | 视频处理超时 |
400 | VLM_CALL_FAILED | VLM call failed. | VLM 调用失败 |
400 | VIDEO_UPLOAD_FAILED | Video upload failed. | 视频上传失败 |
400 | TOS_ACCESS_FAILED | TOS access failed. | TOS 访问失败 |
401 | Authorization.Missing | Missing Authorization. | 缺少鉴权 |
401 | ApiKey.InValid | The api key is invalid. | API不合法 |
400 | Task.NotFound | Task not found. | 任务不存在 |
500 | Internal.ServerError | Internal server error. | 服务内部错误 |