thewulf7

Video Messages from your openclaw

設計創意v0.1.2
作者:thewulf7更新於 2026-05-11共 3 個版本 · 最新版本釋出於 2026-02-03avatar-video-messages@clawhub_thewulf7/avatar-video-messages
影片處理#Audio#Message

據 AlphaMoat 統計,截至 2026-09,Video Messages from your openclaw 累計下載 4,479 次、獲 5 個星標,在全部 5,078 個 AI 技能中排名第 2,157 位,在「設計創意」分類(512 個)中排名第 210 位。

累計安裝
576
累計下載
4479
星標
5
全站排名
#2,157
全站前 43% · 「設計創意」前 42%
平台累計安裝累計下載星標評論
ClawHub ↗14143304-
SkillHub ↗57644795—

各平台的計數口徑不同,統計時間不一致。

這個技能是做什麼的

把文字或音訊做成帶口型同步的數位人影片,需要語音時先合成音訊再交給 avatarcam 渲染成 MP4。輸出可做成 Telegram 的圓形影片訊息。形象與背景從 TOOLS.md 讀取。無圖形介面的 Linux 環境下會用虛擬顯示執行,依賴 ffmpeg 與 avatarcam。安裝前核對 npm 套件的實際身分。產生的媒體和形象/背景素材可能透過 Telegram 傳送,僅在確有分享意圖時使用。應將範圍過大的暫存檔清理改成只刪除本次執行的確切輸出檔。

資料釋出於 2026-10-27

可以用來做什麼

  • 把一段祝賀文字做成數位人口播影片
  • 用已有錄音生成對嘴型影片回覆

什麼時候用

  • 要用影片而不是語音回覆時
  • 已有 VRM 形象想直接出片時

示例提示詞

以下是根據技能文件生成的示例,不代表實際執行結果。

寫一段生日祝福並做成數位人影片
用這段錄音生成對嘴型的影片訊息

月度資料趨勢

累計下載4479
3309393845662026-03 · 累計下載 33962026-05 · 累計下載 37002026-06 · 累計下載 37392026-07 · 累計下載 40322026-08 · 累計下載 42132026-09 · 累計下載 447926-0326-09
星標5
4552026-03 · 星標 42026-05 · 星標 52026-06 · 星標 42026-07 · 星標 52026-08 · 星標 52026-09 · 星標 526-0326-09

2026-09 起統計方法調整:同名技能按作者分別統計,並覆蓋全部技能。圖中虛線為調整前的月份,與之後的資料不直接比較,也不計算跨越調整的增長。

月份累計下載環比星標
2026-094479—5
2026-084213+4.5%5
2026-074032+7.8%5
2026-063739+1.1%4
2026-053700—5
2026-033396—4

SKILL.md 原文

以下是作者釋出的原始檔案,按純文字顯示,本站未做修改或稽核;其中的連結不可點選,命令請核實後再執行。抓取於 2026-10-23。

4.4 KB · ClawHub v0.1.2
---
name: video-message
description: Generate and send video messages with a lip-syncing VRM avatar. Use when user asks for video message, avatar video, video reply, or when TTS should be delivered as video instead of audio.
metadata:
  {
    "openclaw":
      {
        "emoji": "🎥",
        "requires": { "bins": ["ffmpeg", "avatarcam"] },
        "install":
展開全部(共 170 行)
          [
            {
              "id": "npm",
              "kind": "npm",
              "package": "@thewulf7/openclaw-avatarcam",
              "global": true,
              "bins": ["avatarcam"],
              "label": "Install avatarcam (npm)",
            },
            {
              "id": "brew",
              "kind": "brew",
              "formula": "ffmpeg",
              "bins": ["ffmpeg"],
              "label": "Install ffmpeg (brew)",
            },
            {
              "id": "apt",
              "kind": "apt",
              "packages": ["xvfb", "xauth"],
              "label": "Install headless X dependencies (Linux only)",
            },
          ],
      },
  }
---

# Video Message

