Token导航 LogoToken导航TokenDH.com
Intentional Masking logo
音视频未说明官方级别未说明来源级核验

Intentional Masking

MCP Server

一款基于Remotion和React Three Fiber的Ready Player Me角色口型同步渲染服务,支持静态图像和动态视频渲染。

工具数

2

提示词数

0

GitHub Stars

0

资源数

0
TypeScriptClaude语音音频Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

IzzyFuller

提供方

IzzyFuller

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

故意掩盖

MCP服务器,用于使用Remotion和React Three Fiber渲染Ready Player Me化身的唇形同步。

特性

  • render_frame -使用表情、姿势、相机和照明选项渲染化身的单个静止图像
  • 渲染_峰值_视频 -从音频中渲染一个化身用基于真实音素的唇形同步说话的视频

需求

  • Node.js 18+
  • macOS、Linux或Windows

安装

cd intentional-masking
npm install
npm run build

用法

作为MCP服务器

添加到您的Claude代码配置中(~/.claude.json 或项目 .claude/settings.local.json):

{
  "mcpServers": {
    "intentional-masking": {
      "command": "node",
      "args": ["/path/to/intentional-masking/dist/server/index.js"],
      "env": {
        "INTENTIONAL_MASKING_ROOT": "/path/to/intentional-masking"
      }
    }
  }
}

MCP工具

render_frame

渲染化身的单个静止帧。

{
  "avatar_path": "/path/to/avatar.glb",
  "expression": "happy",
  "pose": "greeting",
  "camera_preset": "closeup",
  "lighting_preset": "soft",
  "background": "#1a1a2e"
}

选项:

  • expression: neutral | happy | thinking | surprised
  • pose: default | greeting | listening
  • camera_preset: closeup | medium | full
  • lighting_preset: soft | dramatic | natural
  • background:十六进制颜色(默认值: #1a1a2e)

退货: { "success": true, "image_path": "/path/to/output.png" }

渲染_峰值_视频

从音频中渲染一个与嘴唇同步说话的化身。

{
  "avatar_path": "/path/to/avatar.glb",
  "audio_path": "/path/to/speech.wav",
  "camera_preset": "closeup",
  "lighting_preset": "soft",
  "background": "#1a1a2e"
}

音频要求:

退货: { "success": true, "video_path": "/path/to/output.mp4", "duration_seconds": 5.2 }

建筑

src/
├── server/
│   ├── index.ts              # MCP server entry point
│   ├── services/
│   │   └── lip-sync.ts       # Rhubarb lip-sync integration
│   └── tools/
│       ├── render-frame.ts   # Still image rendering
│       └── render-speaking-video.ts  # Video rendering
├── config/
│   └── viseme-map.ts         # Rhubarb → RPM morph target mapping
└── remotion/
    ├── index.ts              # Remotion entry point
    ├── Root.tsx              # Composition registration
    ├── AvatarFrame.tsx       # Still frame composition
    ├── AvatarSpeaking.tsx    # Speaking video composition
    └── components/
        ├── Avatar.tsx        # GLB model loader
        ├── Scene.tsx         # Three.js scene setup
        └── LipSyncController.tsx  # Morph target application

唇部同步流水线

  1. 音频分析: 大黄唇形同步 分析16kHz音频
  2. 电话映射:大黄形状(A-H,X)→ 准备玩家我viseme变形目标
  3. 帧插值:虎钳形状之间的平滑混合
  4. 视频渲染:Remion逐帧捕获Three.js场景

大黄形状映射

形状音素RPM变形目标
AP、B、M(闭合)viseme_PP
BK,S,T(齿)viseme_kk,viseme_nn
CEH,AE(元音)viseme_I,viseme_E
DAA(全开)viseme_AA
EAO, ER (rounded)viseme_O, viseme_aa
FUW、OW、W(起皱)viseme_U
GF,V(唇齿)viseme_FF
HL声音viseme_TH,viseme_nn
X沉默viseme_sil

与信息转储集成

此服务器与配对 信息转储 完整的TTS→ 化身渲染:

info-dump generate_audio("Hello!", voice, output_path)
    ↓
intentional-masking render_speaking_video(avatar_path, audio_path)
    ↓
MP4 video with lip-synced avatar

头像要求

化身必须是Ready Player Me GLB文件,具有标准视位变形目标:

  • viseme_aa, viseme_E, viseme_I, viseme_O, viseme_U
  • viseme_PP, viseme_FF, viseme_TH, viseme_DD, viseme_kk, viseme_nn, viseme_sil

在以下位置创建头像 readyplayer.me

发展

# Run tests
npm test

# Watch mode
npm run dev

# Preview Remotion compositions
npm run remotion:preview

环境变量

  • INTENTIONAL_MASKING_ROOT -项目根目录(默认:cwd)
  • INTENTIONAL_MASKING_OUTPUT -渲染文件的输出目录(默认: {root}/output)

许可证

麻省理工学院

目录标签

目录标签

TypeScriptClaude语音音频角色渲染本地部署口型同步视频生成3D动画虚拟形象

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP