Claim this agent
Agent DossierCLAWHUBSafety 84/100

Xpersona Agent

Eachlabs Video Edit

Edit, transform, extend, upscale, and enhance videos using EachLabs AI models. Supports lip sync, video translation, subtitle generation, audio merging, style transfer, and video extension. Use when the user wants to edit or transform existing video content.

OpenClaw · self-declared
773 downloadsTrust evidence available
clawhub skill install kn7daknf647gdfdwzpyq5scnvn80tq7d:eachlabs-video-edit

Overall rank

#62

Adoption

773 downloads

Trust

Unknown

Freshness

Mar 1, 2026

Freshness

Last checked Mar 1, 2026

Best For

Eachlabs Video Edit is best for general automation workflows where OpenClaw compatibility matters.

Not Ideal For

Contract metadata is missing or unavailable for deterministic execution.

Evidence Sources Checked

CLAWHUB, CLAWHUB, runtime-metrics, public facts pack

Overview

Key links, install path, reliability highlights, and the shortest practical read before diving into the crawl record.

Self-declaredCLAWHUB

Overview

Executive Summary

Edit, transform, extend, upscale, and enhance videos using EachLabs AI models. Supports lip sync, video translation, subtitle generation, audio merging, style transfer, and video extension. Use when the user wants to edit or transform existing video content. Capability contract not published. No trust telemetry is available yet. 773 downloads reported by the source. Last updated 4/15/2026.

No verified compatibility signals773 downloads

Trust score

Unknown

Compatibility

OpenClaw

Freshness

Mar 1, 2026

Vendor

Clawhub

Artifacts

0

Benchmarks

0

Last release

0.1.1

Install & run

Setup Snapshot

clawhub skill install kn7daknf647gdfdwzpyq5scnvn80tq7d:eachlabs-video-edit
  1. 1

    Install using `clawhub skill install kn7daknf647gdfdwzpyq5scnvn80tq7d:eachlabs-video-edit` in an isolated environment before connecting it to live workloads.

  2. 2

    No published capability contract is available yet, so validate auth and request/response behavior manually.

  3. 3

    Review the upstream CLAWHUB listing at https://clawhub.ai/eftalyurtseven/eachlabs-video-edit before using production credentials.

Evidence & Timeline

Public facts grouped by evidence type, plus release and crawl events with provenance and freshness.

Self-declaredCLAWHUB

Public facts

Evidence Ledger

Vendor (1)

Vendor

Clawhub

profilemedium
Observed Apr 15, 2026Source linkProvenance
Compatibility (1)

Protocol compatibility

OpenClaw

contractmedium
Observed Apr 15, 2026Source linkProvenance
Release (1)

Latest release

0.1.1

releasemedium
Observed Feb 9, 2026Source linkProvenance
Adoption (1)

Adoption signal

773 downloads

profilemedium
Observed Apr 15, 2026Source linkProvenance
Security (1)

Handshake status

UNKNOWN

trustmedium
Observed unknownSource linkProvenance

Artifacts & Docs

Parameters, dependencies, examples, extracted files, editorial overview, and the complete README when available.

Self-declaredCLAWHUB

Captured outputs

Artifacts Archive

Extracted files

3

Examples

6

Snippets

0

Languages

Unknown

Executable Examples

text

Header: X-API-Key: <your-api-key>

bash

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{

bash

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "veo3-1-extend-video",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/video.mp4",
      "prompt": "Continue the scene with the camera slowly pulling back"
    }
  }'

bash

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{

bash

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "sync-lipsync-v2-pro",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/talking-head.mp4",
      "audio_url": "https://example.com/new-audio.mp3"
    }
  }'

bash

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
Extracted Files

SKILL.md

---
name: eachlabs-video-edit
description: Edit, transform, extend, upscale, and enhance videos using EachLabs AI models. Supports lip sync, video translation, subtitle generation, audio merging, style transfer, and video extension. Use when the user wants to edit or transform existing video content.
metadata:
  author: eachlabs
  version: "1.0"
---

# EachLabs Video Edit

Edit, transform, and enhance existing videos using 25+ AI models via the EachLabs Predictions API.

## Authentication

```
Header: X-API-Key: <your-api-key>
```

