Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

FFmpeg Video Watermark Remover

v1.0.0

Remove watermarks from videos using ffmpeg delogo filter. Use this skill whenever the user wants to remove a watermark from a video, asks to remove a logo/te...

0· 95· 1 versions· 0 current· 0 all-time· Updated 14h ago· MIT-0

Install

openclaw skills install ffmpeg-video-watermark-remover

Video Watermark Remover

Remove watermark/logo/text overlays from videos using ffmpeg's delogo filter.

Core Logic

Step 1: Extract sample frames Extract frames at 1-second intervals to locate watermark positions:

for t in 1 2 3 4 5; do
  ffmpeg -y -ss 00:00:0$t -i "$INPUT" -frames:v 1 "/tmp/wm_frame_$t.jpg" 2>/dev/null
done

Step 2: Analyze with vision model Use the image tool to analyze the sample frames. Ask for:

  • Exact watermark positions (which corner/edge)
  • Pixel bounding box: x, y, width, height for a WxH resolution video
  • Whether watermarks are in the same position across all frames (fixed) or move (dynamic)

Step 3: Build segmentation strategy

Fixed watermark (same position throughout):

  • One delogo pass on entire video

Dynamic watermark (position changes at specific times):

  • Identify segment boundaries (e.g., 0-3.5s bottom-right, 3.5s+ left edge)
  • Process each segment separately with its own delogo coordinates
  • Concatenate segments back together

Step 4: Process and verify

# Single segment
ffmpeg -y -i "$INPUT" -vf "delogo=x=$X:y=$Y:w=$W:h=$H" -c:a copy "$OUTPUT"

# Multiple segments
# Process each segment separately with -ss/-t, then concat

Verify each segment's result with the vision model before final delivery.

Key Parameters

ParameterDescription
x, yTop-left corner of watermark region
w, hWidth and height of watermark region
INPUTInput video path
OUTPUTOutput video path

Finding exact coordinates:

  • Vision model gives normalized coordinates on 0-1000 scale — convert to actual pixels
  • For a 720x1280 video: actual_x = normalized_x * width / 1000
  • Always add 5-10px padding to the detected region to ensure full coverage

Dynamic Watermark Segmentation

When watermark moves between distinct positions:

  1. Identify transition points — Note which frames have watermarks at which positions
  2. Create segments — Each position change = new segment boundary
  3. Process each segment — Apply correct delogo coordinates to each time range
  4. Concatenate — Use ffmpeg concat with a manifest file:
    file 'seg1.mp4'
    file 'seg2.mp4'
    
    ffmpeg -y -f concat -safe 0 -i concat.txt -c copy output.mp4
    

Example segmentation:

SegmentTime RangeWatermark Position
10-3.5sBottom-right (x=540,y=1195,w=165,h=55)
23.5-5sLeft edge (x=30,y=480,w=160,h=210)

Handling Multiple Watermarks

If multiple watermarks exist simultaneously (e.g., corner logo + username handle):

  • Identify which the user wants removed vs. preserved
  • Apply multiple delogo filters in the same vf string:
    -vf "delogo=x=540:y=1195:w=165:h=55,delogo=x=30:y=480:w=160:h=210"
    

Output Delivery

  • Save to /root/.openclaw/workspace/downloads/
  • Send via message tool with media parameter
  • Confirm with user before final delivery

Limitations

  • delogo fills the region with a blurred/averaged patch — works best on simple/static backgrounds
  • Semi-transparent watermarks, complex AI-generated watermarks, and moving watermarks over textured backgrounds may still show traces
  • For AI inpainting (natural content-aware fill): this skill cannot do it — inform the user and suggest inpainting pipeline if delogo result is unsatisfactory

Version tags

delogovk975fa81xy2kqm4md4ry39z9g184w9exffmpegvk975fa81xy2kqm4md4ry39z9g184w9exlatestvk975fa81xy2kqm4md4ry39z9g184w9exvideovk975fa81xy2kqm4md4ry39z9g184w9exwatermarkvk975fa81xy2kqm4md4ry39z9g184w9exwatermark-removalvk975fa81xy2kqm4md4ry39z9g184w9ex