Generate avatar video messages from text or audio. Outputs as Telegram video notes (circular format).

## Installation

```bash
npm install -g openclaw-avatarcam
```

## Configuration

Configure in `TOOLS.md`:

```markdown
### Video Message (avatarcam)
- avatar: default.vrm
- background: #00FF00
```

### Settings Reference

| Setting | Default | Description |
|---------|---------|-------------|
| `avatar` | `default.vrm` | VRM avatar file path |
| `background` | `#00FF00` | Color (hex) or image path |

## Prerequisites

### System Dependencies

| Platform | Command |
|----------|---------|
| **macOS** | `brew install ffmpeg` |
| **Linux** | `sudo apt-get install -y xvfb xauth ffmpeg` |
| **Windows** | Install ffmpeg and add to PATH |
| **Docker** | See Docker section below |

> **Note:** macOS and Windows don't need xvfb — they have native display support.

### Docker Users
Add to `OPENCLAW_DOCKER_APT_PACKAGES`:
```
build-essential procps curl file git ca-certificates xvfb xauth libgbm1 libxss1 libatk1.0-0 libatk-bridge2.0-0 libgdk-pixbuf2.0-0 libgtk-3-0 libasound2 libnss3 ffmpeg
```

## Usage

```bash
# With color background
avatarcam --audio voice.mp3 --output video.mp4 --background "#00FF00"

# With image background
avatarcam --audio voice.mp3 --output video.mp4 --background "./bg.png"

# With custom avatar
avatarcam --audio voice.mp3 --output video.mp4 --avatar "./custom.vrm"
```

## Sending as Video Note

Use OpenClaw's `message` tool with `asVideoNote`:

```
message action=send filePath=/tmp/video.mp4 asVideoNote=true
```

## Workflow

1. **Read config** from TOOLS.md (avatar, background)
2. **Generate TTS** if given text: `tts text="..."` → audio path
3. **Run avatarcam** with audio + settings → MP4 output
4. **Send as video note** via `message action=send filePath=... asVideoNote=true`
5. **Return NO_REPLY** after sending

## Example Flow

User: "Send me a video message saying hello"

```bash
# 1. TTS
tts text="Hello! How are you today?" → /tmp/voice.mp3

# 2. Generate video
avatarcam --audio /tmp/voice.mp3 --output /tmp/video.mp4 --background "#00FF00"

# 3. Send as video note
message action=send filePath=/tmp/video.mp4 asVideoNote=true

# 4. Reply
NO_REPLY
```

## Technical Details

| Setting | Value |
|---------|-------|
| Resolution | 384x384 (square) |
| Frame rate | 30fps constant |
| Max duration | 60 seconds |
| Video codec | H.264 (libx264) |
| Audio codec | AAC |
| Quality | CRF 18 (high quality) |
| Container | MP4 |

### Processing Pipeline
1. Electron renders VRM avatar with lip sync at 1280x720
2. WebM captured via `canvas.captureStream(30)`
3. FFmpeg processes: crop → fps normalize → scale → encode
4. Message tool sends via Telegram `sendVideoNote` API

## Platform Support

| Platform | Display | Notes |
|----------|---------|-------|
| macOS | Native Quartz | No extra deps |
| Linux | xvfb (headless) | `apt install xvfb` |
| Windows | Native | No extra deps |

## Headless Rendering

Avatarcam auto-detects headless environments:
- Uses `xvfb-run` when `$DISPLAY` is not set (Linux only)
- macOS/Windows use native display
- GPU stall warnings are safe to ignore
- Generation time: ~1.5x realtime (20s audio ≈ 30s processing)

## Notes

- Config is read from TOOLS.md
- Clean up temp files after sending: `rm /tmp/video*.mp4`
- For regular video (not circular), omit `asVideoNote=true`

「設計創意」分類下的熱門技能

資料月份:2026-09 · 下載/星標/安裝數聚合自公開技能註冊庫(ClawHub、SkillHub),按月更新。口徑說明見資料方法。