Set the `EACHLABS_API_KEY` environment variable. Get your key at [eachlabs.ai](https://eachlabs.ai).

## Model Selection Guide

### Video Extension

| Model | Slug | Best For |
|-------|------|----------|
| Veo 3.1 Extend | `veo3-1-extend-video` | Best quality extension |
| Veo 3.1 Fast Extend | `veo3-1-fast-extend-video` | Fast extension |
| PixVerse v5 Extend | `pixverse-v5-extend` | PixVerse extension |
| PixVerse v4.5 Extend | `pixverse-v4-5-extend` | Older PixVerse extension |

### Lip Sync & Talking Head

| Model | Slug | Best For |
|-------|------|----------|
| Sync Lipsync v2 Pro | `sync-lipsync-v2-pro` | Best lip sync quality |
| PixVerse Lip Sync | `pixverse-lip-sync` | PixVerse lip sync |
| LatentSync | `latentsync` | Open-source lip sync |
| Video Retalking | `video-retalking` | Audio-based lip sync |

### Video Transformation

| Model | Slug | Best For |
|-------|------|----------|
| Runway Gen4 Aleph | `runway-gen4-aleph` | Video transformation |
| Kling O1 Video Edit | `kling-o1-video-to-video-edit` | AI video editing |
| Kling O1 V2V Reference | `kling-o1-video-to-video-reference` | Reference-based edit |
| ByteDance Video Stylize | `bytedance-video-stylize` | Style transfer |
| Wan v2.2 Animate Move | `wan-v2-2-14b-animate-move` | Motion animation |
| Wan v2.2 Animate Replace | `wan-v2-2-14b-animate-replace` | Object replacement |

### Video Upscaling & Enhancement

| Model | Slug | Best For |
|-------|------|----------|
| Topaz Upscale Video | `topaz-upscale-video` | Best quality upscale |
| Luma Ray 2 Video Reframe | `luma-dream-machine-ray-2-video-reframe` | Video reframing |
| Luma Ray 2 Flash Reframe | `luma-dream-machine-ray-2-flash-video-reframe` | Fast reframing |

### Audio & Subtitles

| Model | Slug | Best For |
|-------|------|----------|
| FFmpeg Merge Audio Video | `ffmpeg-api-merge-audio-video` | Merge audio track |
| MMAudio V2 | `mm-audio-v-2` | Add audio to video |
| MMAudio | `mmaudio` | Add audio to video |
| Auto Subtitle | `auto-subtitle` | Generate subtitles |
| Merge Videos | `merge-videos` | Concatenate videos |

### Video Translation

| Model | Slug | Best For |
|-------|------|----------|
| Heygen Video Translate | `heygen-video-translate` | Translate video speech |

### Motion Transfer

| Model | Slug | Best For |
|-------|------|----------|
| Motion Fast | `motion-fast` | Fast motion transfer |
| Infinitalk V2V | `infinitalk-video-to-video` | Talking head from video |

### 

_meta.json

{
  "ownerId": "kn7daknf647gdfdwzpyq5scnvn80tq7d",
  "slug": "eachlabs-video-edit",
  "version": "0.1.1",
  "publishedAt": 1770607508749
}

references/MODELS.md

# Video Edit Models Reference

Complete parameter reference for all video editing models. All models use version `0.0.1`.

---

## Motion | Fast

**Slug:** `motion-fast`

| Parameter | Type | Required | Default | Options / Constraints | Description |
|-----------|------|----------|---------|----------------------|-------------|
| `video_url` | string | Yes | — | — | URL of the input video. |
| `image_url` | string | Yes | — | — | URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped. |
| `resolution` | string | No | `"480p"` | 480p,580p,720p | Resolution of the generated video (480p, 580p, or 720p). |
| `seed` | integer | No | — | — | Random seed for reproducibility. If None, a random seed is chosen. |
| `num_inference_steps` | integer | No | `"20"` | — | Number of inference steps for sampling. Higher values give better quality but take longer. |
| `enable_safety_checker` | boolean | No | `"False"` | — | If set to true, input data will be checked for safety before processing. |
| `shift` | number | No | `"5"` | — | Shift value for the video. Must be between 1.0 and 10.0. |
| `video_quality` | string | No | `"high"` | low,medium,high,maximum | The quality of the output video. Higher quality means better visual quality but larger file size. |
| `video_write_mode` | string | No | `"balanced"` | fast,balanced,small | The write mode of the output video. Faster write mode means faster results but larger file size, balanced write mode ... |
| `use_turbo` | boolean | No | `"false"` | — | If true, applies quality enhancement for faster generation with improved quality. When enabled, parameters are automa... |

---

## Infinitalk | Video to Video

**Slug:** `infinitalk-video-to-video`

| Parameter | Type | Required | Default | Options / Constraints | Description |
|-----------|------|----------|---------|----------------------|-------------|
| `audio` | string | Yes | — | — | The URL of the audio file. |
| `video` | string | Yes | — | — | The video for generating the output. |
| `prompt` | string | No | — | — | The positive prompt for the generation. |
| `resolution` | string | No | `"720p"` | 480p,720p | Resolution of the video to generate. Must be either 480p or 720p. |
| `mask_image` | string | No | — | — | Optional mask image to specify the person in the video to animate. |
| `seed` | integer | No | `"-1"` | — | The random seed to use for the generation. -1 means a random seed will be used. |

---

## Ffmpeg Api | Merge Audio Video

**Slug:** `ffmpeg-api-merge-audio-video`

| Parameter | Type | Required | Default | Options / Constraints | Description |
|-----------|------|----------|---------|----------------------|-------------|
| `video_url` | string | Yes | — | — | URL of the video file to use as the video track |
| `audio_url` | string | Yes | — | — | URL of the audio file to use as the audio track |
| `start_offset` | number | No | `"0"` | — | Offset in seconds for when the audio should

Editorial read

Docs & README

Docs source

CLAWHUB

Editorial quality

thin

Skill: Eachlabs Video Edit Owner: eftalyurtseven Summary: Edit, transform, extend, upscale, and enhance videos using EachLabs AI models. Supports lip sync, video translation, subtitle generation, audio merging, style transfer, and video extension. Use when the user wants to edit or transform existing video content. Tags: latest:0.1.1 Version history: v0.1.1 | 2026-02-09T03:25:08.749Z | auto No changes detected in thi

Full README

Skill: Eachlabs Video Edit

Owner: eftalyurtseven

Summary: Edit, transform, extend, upscale, and enhance videos using EachLabs AI models. Supports lip sync, video translation, subtitle generation, audio merging, style transfer, and video extension. Use when the user wants to edit or transform existing video content.

Tags: latest:0.1.1

Version history:

v0.1.1 | 2026-02-09T03:25:08.749Z | auto

No changes detected in this version.

  • The skill definition and documentation remain unchanged from the previous version.

v0.1.0 | 2026-02-09T02:19:01.310Z | auto

Initial release of eachlabs-video-edit — edit and enhance videos via EachLabs AI models.

  • Supports video editing features including extension, upscaling, style transfer, lip sync, video translation, subtitle generation, audio merging, and face swap.
  • Provides a comprehensive model selection guide with over 25 AI models categorized by use case.
  • Includes step-by-step API usage instructions for authentication, model validation, prediction flow, and polling.
  • Features example API calls for key video editing tasks such as extending videos, lip syncing, adding subtitles, audio merging, and upscaling.
  • References additional resources for detailed parameter documentation.

Archive index:

Archive v0.1.1: 3 files, 6589 bytes

Files: references/MODELS.md (22739b), SKILL.md (5608b), _meta.json (138b)

File v0.1.1:SKILL.md


name: eachlabs-video-edit description: Edit, transform, extend, upscale, and enhance videos using EachLabs AI models. Supports lip sync, video translation, subtitle generation, audio merging, style transfer, and video extension. Use when the user wants to edit or transform existing video content. metadata: author: eachlabs version: "1.0"

EachLabs Video Edit

Edit, transform, and enhance existing videos using 25+ AI models via the EachLabs Predictions API.

Authentication

Header: X-API-Key: <your-api-key>

Set the EACHLABS_API_KEY environment variable. Get your key at eachlabs.ai.

Model Selection Guide

Video Extension

| Model | Slug | Best For | |-------|------|----------| | Veo 3.1 Extend | veo3-1-extend-video | Best quality extension | | Veo 3.1 Fast Extend | veo3-1-fast-extend-video | Fast extension | | PixVerse v5 Extend | pixverse-v5-extend | PixVerse extension | | PixVerse v4.5 Extend | pixverse-v4-5-extend | Older PixVerse extension |

Lip Sync & Talking Head

| Model | Slug | Best For | |-------|------|----------| | Sync Lipsync v2 Pro | sync-lipsync-v2-pro | Best lip sync quality | | PixVerse Lip Sync | pixverse-lip-sync | PixVerse lip sync | | LatentSync | latentsync | Open-source lip sync | | Video Retalking | video-retalking | Audio-based lip sync |

Video Transformation

| Model | Slug | Best For | |-------|------|----------| | Runway Gen4 Aleph | runway-gen4-aleph | Video transformation | | Kling O1 Video Edit | kling-o1-video-to-video-edit | AI video editing | | Kling O1 V2V Reference | kling-o1-video-to-video-reference | Reference-based edit | | ByteDance Video Stylize | bytedance-video-stylize | Style transfer | | Wan v2.2 Animate Move | wan-v2-2-14b-animate-move | Motion animation | | Wan v2.2 Animate Replace | wan-v2-2-14b-animate-replace | Object replacement |

Video Upscaling & Enhancement

| Model | Slug | Best For | |-------|------|----------| | Topaz Upscale Video | topaz-upscale-video | Best quality upscale | | Luma Ray 2 Video Reframe | luma-dream-machine-ray-2-video-reframe | Video reframing | | Luma Ray 2 Flash Reframe | luma-dream-machine-ray-2-flash-video-reframe | Fast reframing |

Audio & Subtitles

| Model | Slug | Best For | |-------|------|----------| | FFmpeg Merge Audio Video | ffmpeg-api-merge-audio-video | Merge audio track | | MMAudio V2 | mm-audio-v-2 | Add audio to video | | MMAudio | mmaudio | Add audio to video | | Auto Subtitle | auto-subtitle | Generate subtitles | | Merge Videos | merge-videos | Concatenate videos |

Video Translation

| Model | Slug | Best For | |-------|------|----------| | Heygen Video Translate | heygen-video-translate | Translate video speech |

Motion Transfer

| Model | Slug | Best For | |-------|------|----------| | Motion Fast | motion-fast | Fast motion transfer | | Infinitalk V2V | infinitalk-video-to-video | Talking head from video |

Face Swap (Video)

| Model | Slug | Best For | |-------|------|----------| | Faceswap Video | faceswap-video | Swap face in video |

Prediction Flow

  1. Check model GET https://api.eachlabs.ai/v1/model?slug=<slug> — validates the model exists and returns the request_schema with exact input parameters. Always do this before creating a prediction to ensure correct inputs.
  2. POST https://api.eachlabs.ai/v1/prediction with model slug, version "0.0.1", and input matching the schema
  3. Poll GET https://api.eachlabs.ai/v1/prediction/{id} until status is "success" or "failed"
  4. Extract the output video URL from the response

Examples

Extend a Video with Veo 3.1

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "veo3-1-extend-video",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/video.mp4",
      "prompt": "Continue the scene with the camera slowly pulling back"
    }
  }'

