SuperAPI AI Directory

video-element-remove

Design & creation

View repository

Updated 10-16 06:46

About this skill

Video Element Remove

Overview

YesExisting videoPerform element removal, covering 4 scenarios (only these 4, not handling arbitrary objects such as shoes/trash/random objects):

  1. Remove passersby / pedestrians: Remove background passersby and pedestrians, automatically handled based on content detection.
  2. Remove subtitles (time-varying): Remove time-varying subtitle bands (dialogue, Chinese subtitles, bottom text).
  3. Remove watermarks / Logos / corner badges (fixed position): Remove watermarks, Logos, platform corner badges, and Douyin IDs in fixed positions.
  4. One-click screen clearing: Remove all text in the frame at once (subtitles + watermarks + UI text).

Not handled: adding Logos/watermarks, video content replacement, image watermark removal, video quality enhancement.

API Mapping

Scenario API name
Remove passersby / pedestrians video_content_remove
Remove subtitles (time-varying dialogue bands) video_subtitle_remove
Remove watermarks / Logos / corner badges (fixed position) video_watermark_remove
One-click screen clearing (remove all text) video_allwords_remove

Dependencies

  • meitu-cli: >=2.0.6
  • Credentials:CONFIG AKSK → meitu tools update; EXEC AKSK → run command
  • Environment variables:MEITU_OPENAPI_TOOL_TASK_MODE=command

Path alias: $VISUAL = {OPENCLAW_HOME}/workspace/visual/

Core Workflow

Preflight → Execute → Deliver

Preflight

  1. meitu --version and meitu auth verify --json
  2. Detect MEITU_OPENAPI_TOOL_TASK_MODE=command
  3. output_dir: project → ./output/; one-time → $VISUAL/output/video-element-remove/;mkdir -p

Execute

Trigger signals and routing

Core judgment dimension:removal target type. Before calling, the Agent first identifies the video frame content and generates a prompt description (e.g., "there is a platform watermark in the top-right corner of the video, and Chinese subtitles at the bottom").

prompt → routing mapping:

prompt Signal words Routing API
Passersby / pedestrians / people in the background video_content_remove
Subtitles / lines / dialogue / bottom text video_subtitle_remove
Watermark / Logo / corner badge / platform mark / fixed-position identifier video_watermark_remove
All text / every character / clear screen / remove all video_allwords_remove
Remove subtitles + watermarks at the same time video_subtitle_remove + video_watermark_remove called in parallel

Scenario mutual exclusion boundaries

  • "Remove all text" (all text) → video_allwords_remove; "Remove subtitles" (subtitles only) → video_subtitle_remove
  • Fixed-position Logo → video_watermark_remove; time-varying subtitles → video_subtitle_remove
  • subtitle_remove + watermark_remove can be parallelized;allwords_remove is mutually exclusive with the others (screen clearing already includes it)

Parameter definitions

Parameter Type Required Range Default Description
video_url STRING Yes — — Video address
prompt STRING Yes — — The Agent's description of the video frame; the tool uses it to determine the removal type

Note:

  • When no signal word is recognized, default to video_subtitle_remove(the most common removal request)
  • Screen clearing requires secondary confirmation (it will remove all text)

Tool invocation

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

Error fallback

Scenario Handling
video_url missing Prompt "Please provide the video link", do not call
video_url inaccessible Return error directly, do not retry
prompt empty or no signal word Agent recognizes the video frame to generate a description, then re-evaluates
Ambiguous intent ("remove text") Based on frame recognition: subtitles only→subtitle; subtitles+watermark+UI→allwords; fixed logo only→watermark
User wants "remove subtitles + remove all text" Mutually exclusive, default to video_allwords_remove
API call failed / timed out Retry once, if still fails return error
Content compliance interception Return compliance prompt directly, do not retry

Deliver

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

Output

  • Format:MP4
  • Naming:{YYYY-MM-DD}_{descriptive-name}_element-remove.mp4
  • Location: project → ./output/; one-time → $VISUAL/output/video-element-remove/

Baseline Task ID

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