mcpField
V
video-element-remove

video-element-remove

github.com/meituCreative & media36111 installsUpdated 9w ago
Repository

About video-element-remove

A skill for removing specified elements from existing videos, including passersby, subtitles, fixed watermarks, or on-screen text. It routes processing by target type and does not handle arbitrary object removal.

Key features

  1. 01Remove passersby or pedestrians
  2. 02Remove subtitles that change over time
  3. 03Remove fixed watermarks, logos, or badges
  4. 04Clear all on-screen text in one operation

Use cases

  1. 01Remove people from a video background
  2. 02Erase dialogue subtitles from a clip
  3. 03Remove a platform watermark in a fixed position
  4. 04Clear subtitles, watermarks, and UI text

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/meitu/meitu-skills --skill video-element-remove

After installing, type/video-element-removein Claude Code to confirm it loaded.

Details

From the project README

Video Element Remove

Overview

对已有视频做元素消除,覆盖 4 类场景(仅此 4 类,不处理鞋子/垃圾/随机物体等任意对象):

  1. 去路人 / 行人:消除背景路人、行人,基于内容检测自动处理。
  2. 去字幕(随时间变化):消除随时间变化的字幕条带(对白、中文字幕、底部文字)。
  3. 去水印 / Logo / 角标(固定位置):消除固定位置的水印、Logo、平台角标、抖音号。
  4. 一键清屏:一次性清除画面中所有文字(字幕 + 水印 + UI 文字)。

不处理:添加 Logo/水印、视频内容替换、图片去水印、视频画质增强。

API Mapping

场景API name
去路人 / 行人video_content_remove
去字幕(随时间变化的对白条带)video_subtitle_remove
去水印 / Logo / 角标(固定位置)video_watermark_remove
一键清屏(去全部文字)video_allwords_remove

Dependencies

  • meitu-cli: >=2.0.6
  • 凭证:CONFIG AKSK → meitu tools update;EXEC AKSK → 跑命令
  • 环境变量:MEITU_OPENAPI_TOOL_TASK_MODE=command

路径别名: $VISUAL = {OPENCLAW_HOME}/workspace/visual/

Core Workflow

Preflight → Execute → Deliver
Preflight
  1. meitu --version 与 meitu auth verify --json
  2. 检测 MEITU_OPENAPI_TOOL_TASK_MODE=command
  3. output_dir:项目 → ./output/;一次性 → $VISUAL/output/video-element-remove/;mkdir -p
Execute

触发信号与路由

核心判断维度:消除目标类型。Agent 调用前先识别视频画面内容,生成 prompt 描述(如"视频右上角有平台水印,底部有中文字幕")。

prompt → 路由映射:

prompt 信号词路由 API
路人 / 行人 / 背景里的人video_content_remove
字幕 / 台词 / 对白 / 底部文字video_subtitle_remove
水印 / Logo / 角标 / 平台标 / 固定位置标识video_watermark_remove
所有文字 / 全部字 / 清屏 / 全部清除video_allwords_remove
字幕 + 水印 同时去video_subtitle_remove + video_watermark_remove 并行调用

场景互斥边界

  • "去所有字"(全部文字)→ video_allwords_remove;"去字幕"(仅字幕)→ video_subtitle_remove
  • 固定位 Logo → video_watermark_remove;随时间字幕 → video_subtitle_remove
  • subtitle_remove + watermark_remove 可并行;allwords_remove 与其他互斥(清屏已包含)

参数定义

参数类型必填范围默认说明
video_urlSTRING是——视频地址
promptSTRING是——Agent 对视频画面的描述,工具据此判断消除类型

说明:

  • 识别不到任何信号词时默认走 video_subtitle_remove(最常见消除诉求)
  • 清屏需二次确认(会去除所有文字)

工具调用

meitu video-element-remove --video_url {url} --prompt "{画面描述}" --json --download-dir {output_dir} --skill_name skill_video-element-remove

错误降级

场景处理
video_url 缺失提示"请提供视频链接",不调用
video_url 不可访问直接返回错误,不重试
prompt 为空或无信号词Agent 识别视频画面生成描述后重新判断
意图模糊("去字")按画面识别:仅字幕→subtitle;字幕+水印+UI→allwords;仅固定 Logo→watermark
用户要"去字幕+去全部文字"互斥,默认走 video_allwords_remove
API 调用失败 / 超时重试 1 次,仍失败返回错误
内容合规拦截直接返回合规提示,不重试
Deliver

mv {file} {output_dir}/{date}_{name}_element-remove.mp4

Output

  • 格式:MP4
  • 命名:{YYYY-MM-DD}_{descriptive-name}_element-remove.mp4
  • 位置:项目 → ./output/;一次性 → $VISUAL/output/video-element-remove/

基线 Task ID

t_mt1a3i5n7b339aa95a-03dd-4f3e-9d31-786dc86b33aa

Comments

Markdown supported