Lip Sync with Sync v2 Pro

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "sync-lipsync-v2-pro",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/talking-head.mp4",
      "audio_url": "https://example.com/new-audio.mp3"
    }
  }'

Add Subtitles

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "auto-subtitle",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/video.mp4"
    }
  }'

Merge Audio with Video

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "ffmpeg-api-merge-audio-video",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/video.mp4",
      "audio_url": "https://example.com/music.mp3",
      "start_offset": 0
    }
  }'

Upscale Video with Topaz

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "topaz-upscale-video",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/low-res-video.mp4"
    }
  }'

Parameter Reference

See references/MODELS.md for complete parameter details for each model.

File v0.1.1:_meta.json

{ "ownerId": "kn7daknf647gdfdwzpyq5scnvn80tq7d", "slug": "eachlabs-video-edit", "version": "0.1.1", "publishedAt": 1770607508749 }

File v0.1.1:references/MODELS.md

Video Edit Models Reference

Complete parameter reference for all video editing models. All models use version 0.0.1.


Motion | Fast

Slug: motion-fast

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the input video. | | image_url | string | Yes | — | — | URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped. | | resolution | string | No | "480p" | 480p,580p,720p | Resolution of the generated video (480p, 580p, or 720p). | | seed | integer | No | — | — | Random seed for reproducibility. If None, a random seed is chosen. | | num_inference_steps | integer | No | "20" | — | Number of inference steps for sampling. Higher values give better quality but take longer. | | enable_safety_checker | boolean | No | "False" | — | If set to true, input data will be checked for safety before processing. | | shift | number | No | "5" | — | Shift value for the video. Must be between 1.0 and 10.0. | | video_quality | string | No | "high" | low,medium,high,maximum | The quality of the output video. Higher quality means better visual quality but larger file size. | | video_write_mode | string | No | "balanced" | fast,balanced,small | The write mode of the output video. Faster write mode means faster results but larger file size, balanced write mode ... | | use_turbo | boolean | No | "false" | — | If true, applies quality enhancement for faster generation with improved quality. When enabled, parameters are automa... |


Infinitalk | Video to Video

Slug: infinitalk-video-to-video

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | audio | string | Yes | — | — | The URL of the audio file. | | video | string | Yes | — | — | The video for generating the output. | | prompt | string | No | — | — | The positive prompt for the generation. | | resolution | string | No | "720p" | 480p,720p | Resolution of the video to generate. Must be either 480p or 720p. | | mask_image | string | No | — | — | Optional mask image to specify the person in the video to animate. | | seed | integer | No | "-1" | — | The random seed to use for the generation. -1 means a random seed will be used. |


Ffmpeg Api | Merge Audio Video

Slug: ffmpeg-api-merge-audio-video

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the video file to use as the video track | | audio_url | string | Yes | — | — | URL of the audio file to use as the audio track | | start_offset | number | No | "0" | — | Offset in seconds for when the audio should start relative to the video |


Veo 3.1 | Extend Video

Slug: veo3-1-extend-video

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | prompt | string | Yes | — | — | The text prompt describing how the video should be extended | | video_url | string | Yes | — | — | URL of the video to extend. The video should be 720p or 1080p resolution in 16:9 or 9:16 aspect ratio. | | aspect_ratio | string | No | "auto" | auto,16:9,9:16 | The aspect ratio of the generated video. | | duration | string | No | "7" | 7 | The duration of the generated video. | | resolution | string | No | "720p" | 720p | The resolution of the generated video. | | generate_audio | boolean | No | "True" | — | Whether to generate audio for the video. | | auto_fix | boolean | No | "False" | — | Whether to automatically attempt to fix prompts that fail content policy or other validation checks by rewriting them. |


Veo 3.1 | Fast | Extend Video

Slug: veo3-1-fast-extend-video

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | prompt | string | Yes | — | — | The text prompt describing how the video should be extended | | video_url | string | Yes | — | — | URL of the video to extend. The video should be 720p or 1080p resolution in 16:9 or 9:16 aspect ratio. | | aspect_ratio | string | No | "auto" | auto,16:9,9:16 | The aspect ratio of the generated video. | | duration | string | No | "7" | 7 | The duration of the generated video. | | resolution | string | No | "720p" | 720p | The resolution of the generated video. | | generate_audio | boolean | No | "True" | — | Whether to generate audio for the video. | | auto_fix | boolean | No | "False" | — | Whether to automatically attempt to fix prompts that fail content policy or other validation checks by rewriting them. |


Sync | Lipsync | v2 | Pro

Slug: sync-lipsync-v2-pro

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the input video | | audio_url | string | Yes | — | — | URL of the input audio | | sync_mode | string | No | "cut_off" | cut_off,loop,bounce,silence,remap | Lipsync mode when audio and video durations are out of sync. |


Kling O1 | Video to Video Reference

