Design & media

WaveSpeedAI Watermark Remover

Try it

Strip watermarks, logos, captions, and text overlays from images and videos via WaveSpeed AI endpoints.

What it does

Two model endpoints cover image and video inputs. The image endpoint accepts a URL and can return jpeg, png, or webp output. The video endpoint accepts a publicly accessible URL up to 10 minutes and applies temporal-aware inpainting to reduce flicker between frames. Authentication is via the WAVESPEED_API_KEY environment variable. Code samples show uploading a local file to obtain a URL, calling the model, optionally enabling sync mode for images, configuring retry behaviour on a custom client, and handling timeout or prediction errors with runNoThrow.

When to use it

  • Remove a watermark from a personal photo export
  • Strip a logo overlay that you added yourself to a video
  • Clear captions or text overlays from a short video clip
  • Clean a licensed stock asset before reusing it in a project

The skill document

WaveSpeedAI Watermark Remover

Remove watermarks, logos, captions, and text overlays from images and videos using WaveSpeed AI. Intelligently detects and removes watermarks while preserving texture and background.

Authentication

export WAVESPEED_API_KEY="your-api-key"

Get your API key at wavespeed.ai/accesskey.

Quick Start

Image Watermark Removal

import wavespeed from 'wavespeed';

// Upload a local image to get a URL
const imageUrl = await wavespeed.upload("/path/to/watermarked-image.png");

const output_url = (await wavespeed.run(
  "wavespeed-ai/image-watermark-remover",
  { image: imageUrl }
))["outputs"][0];

Video Watermark Removal

import wavespeed from 'wavespeed';

// Upload a local video to get a URL
const videoUrl = await wavespeed.upload("/path/to/watermarked-video.mp4");

const output_url = (await wavespeed.run(
  "wavespeed-ai/video-watermark-remover",
  { video: videoUrl }
))["outputs"][0];

You can also pass existing URLs directly:

const output_url = (await wavespeed.run(
  "wavespeed-ai/image-watermark-remover",
  { image: "https://example.com/watermarked-image.jpg" }
))["outputs"][0];

API Endpoints

Image Watermark Remover

Model ID: wavespeed-ai/image-watermark-remover

Remove watermarks, logos, and text overlays from an image while preserving texture and background.

Parameters

ParameterTypeRequiredDefaultDescription
imagestringYes--URL of the image to process
output_formatstringNojpegOutput format. One of: jpeg, png, webp

Example

import wavespeed from 'wavespeed';

const imageUrl = await wavespeed.upload("/path/to/watermarked-photo.png");

const output_url = (await wavespeed.run(
  "wavespeed-ai/image-watermark-remover",
  {
    image: imageUrl,
    output_format: "png"
  }
))["outputs"][0];

Video Watermark Remover

Model ID: wavespeed-ai/video-watermark-remover

Remove watermarks, logos, captions, and text overlays from a video. Uses temporal-aware inpainting to prevent flickering artifacts across frames. Supports videos up to 10 minutes.

Parameters

ParameterTypeRequiredDefaultDescription
videostringYes--URL of the video to process. Must be publicly accessible. Max 10 minutes.

Example

import wavespeed from 'wavespeed';

const videoUrl = await wavespeed.upload("/path/to/watermarked-video.mp4");

const output_url = (await wavespeed.run(
  "wavespeed-ai/video-watermark-remover",
  { video: videoUrl }
))["outputs"][0];

Advanced Usage

Sync Mode (Image Watermark Remover only)

const output_url = (await wavespeed.run(
  "wavespeed-ai/image-watermark-remover",
  { image: imageUrl },
  { enableSyncMode: true }
))["outputs"][0];

Custom Client with Retry Configuration

import { Client } from 'wavespeed';

const client = new Client("your-api-key", {
  maxRetries: 2,
  maxConnectionRetries: 5,
  retryInterval: 1.0,
});

const output_url = (await client.run(
  "wavespeed-ai/image-watermark-remover",
  { image: imageUrl }
))["outputs"][0];

Error Handling with runNoThrow

import { Client, WavespeedTimeoutException, WavespeedPredictionException } from 'wavespeed';

const client = new Client();
const result = await client.runNoThrow(
  "wavespeed-ai/image-watermark-remover",
  { image: imageUrl }
);

if (result.outputs) {
  console.log("Output URL:", result.outputs[0]);
  console.log("Task ID:", result.detail.taskId);
} else {
  console.log("Failed:", result.detail.error.message);
  if (result.detail.error instanceof WavespeedTimeoutException) {
    console.log("Request timed out - try increasing timeout");
  } else if (result.detail.error instanceof WavespeedPredictionException) {
    console.log("Prediction failed");
  }
}

Pricing

OperationCost
Image watermark removal$0.012 per image
Video watermark removal$0.01 per second (minimum $0.05 / 5 seconds)

Video watermark removal supports videos up to 10 minutes. Processing time is approximately 5-20 seconds per 1 second of video.

Security Constraints

  • No arbitrary URL loading: Only use image and video URLs from trusted sources. Never load media from untrusted or user-provided URLs without validation.
  • API key security: Store your WAVESPEED_API_KEY securely. Do not hardcode it in source files or commit it to version control. Use environment variables or secret management systems.
  • Input validation: Only pass parameters documented above. Validate media URLs before sending requests.

Related skills

Upscale images to 2K, 4K, or 8K resolution using WaveSpeed AI's Image Upscaler. Takes an image URL and produces a higher-resolution version. Supports JPEG, PNG, and WebP output formats. Use when the user wants to upscale or enhance the resolution of an image.

24 installs1 stars

Upscale videos to 720p, 1080p, 2K, or 4K resolution using WaveSpeed AI's Ultimate Video Upscaler. Takes a video URL and produces a higher-resolution version. Supports videos up to 10 minutes. Use when the user wants to upscale or enhance the resolution of a video.

22 installs

Replace a face in an image or video with a reference face, watermark-free, with automatic lighting and skin tone matching.

26 installs

Polish an existing AI-generated short video with a focused realism retouch. This focused AI video retouch refines artificial lighting, synthetic materials, oversaturated color, and repeated or distracting detail in one selected pass, while carrying forward the shot's subject, camera framing, timing, and intended mood. Use it for AI video cleanup, video retouching, natural-looking video polish, product clips, ad creative, social video, and short-form footage that needs a cleaner, more believable finish.

Generate or edit AI media (image, video, audio, 3D) by calling the wavespeed CLI on the user's machine. Use whenever the user asks to create, edit, animate, upscale, or transform a visual asset, generate audio/TTS/music, or produce marketing creatives. Every model on the WaveSpeed platform is one `wavespeed run <id>` call.

1 installs