UNPKG

audio-source-separation-mcp

Version:

MCP服务器,用于火山引擎音源分离,支持人声/伴奏分离

126 lines (97 loc) 3.05 kB
# 音源分离 MCP 服务器 基于火山引擎的音源分离MCP服务器,提供人声/伴奏分离功能。 ## 功能特性 - 🎵 **人声提取**: 专门的人声分离工具,去除背景音乐 - 🎸 **伴奏提取**: 专门的伴奏分离工具,去除人声 - 🎛️ **模型选择**: 标准模型和降噪增强模型 - 📁 **多格式支持**: wav/mp3/aac等常见音频格式 - 🔧 **灵活配置**: 可自定义输出格式和路径 ## 工具说明 ### `extract_vocals` - 提取人声 从音频中提取人声,去除背景音乐 **参数:** - `audio_path` (必需): 音频文件路径 - `use_enhanced_model` (可选): 是否使用降噪增强模型,默认 `false` - `output_format` (可选): 输出音频格式 (wav/mp3/aac),默认 `wav` - `output_path` (可选): 输出文件路径 **示例:** ```javascript { "audio_path": "/path/to/music.mp3", "use_enhanced_model": true, "output_format": "wav" } ``` ### `extract_accompaniment` - 提取伴奏 从音频中提取伴奏,去除人声 **参数:** - `audio_path` (必需): 音频文件路径 - `use_enhanced_model` (可选): 是否使用降噪增强模型,默认 `false` - `output_format` (可选): 输出音频格式 (wav/mp3/aac),默认 `wav` - `output_path` (可选): 输出文件路径 **示例:** ```javascript { "audio_path": "/path/to/music.mp3", "use_enhanced_model": false, "output_format": "wav" } ``` ## 模型说明 - **标准模型** (`use_enhanced_model: false`) - `2track_vocal`: 标准人声提取 - `2track_acc`: 标准伴奏提取 - **降噪增强模型** (`use_enhanced_model: true`) - `bs_4track_vocal`: 降噪增强人声提取,效果更好但处理时间更长 - `bs_4track_acc`: 降噪增强伴奏提取,效果更好但处理时间更长 ## 使用限制 - 音频时长: ≤10分钟 (建议 > 5秒) - 文件大小: ≤100MB - 仅支持音乐类音频 - 推荐: 采样率≥44.1kHz、双声道 - 支持格式: wav、mp3、aac、flac、m4a ## 安装 ```bash npm install npm run build ``` ## 配置 需要配置火山引擎API凭证环境变量: ```bash export VOLCENGINE_ACCESS_KEY_ID="your_access_key" export VOLCENGINE_SECRET_KEY="your_secret_key" export VOLCENGINE_APP_KEY="your_app_key" ``` ## 启动 ```bash npm start ``` 或开发模式: ```bash npm run dev ``` ## Claude Desktop 配置`claude_desktop_config.json` 中添加: ```json { "mcpServers": { "audio-source-separation": { "command": "node", "args": ["/path/to/audio-source-separation-mcp/dist/index.js"], "env": { "VOLCENGINE_ACCESS_KEY_ID": "your_access_key", "VOLCENGINE_SECRET_KEY": "your_secret_key", "VOLCENGINE_APP_KEY": "your_app_key" } } } } ``` ## 技术架构 - 获取key 的方法是地址是:https://www.volcengine.com/docs/6489/71995 详细查看该文档。 - **Node.js + TypeScript**: 核心实现 - **火山引擎 OpenAPI SDK**: API调用和鉴权 - **MCP SDK**: 符合MCP协议 - **Base64编码**: 音频数据传输 ## License MIT License