Slug: kling-o1-video-to-video-reference

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | prompt | string | Yes | — | — | Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order. | | video_url | string | Yes | — | — | Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 50MB. | | image_urls | array | No | — | — | Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + refe... | | elements | array | No | — | — | Elements (characters/objects) to include. Reference in prompt as @Element1, @Element2, etc. Maximum 4 total (elements... | | aspect_ratio | string | No | "auto" | auto,16:9,9:16,1:1 | The aspect ratio of the generated video frame. If 'auto', the aspect ratio will be determined automatically based on ... | | duration | string | No | "5" | 5,10 | Video duration in seconds. | | keep_audio | boolean | No | "false" | — | Whether to keep the original audio from the video. |


Kling O1 | Video to Video | Edit

Slug: kling-o1-video-to-video-edit

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | prompt | string | Yes | — | — | Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order. | | video_url | string | Yes | — | — | Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 200MB. | | image_urls | array | No | — | — | Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + refe... | | elements | array | No | — | — | Elements (characters/objects) to include. Reference in prompt as @Element1, @Element2, etc. Maximum 4 total (elements... | | keep_audio | boolean | No | "false" | — | Whether to keep the original audio from the video. |


Topaz Upscale Video

Slug: topaz-upscale-video

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the video to upscale | | upscale_factor | number | No | "2" | — | Factor to upscale the video by (e.g. 2.0 doubles width and height) | | target_fps | integer | No | — | — | Target FPS for frame interpolation. If set, frame interpolation will be enabled. | | H264_output | boolean | No | "False" | — | Whether to use H264 codec for output video. Default is H265. |


Auto Subtitle

Slug: auto-subtitle

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the video file to add automatic subtitles to | | language | string | No | "en" | — | Language code for transcription (e.g., 'en', 'es', 'fr', 'de', 'it', 'pt', 'nl', 'ja', 'zh', 'ko') or 3-letter ISO co... | | font_name | string | No | "Montserrat" | — | Any Google Font name from fonts.google.com (e.g., 'Montserrat', 'Poppins', 'BBH Sans Hegarty') | | font_size | integer | No | "100" | — | Font size for subtitles (TikTok style uses larger text) | | font_weight | string | No | "bold" | normal,bold,black | Font weight (TikTok style typically uses bold or black) | | font_color | string | No | "white" | white,black,red,green,blue,yellow,orange,purple,pink,brown,gray,cyan,magenta | Subtitle text color for non-active words | | highlight_color | string | No | "purple" | white,black,red,green,blue,yellow,orange,purple,pink,brown,gray,cyan,magenta | Color for the currently speaking word (karaoke-style highlight) | | stroke_width | integer | No | "3" | — | Text stroke/outline width in pixels (0 for no stroke) | | stroke_color | string | No | "black" | black,white,red,green,blue,yellow,orange,purple,pink,brown,gray,cyan,magenta | Text stroke/outline color | | background_color | string | No | "none" | black,white,red,green,blue,yellow,orange,purple,pink,brown,gray,cyan,magenta,... | Background color behind text ('none' or 'transparent' for no background) | | background_opacity | number | No | "0" | — | Background opacity (0.0 = fully transparent, 1.0 = fully opaque) | | position | string | No | "bottom" | top,center,bottom | Vertical position of subtitles | | y_offset | integer | No | "75" | — | Vertical offset in pixels (positive = move down, negative = move up) | | words_per_subtitle | integer | No | "3" | — | Maximum number of words per subtitle segment. Use 1 for single-word display, 2-3 for short phrases, or 8-12 for full ... | | enable_animation | boolean | No | "True" | — | Enable animation effects for subtitles (bounce style entrance) |


Merge Videos

Slug: merge-videos

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_urls | array | Yes | — | — | List of video URLs to merge in order | | target_fps | integer | No | — | — | Target FPS for the output video. If not provided, uses the lowest FPS from input videos. | | resolution | string | No | — | square_hd,square,portrait_4_3,portrait_16_9,landscape_4_3,landscape_16_9 | Resolution of the final video |


Wan | v2.2 14B | Animate | Move

Slug: wan-v2-2-14b-animate-move

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the input video. | | image_url | string | Yes | — | — | URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped. | | resolution | string | No | "480p" | 480p,580p,720p | Resolution of the generated video (480p, 580p, or 720p). | | seed | integer | No | — | — | Random seed for reproducibility. If None, a random seed is chosen. | | num_inference_steps | integer | No | "20" | — | Number of inference steps for sampling. Higher values give better quality but take longer. | | enable_safety_checker | boolean | No | "False" | — | If set to true, input data will be checked for safety before processing. | | shift | number | No | "5" | — | Shift value for the video. Must be between 1.0 and 10.0. | | video_quality | string | No | "high" | low,medium,high,maximum | The quality of the output video. Higher quality means better visual quality but larger file size. | | video_write_mode | string | No | "balanced" | fast,balanced,small | The write mode of the output video. Faster write mode means faster results but larger file size, balanced write mode ... |


Wan | v2.2 14B | Animate | Replace

Slug: wan-v2-2-14b-animate-replace

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the input video. | | image_url | string | Yes | — | — | URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped. | | resolution | string | No | "480p" | 480p,580p,720p | Resolution of the generated video (480p, 580p, or 720p). | | seed | integer | No | — | — | Random seed for reproducibility. If None, a random seed is chosen. | | num_inference_steps | integer | No | "20" | — | Number of inference steps for sampling. Higher values give better quality but take longer. | | enable_safety_checker | boolean | No | "False" | — | If set to true, input data will be checked for safety before processing. | | shift | number | No | "5" | — | Shift value for the video. Must be between 1.0 and 10.0. | | video_quality | string | No | "high" | low,medium,high,maximum | The quality of the output video. Higher quality means better visual quality but larger file size. | | video_write_mode | string | No | "balanced" | fast,balanced,small | The write mode of the output video. Faster write mode means faster results but larger file size, balanced write mode ... |


Heygen | Video Translate

Slug: heygen-video-translate

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video | string | No | — | — | Input video file (.mp4) | | output_language | string | No | "English" | English,Spanish,French,Hindi,Italian,German,Polish,Portuguese,Chinese,Japanes... | An enumeration. |


Runway Gen4 | Aleph

Slug: runway-gen4-aleph

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | public_figure_moderation | string | No | "auto" | auto,low | — | | prompt | string | Yes | — | — | Text prompt for video generation Max lenght 1000 | | video_url | string | Yes | — | — | Input video to generate from. Videos must be less than 16MB. Only 5s of the input video will be used. | | aspect_ratio | string | Yes | "1280:720" | 1280:720,720:1280,1104:832,832:1104,960:960,1584:672 | An enumeration. | | seed | integer | No | — | — | Random seed. Set for reproducible generation | | reference_images | array | No | — | — | Reference image to influence the style or content of the output. |


LatentSync

Slug: latentsync

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | The URL of the video to generate the lip sync for. | | audio_url | string | Yes | — | — | The URL of the audio to generate the lip sync for. | | guidance_scale | number | No | "1" | — | Guidance scale for the model inference | | seed | integer | No | — | — | Random seed for generation. If None, a random seed will be used. | | loop_mode | string | No | — | pingpong,loop | Video loop mode when audio is longer than video. Options: pingpong, loop |


PixVerse v5 | Extend

Slug: pixverse-v5-extend

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | — | | prompt | string | Yes | — | — | — | | quality | string | No | "720p" | 360p,540p,720p,1080p | — | | duration | integer | No | "8" | 5,8 | — | | seed | integer | No | — | — | — | | style | string | No | — | anime,3d_animation,clay,comic,cyberpunk | — | | negative_prompt | string | No | — | — | — | | motion_mode | string | No | "normal" | normal | — |


Luma Dream Machine | Ray 2 | Video Reframe

Slug: luma-dream-machine-ray-2-video-reframe

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the input video to reframe | | aspect_ratio | string | No | "9:16" | 1:1,16:9,9:16,4:3,3:4,21:9,9:21 | The aspect ratio of the reframed video | | image_url | string | No | — | — | Optional URL of the first frame image for reframing | | grid_position_x | integer | No | — | — | X position of the grid for reframing | | grid_position_y | integer | No | — | — | Y position of the grid for reframing | | prompt | string | No | — | — | Optional prompt for reframing | | x_end | integer | No | — | — | End X coordinate for reframing | | x_start | integer | No | — | — | Start X coordinate for reframing | | y_end | integer | No | — | — | End Y coordinate for reframing | | y_start | integer | No | — | — | Start Y coordinate for reframing |


Luma Dream Machine | Ray 2 Flash | Video Reframe

Slug: luma-dream-machine-ray-2-flash-video-reframe

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | y_start | integer | No | — | — | Start Y coordinate for reframing | | video_url | string | Yes | — | — | URL of the input video to reframe | | aspect_ratio | string | No | "9:16" | 1:1,16:9,9:16,4:3,3:4,21:9,9:21 | Possible enum values | | image_url | string | No | — | — | Optional URL of the first frame image for reframing | | grid_position_x | integer | No | — | — | X position of the grid for reframing | | grid_position_y | integer | No | — | — | Y position of the grid for reframing | | prompt | string | No | — | — | Optional prompt for reframing | | x_end | integer | No | — | — | End X coordinate for reframing | | x_start | integer | No | — | — | Start X coordinate for reframing | | y_end | integer | No | — | — | End Y coordinate for reframing |


Faceswap | Video

Slug: faceswap-video

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | face_image_url | string | Yes | — | — | — | | target_video_url | string | Yes | — | — | — |


MMAudio | V2

Slug: mm-audio-v-2

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | The URL of the video to generate the audio for. | | prompt | string | Yes | — | — | The prompt to generate the audio for. | | negative_prompt | string | No | — | — | The negative prompt to generate the audio for | | seed | integer | No | — | — | — | | num_steps | integer | No | "25" | — | The number of steps to generate the audio for. | | duration | integer | No | "8" | — | — | | cfg_strength | number | No | "4.5" | — | The strength of Classifier Free Guidance. | | mask_away_clip | boolean | No | — | — | Whether to mask away the clip. |


PixVerse | Lip Sync

Slug: pixverse-lip-sync

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | Video Url . Max 30 second | | audio_url | string | No | — | — | Audio Url . Max 30 second | | speaker | string | No | — | {"auto":{"title":"auto","audio":""},"1":{"title":"Emily","audio":"https://sto... | — | | speaker_content | string | No | — | — | — |


PixVerse v4.5 | Extend

Slug: pixverse-v4-5-extend

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | — | | prompt | string | Yes | — | — | — | | quality | string | Yes | "720p" | 360p,540p,720p,1080p | — | | duration | integer | Yes | "5" | 5,8 | — | | seed | integer | No | — | — | — | | style | string | No | — | anime,3d_animation,clay,comic,cyberpunk | — | | negative_prompt | string | No | — | — | — | | motion_mode | string | No | "normal" | normal,fast | — |


MM Audio

Slug: mmaudio

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | prompt | string | No | — | — | Text prompt for generated audio | | negative_prompt | string | No | "music" | — | Negative prompt to avoid certain sounds | | video | string | Yes | — | — | Optional video file for video-to-audio generation | | duration | number | No | "8" | — | Duration of output in seconds | | num_steps | integer | No | "25" | — | Number of inference steps | | cfg_strength | number | No | "4.5" | — | Guidance strength (CFG) | | seed | integer | No | — | — | Seed |


Audio Based Lip Synchronization

Slug: video-retalking

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | face | string | Yes | — | — | An image with a face | | input_audio | string | Yes | — | — | Input audio file. | | audio_duration | number | Yes | "30" | — | The total length of the audio file to be processed or analyzed. |


Archive v0.1.0: 3 files, 6590 bytes

Files: references/MODELS.md (22739b), SKILL.md (5608b), _meta.json (138b)

File v0.1.0:SKILL.md


name: eachlabs-video-edit description: Edit, transform, extend, upscale, and enhance videos using EachLabs AI models. Supports lip sync, video translation, subtitle generation, audio merging, style transfer, and video extension. Use when the user wants to edit or transform existing video content. metadata: author: eachlabs version: "1.0"

EachLabs Video Edit

Edit, transform, and enhance existing videos using 25+ AI models via the EachLabs Predictions API.

Authentication

Header: X-API-Key: <your-api-key>

Set the EACHLABS_API_KEY environment variable. Get your key at eachlabs.ai.

Model Selection Guide

Video Extension

| Model | Slug | Best For | |-------|------|----------| | Veo 3.1 Extend | veo3-1-extend-video | Best quality extension | | Veo 3.1 Fast Extend | veo3-1-fast-extend-video | Fast extension | | PixVerse v5 Extend | pixverse-v5-extend | PixVerse extension | | PixVerse v4.5 Extend | pixverse-v4-5-extend | Older PixVerse extension |

Lip Sync & Talking Head

| Model | Slug | Best For | |-------|------|----------| | Sync Lipsync v2 Pro | sync-lipsync-v2-pro | Best lip sync quality | | PixVerse Lip Sync | pixverse-lip-sync | PixVerse lip sync | | LatentSync | latentsync | Open-source lip sync | | Video Retalking | video-retalking | Audio-based lip sync |

Video Transformation

| Model | Slug | Best For | |-------|------|----------| | Runway Gen4 Aleph | runway-gen4-aleph | Video transformation | | Kling O1 Video Edit | kling-o1-video-to-video-edit | AI video editing | | Kling O1 V2V Reference | kling-o1-video-to-video-reference | Reference-based edit | | ByteDance Video Stylize | bytedance-video-stylize | Style transfer | | Wan v2.2 Animate Move | wan-v2-2-14b-animate-move | Motion animation | | Wan v2.2 Animate Replace | wan-v2-2-14b-animate-replace | Object replacement |

Video Upscaling & Enhancement

| Model | Slug | Best For | |-------|------|----------| | Topaz Upscale Video | topaz-upscale-video | Best quality upscale | | Luma Ray 2 Video Reframe | luma-dream-machine-ray-2-video-reframe | Video reframing | | Luma Ray 2 Flash Reframe | luma-dream-machine-ray-2-flash-video-reframe | Fast reframing |

Audio & Subtitles

| Model | Slug | Best For | |-------|------|----------| | FFmpeg Merge Audio Video | ffmpeg-api-merge-audio-video | Merge audio track | | MMAudio V2 | mm-audio-v-2 | Add audio to video | | MMAudio | mmaudio | Add audio to video | | Auto Subtitle | auto-subtitle | Generate subtitles | | Merge Videos | merge-videos | Concatenate videos |

Video Translation

| Model | Slug | Best For | |-------|------|----------| | Heygen Video Translate | heygen-video-translate | Translate video speech |

Motion Transfer

| Model | Slug | Best For | |-------|------|----------| | Motion Fast | motion-fast | Fast motion transfer | | Infinitalk V2V | infinitalk-video-to-video | Talking head from video |

Face Swap (Video)

| Model | Slug | Best For | |-------|------|----------| | Faceswap Video | faceswap-video | Swap face in video |

Prediction Flow

  1. Check model GET https://api.eachlabs.ai/v1/model?slug=<slug> — validates the model exists and returns the request_schema with exact input parameters. Always do this before creating a prediction to ensure correct inputs.
  2. POST https://api.eachlabs.ai/v1/prediction with model slug, version "0.0.1", and input matching the schema
  3. Poll GET https://api.eachlabs.ai/v1/prediction/{id} until status is "success" or "failed"
  4. Extract the output video URL from the response

Examples

Extend a Video with Veo 3.1

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "veo3-1-extend-video",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/video.mp4",
      "prompt": "Continue the scene with the camera slowly pulling back"
    }
  }'

Lip Sync with Sync v2 Pro

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "sync-lipsync-v2-pro",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/talking-head.mp4",
      "audio_url": "https://example.com/new-audio.mp3"
    }
  }'

Add Subtitles

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "auto-subtitle",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/video.mp4"
    }
  }'

Merge Audio with Video

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "ffmpeg-api-merge-audio-video",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/video.mp4",
      "audio_url": "https://example.com/music.mp3",
      "start_offset": 0
    }
  }'

Upscale Video with Topaz

curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "topaz-upscale-video",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/low-res-video.mp4"
    }
  }'

Parameter Reference

See references/MODELS.md for complete parameter details for each model.

File v0.1.0:_meta.json

{ "ownerId": "kn7daknf647gdfdwzpyq5scnvn80tq7d", "slug": "eachlabs-video-edit", "version": "0.1.0", "publishedAt": 1770603541310 }

File v0.1.0:references/MODELS.md

Video Edit Models Reference

Complete parameter reference for all video editing models. All models use version 0.0.1.


Motion | Fast

Slug: motion-fast

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the input video. | | image_url | string | Yes | — | — | URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped. | | resolution | string | No | "480p" | 480p,580p,720p | Resolution of the generated video (480p, 580p, or 720p). | | seed | integer | No | — | — | Random seed for reproducibility. If None, a random seed is chosen. | | num_inference_steps | integer | No | "20" | — | Number of inference steps for sampling. Higher values give better quality but take longer. | | enable_safety_checker | boolean | No | "False" | — | If set to true, input data will be checked for safety before processing. | | shift | number | No | "5" | — | Shift value for the video. Must be between 1.0 and 10.0. | | video_quality | string | No | "high" | low,medium,high,maximum | The quality of the output video. Higher quality means better visual quality but larger file size. | | video_write_mode | string | No | "balanced" | fast,balanced,small | The write mode of the output video. Faster write mode means faster results but larger file size, balanced write mode ... | | use_turbo | boolean | No | "false" | — | If true, applies quality enhancement for faster generation with improved quality. When enabled, parameters are automa... |


Infinitalk | Video to Video

Slug: infinitalk-video-to-video

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | audio | string | Yes | — | — | The URL of the audio file. | | video | string | Yes | — | — | The video for generating the output. | | prompt | string | No | — | — | The positive prompt for the generation. | | resolution | string | No | "720p" | 480p,720p | Resolution of the video to generate. Must be either 480p or 720p. | | mask_image | string | No | — | — | Optional mask image to specify the person in the video to animate. | | seed | integer | No | "-1" | — | The random seed to use for the generation. -1 means a random seed will be used. |


Ffmpeg Api | Merge Audio Video

Slug: ffmpeg-api-merge-audio-video

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the video file to use as the video track | | audio_url | string | Yes | — | — | URL of the audio file to use as the audio track | | start_offset | number | No | "0" | — | Offset in seconds for when the audio should start relative to the video |


Veo 3.1 | Extend Video

Slug: veo3-1-extend-video

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | prompt | string | Yes | — | — | The text prompt describing how the video should be extended | | video_url | string | Yes | — | — | URL of the video to extend. The video should be 720p or 1080p resolution in 16:9 or 9:16 aspect ratio. | | aspect_ratio | string | No | "auto" | auto,16:9,9:16 | The aspect ratio of the generated video. | | duration | string | No | "7" | 7 | The duration of the generated video. | | resolution | string | No | "720p" | 720p | The resolution of the generated video. | | generate_audio | boolean | No | "True" | — | Whether to generate audio for the video. | | auto_fix | boolean | No | "False" | — | Whether to automatically attempt to fix prompts that fail content policy or other validation checks by rewriting them. |


Veo 3.1 | Fast | Extend Video

Slug: veo3-1-fast-extend-video

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | prompt | string | Yes | — | — | The text prompt describing how the video should be extended | | video_url | string | Yes | — | — | URL of the video to extend. The video should be 720p or 1080p resolution in 16:9 or 9:16 aspect ratio. | | aspect_ratio | string | No | "auto" | auto,16:9,9:16 | The aspect ratio of the generated video. | | duration | string | No | "7" | 7 | The duration of the generated video. | | resolution | string | No | "720p" | 720p | The resolution of the generated video. | | generate_audio | boolean | No | "True" | — | Whether to generate audio for the video. | | auto_fix | boolean | No | "False" | — | Whether to automatically attempt to fix prompts that fail content policy or other validation checks by rewriting them. |


Sync | Lipsync | v2 | Pro

Slug: sync-lipsync-v2-pro

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the input video | | audio_url | string | Yes | — | — | URL of the input audio | | sync_mode | string | No | "cut_off" | cut_off,loop,bounce,silence,remap | Lipsync mode when audio and video durations are out of sync. |


Kling O1 | Video to Video Reference

Slug: kling-o1-video-to-video-reference

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | prompt | string | Yes | — | — | Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order. | | video_url | string | Yes | — | — | Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 50MB. | | image_urls | array | No | — | — | Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + refe... | | elements | array | No | — | — | Elements (characters/objects) to include. Reference in prompt as @Element1, @Element2, etc. Maximum 4 total (elements... | | aspect_ratio | string | No | "auto" | auto,16:9,9:16,1:1 | The aspect ratio of the generated video frame. If 'auto', the aspect ratio will be determined automatically based on ... | | duration | string | No | "5" | 5,10 | Video duration in seconds. | | keep_audio | boolean | No | "false" | — | Whether to keep the original audio from the video. |


Kling O1 | Video to Video | Edit

Slug: kling-o1-video-to-video-edit

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | prompt | string | Yes | — | — | Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order. | | video_url | string | Yes | — | — | Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 200MB. | | image_urls | array | No | — | — | Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + refe... | | elements | array | No | — | — | Elements (characters/objects) to include. Reference in prompt as @Element1, @Element2, etc. Maximum 4 total (elements... | | keep_audio | boolean | No | "false" | — | Whether to keep the original audio from the video. |


Topaz Upscale Video

Slug: topaz-upscale-video

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the video to upscale | | upscale_factor | number | No | "2" | — | Factor to upscale the video by (e.g. 2.0 doubles width and height) | | target_fps | integer | No | — | — | Target FPS for frame interpolation. If set, frame interpolation will be enabled. | | H264_output | boolean | No | "False" | — | Whether to use H264 codec for output video. Default is H265. |


Auto Subtitle

Slug: auto-subtitle

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the video file to add automatic subtitles to | | language | string | No | "en" | — | Language code for transcription (e.g., 'en', 'es', 'fr', 'de', 'it', 'pt', 'nl', 'ja', 'zh', 'ko') or 3-letter ISO co... | | font_name | string | No | "Montserrat" | — | Any Google Font name from fonts.google.com (e.g., 'Montserrat', 'Poppins', 'BBH Sans Hegarty') | | font_size | integer | No | "100" | — | Font size for subtitles (TikTok style uses larger text) | | font_weight | string | No | "bold" | normal,bold,black | Font weight (TikTok style typically uses bold or black) | | font_color | string | No | "white" | white,black,red,green,blue,yellow,orange,purple,pink,brown,gray,cyan,magenta | Subtitle text color for non-active words | | highlight_color | string | No | "purple" | white,black,red,green,blue,yellow,orange,purple,pink,brown,gray,cyan,magenta | Color for the currently speaking word (karaoke-style highlight) | | stroke_width | integer | No | "3" | — | Text stroke/outline width in pixels (0 for no stroke) | | stroke_color | string | No | "black" | black,white,red,green,blue,yellow,orange,purple,pink,brown,gray,cyan,magenta | Text stroke/outline color | | background_color | string | No | "none" | black,white,red,green,blue,yellow,orange,purple,pink,brown,gray,cyan,magenta,... | Background color behind text ('none' or 'transparent' for no background) | | background_opacity | number | No | "0" | — | Background opacity (0.0 = fully transparent, 1.0 = fully opaque) | | position | string | No | "bottom" | top,center,bottom | Vertical position of subtitles | | y_offset | integer | No | "75" | — | Vertical offset in pixels (positive = move down, negative = move up) | | words_per_subtitle | integer | No | "3" | — | Maximum number of words per subtitle segment. Use 1 for single-word display, 2-3 for short phrases, or 8-12 for full ... | | enable_animation | boolean | No | "True" | — | Enable animation effects for subtitles (bounce style entrance) |


Merge Videos

Slug: merge-videos

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_urls | array | Yes | — | — | List of video URLs to merge in order | | target_fps | integer | No | — | — | Target FPS for the output video. If not provided, uses the lowest FPS from input videos. | | resolution | string | No | — | square_hd,square,portrait_4_3,portrait_16_9,landscape_4_3,landscape_16_9 | Resolution of the final video |


Wan | v2.2 14B | Animate | Move

Slug: wan-v2-2-14b-animate-move

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the input video. | | image_url | string | Yes | — | — | URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped. | | resolution | string | No | "480p" | 480p,580p,720p | Resolution of the generated video (480p, 580p, or 720p). | | seed | integer | No | — | — | Random seed for reproducibility. If None, a random seed is chosen. | | num_inference_steps | integer | No | "20" | — | Number of inference steps for sampling. Higher values give better quality but take longer. | | enable_safety_checker | boolean | No | "False" | — | If set to true, input data will be checked for safety before processing. | | shift | number | No | "5" | — | Shift value for the video. Must be between 1.0 and 10.0. | | video_quality | string | No | "high" | low,medium,high,maximum | The quality of the output video. Higher quality means better visual quality but larger file size. | | video_write_mode | string | No | "balanced" | fast,balanced,small | The write mode of the output video. Faster write mode means faster results but larger file size, balanced write mode ... |


Wan | v2.2 14B | Animate | Replace

Slug: wan-v2-2-14b-animate-replace

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the input video. | | image_url | string | Yes | — | — | URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped. | | resolution | string | No | "480p" | 480p,580p,720p | Resolution of the generated video (480p, 580p, or 720p). | | seed | integer | No | — | — | Random seed for reproducibility. If None, a random seed is chosen. | | num_inference_steps | integer | No | "20" | — | Number of inference steps for sampling. Higher values give better quality but take longer. | | enable_safety_checker | boolean | No | "False" | — | If set to true, input data will be checked for safety before processing. | | shift | number | No | "5" | — | Shift value for the video. Must be between 1.0 and 10.0. | | video_quality | string | No | "high" | low,medium,high,maximum | The quality of the output video. Higher quality means better visual quality but larger file size. | | video_write_mode | string | No | "balanced" | fast,balanced,small | The write mode of the output video. Faster write mode means faster results but larger file size, balanced write mode ... |


Heygen | Video Translate

Slug: heygen-video-translate

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video | string | No | — | — | Input video file (.mp4) | | output_language | string | No | "English" | English,Spanish,French,Hindi,Italian,German,Polish,Portuguese,Chinese,Japanes... | An enumeration. |


Runway Gen4 | Aleph

Slug: runway-gen4-aleph

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | public_figure_moderation | string | No | "auto" | auto,low | — | | prompt | string | Yes | — | — | Text prompt for video generation Max lenght 1000 | | video_url | string | Yes | — | — | Input video to generate from. Videos must be less than 16MB. Only 5s of the input video will be used. | | aspect_ratio | string | Yes | "1280:720" | 1280:720,720:1280,1104:832,832:1104,960:960,1584:672 | An enumeration. | | seed | integer | No | — | — | Random seed. Set for reproducible generation | | reference_images | array | No | — | — | Reference image to influence the style or content of the output. |


LatentSync

Slug: latentsync

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | The URL of the video to generate the lip sync for. | | audio_url | string | Yes | — | — | The URL of the audio to generate the lip sync for. | | guidance_scale | number | No | "1" | — | Guidance scale for the model inference | | seed | integer | No | — | — | Random seed for generation. If None, a random seed will be used. | | loop_mode | string | No | — | pingpong,loop | Video loop mode when audio is longer than video. Options: pingpong, loop |


PixVerse v5 | Extend

Slug: pixverse-v5-extend

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | — | | prompt | string | Yes | — | — | — | | quality | string | No | "720p" | 360p,540p,720p,1080p | — | | duration | integer | No | "8" | 5,8 | — | | seed | integer | No | — | — | — | | style | string | No | — | anime,3d_animation,clay,comic,cyberpunk | — | | negative_prompt | string | No | — | — | — | | motion_mode | string | No | "normal" | normal | — |


Luma Dream Machine | Ray 2 | Video Reframe

Slug: luma-dream-machine-ray-2-video-reframe

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | URL of the input video to reframe | | aspect_ratio | string | No | "9:16" | 1:1,16:9,9:16,4:3,3:4,21:9,9:21 | The aspect ratio of the reframed video | | image_url | string | No | — | — | Optional URL of the first frame image for reframing | | grid_position_x | integer | No | — | — | X position of the grid for reframing | | grid_position_y | integer | No | — | — | Y position of the grid for reframing | | prompt | string | No | — | — | Optional prompt for reframing | | x_end | integer | No | — | — | End X coordinate for reframing | | x_start | integer | No | — | — | Start X coordinate for reframing | | y_end | integer | No | — | — | End Y coordinate for reframing | | y_start | integer | No | — | — | Start Y coordinate for reframing |


Luma Dream Machine | Ray 2 Flash | Video Reframe

Slug: luma-dream-machine-ray-2-flash-video-reframe

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | y_start | integer | No | — | — | Start Y coordinate for reframing | | video_url | string | Yes | — | — | URL of the input video to reframe | | aspect_ratio | string | No | "9:16" | 1:1,16:9,9:16,4:3,3:4,21:9,9:21 | Possible enum values | | image_url | string | No | — | — | Optional URL of the first frame image for reframing | | grid_position_x | integer | No | — | — | X position of the grid for reframing | | grid_position_y | integer | No | — | — | Y position of the grid for reframing | | prompt | string | No | — | — | Optional prompt for reframing | | x_end | integer | No | — | — | End X coordinate for reframing | | x_start | integer | No | — | — | Start X coordinate for reframing | | y_end | integer | No | — | — | End Y coordinate for reframing |


Faceswap | Video

Slug: faceswap-video

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | face_image_url | string | Yes | — | — | — | | target_video_url | string | Yes | — | — | — |


MMAudio | V2

Slug: mm-audio-v-2

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | The URL of the video to generate the audio for. | | prompt | string | Yes | — | — | The prompt to generate the audio for. | | negative_prompt | string | No | — | — | The negative prompt to generate the audio for | | seed | integer | No | — | — | — | | num_steps | integer | No | "25" | — | The number of steps to generate the audio for. | | duration | integer | No | "8" | — | — | | cfg_strength | number | No | "4.5" | — | The strength of Classifier Free Guidance. | | mask_away_clip | boolean | No | — | — | Whether to mask away the clip. |


PixVerse | Lip Sync

Slug: pixverse-lip-sync

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | Video Url . Max 30 second | | audio_url | string | No | — | — | Audio Url . Max 30 second | | speaker | string | No | — | {"auto":{"title":"auto","audio":""},"1":{"title":"Emily","audio":"https://sto... | — | | speaker_content | string | No | — | — | — |


PixVerse v4.5 | Extend

Slug: pixverse-v4-5-extend

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | video_url | string | Yes | — | — | — | | prompt | string | Yes | — | — | — | | quality | string | Yes | "720p" | 360p,540p,720p,1080p | — | | duration | integer | Yes | "5" | 5,8 | — | | seed | integer | No | — | — | — | | style | string | No | — | anime,3d_animation,clay,comic,cyberpunk | — | | negative_prompt | string | No | — | — | — | | motion_mode | string | No | "normal" | normal,fast | — |


MM Audio

Slug: mmaudio

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | prompt | string | No | — | — | Text prompt for generated audio | | negative_prompt | string | No | "music" | — | Negative prompt to avoid certain sounds | | video | string | Yes | — | — | Optional video file for video-to-audio generation | | duration | number | No | "8" | — | Duration of output in seconds | | num_steps | integer | No | "25" | — | Number of inference steps | | cfg_strength | number | No | "4.5" | — | Guidance strength (CFG) | | seed | integer | No | — | — | Seed |


Audio Based Lip Synchronization

Slug: video-retalking

| Parameter | Type | Required | Default | Options / Constraints | Description | |-----------|------|----------|---------|----------------------|-------------| | face | string | Yes | — | — | An image with a face | | input_audio | string | Yes | — | — | Input audio file. | | audio_duration | number | Yes | "30" | — | The total length of the audio file to be processed or analyzed. |


API & Reliability

Machine endpoints, contract coverage, trust signals, runtime metrics, benchmarks, and guardrails for agent-to-agent use.

MissingCLAWHUB

Machine interfaces

Contract & API

Contract coverage

Status

missing

Auth

None

Streaming

No

Data region

Unspecified

Protocol support

OpenClaw: self-declared

Requires: none

Forbidden: none

Guardrails

Operational confidence: low

No positive guardrails captured.
Invocation examples
curl -s "https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/snapshot"
curl -s "https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/contract"
curl -s "https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/trust"

Operational fit

Reliability & Benchmarks

Trust signals

Handshake

UNKNOWN

Confidence

unknown

Attempts 30d

unknown

Fallback rate

unknown

Runtime metrics

Observed P50

unknown

Observed P95

unknown

Rate limit

unknown

Estimated cost

unknown

Do not use if

Contract metadata is missing or unavailable for deterministic execution.
No benchmark suites or observed failure patterns are available.

Machine Appendix

Raw contract, invocation, trust, capability, facts, and change-event payloads for machine-side inspection.

MissingCLAWHUB

Contract JSON

{
  "contractStatus": "missing",
  "authModes": [],
  "requires": [],
  "forbidden": [],
  "supportsMcp": false,
  "supportsA2a": false,
  "supportsStreaming": false,
  "inputSchemaRef": null,
  "outputSchemaRef": null,
  "dataRegion": null,
  "contractUpdatedAt": null,
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Invocation Guide

{
  "preferredApi": {
    "snapshotUrl": "https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/snapshot",
    "contractUrl": "https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/contract",
    "trustUrl": "https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/trust"
  },
  "curlExamples": [
    "curl -s \"https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/snapshot\"",
    "curl -s \"https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/contract\"",
    "curl -s \"https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/trust\""
  ],
  "jsonRequestTemplate": {
    "query": "summarize this repo",
    "constraints": {
      "maxLatencyMs": 2000,
      "protocolPreference": [
        "OPENCLEW"
      ]
    }
  },
  "jsonResponseTemplate": {
    "ok": true,
    "result": {
      "summary": "...",
      "confidence": 0.9
    },
    "meta": {
      "source": "CLAWHUB",
      "generatedAt": "2026-04-17T04:54:55.926Z"
    }
  },
  "retryPolicy": {
    "maxAttempts": 3,
    "backoffMs": [
      500,
      1500,
      3500
    ],
    "retryableConditions": [
      "HTTP_429",
      "HTTP_503",
      "NETWORK_TIMEOUT"
    ]
  }
}

Trust JSON

{
  "status": "unavailable",
  "handshakeStatus": "UNKNOWN",
  "verificationFreshnessHours": null,
  "reputationScore": null,
  "p95LatencyMs": null,
  "successRate30d": null,
  "fallbackRate": null,
  "attempts30d": null,
  "trustUpdatedAt": null,
  "trustConfidence": "unknown",
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Capability Matrix

{
  "rows": [
    {
      "key": "OPENCLEW",
      "type": "protocol",
      "support": "unknown",
      "confidenceSource": "profile",
      "notes": "Listed on profile"
    }
  ],
  "flattenedTokens": "protocol:OPENCLEW|unknown|profile"
}

Facts JSON

[
  {
    "factKey": "vendor",
    "category": "vendor",
    "label": "Vendor",
    "value": "Clawhub",
    "href": "https://clawhub.ai/eftalyurtseven/eachlabs-video-edit",
    "sourceUrl": "https://clawhub.ai/eftalyurtseven/eachlabs-video-edit",
    "sourceType": "profile",
    "confidence": "medium",
    "observedAt": "2026-04-15T00:45:39.800Z",
    "isPublic": true
  },
  {
    "factKey": "protocols",
    "category": "compatibility",
    "label": "Protocol compatibility",
    "value": "OpenClaw",
    "href": "https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/contract",
    "sourceUrl": "https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/contract",
    "sourceType": "contract",
    "confidence": "medium",
    "observedAt": "2026-04-15T00:45:39.800Z",
    "isPublic": true
  },
  {
    "factKey": "traction",
    "category": "adoption",
    "label": "Adoption signal",
    "value": "773 downloads",
    "href": "https://clawhub.ai/eftalyurtseven/eachlabs-video-edit",
    "sourceUrl": "https://clawhub.ai/eftalyurtseven/eachlabs-video-edit",
    "sourceType": "profile",
    "confidence": "medium",
    "observedAt": "2026-04-15T00:45:39.800Z",
    "isPublic": true
  },
  {
    "factKey": "latest_release",
    "category": "release",
    "label": "Latest release",
    "value": "0.1.1",
    "href": "https://clawhub.ai/eftalyurtseven/eachlabs-video-edit",
    "sourceUrl": "https://clawhub.ai/eftalyurtseven/eachlabs-video-edit",
    "sourceType": "release",
    "confidence": "medium",
    "observedAt": "2026-02-09T03:25:08.749Z",
    "isPublic": true
  },
  {
    "factKey": "handshake_status",
    "category": "security",
    "label": "Handshake status",
    "value": "UNKNOWN",
    "href": "https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/trust",
    "sourceUrl": "https://xpersona.co/api/v1/agents/clawhub-eftalyurtseven-eachlabs-video-edit/trust",
    "sourceType": "trust",
    "confidence": "medium",
    "observedAt": null,
    "isPublic": true
  }
]

Change Events JSON

[
  {
    "eventType": "release",
    "title": "Release 0.1.1",
    "description": "No changes detected in this version. - The skill definition and documentation remain unchanged from the previous version.",
    "href": "https://clawhub.ai/eftalyurtseven/eachlabs-video-edit",
    "sourceUrl": "https://clawhub.ai/eftalyurtseven/eachlabs-video-edit",
    "sourceType": "release",
    "confidence": "medium",
    "observedAt": "2026-02-09T03:25:08.749Z",
    "isPublic": true
  }
]

Sponsored

Ads related to Eachlabs Video Edit and adjacent AI workflows.