使用说明
mcp ffmpeg
专业音频处理MCP服务器,用于冥想制作和一般音频操作。
特性
- 13个音频处理工具 可通过模型上下文协议访问
- 冥想优化默认值 用于语音处理
- EBU R128响度归一化 配备自动双通道
- 与跨平台支持 (Windows、Mac、Linux)
- FFmpeg自动检测 从PATH和常见安装位置
安装
先决条件
- Node.js 18+
- FFmpeg 安装在您的系统上:
- 窗户:
winget install Gyan.FFmpeg - 雨衣:
brew install ffmpeg - Linux:
sudo apt install ffmpeg
- 窗户:
设置
# Clone the repository
git clone https://github.com/Schwarz-Mike/mcp-ffmpeg.git
cd mcp-ffmpeg
# Install dependencies
npm install
# Build the project
npm run build
Claude桌面配置
将以下内容添加到您的Claude Desktop MCP配置中(%APPDATA%\Claude\claude_desktop_config.json 在Windows上):
{
"mcpServers": {
"mcp-ffmpeg": {
"command": "node",
"args": ["C:\\Users\\ich\\Dropbox\\mike\\MCP Servers\\mcp-ffmepg\\dist\\index.js"],
"env": {}
}
}
}
或者,如果您在自定义位置有FFmpeg,请设置环境变量:
{
"mcpServers": {
"mcp-ffmpeg": {
"command": "node",
"args": ["C:\\Users\\ich\\Dropbox\\mike\\MCP Servers\\mcp-ffmepg\\dist\\index.js"],
"env": {
"MCP_FFMPEG_PATH": "C:\\path\\to\\ffmpeg.exe",
"MCP_FFPROBE_PATH": "C:\\path\\to\\ffprobe.exe",
"MCP_FFMPEG_OUTPUT_DIR": "C:\\path\\to\\output"
}
}
}
}
可用工具
第一阶段:核心工具
| 工具 | 说明 |
|---|---|
ffmpeg_get_audio_info |
获取详细的音频文件信息(持续时间、编解码器、比特率等) |
ffmpeg_convert_format |
在格式(mp3、wav、flac、aac、ogg)之间转换音频 |
ffmpeg_adjust_volume |
调整音量(系数或dB) |
ffmpeg_generate_silence |
为暂停生成静音音频 |
ffmpeg_concat_audio |
使用可选的交叉效果连接音频文件 |
第二阶段:专业音频处理
| 工具 | 说明 |
|---|---|
ffmpeg_compress_audio |
应用动态范围压缩以获得一致的响度 |
ffmpeg_normalize_audio |
EBU R128响度归一化(自动双通道) |
ffmpeg_adjust_tempo |
在不改变音高的情况下改变速度(0.9=冥想速度) |
ffmpeg_apply_fade |
应用淡入和/或淡出效果 |
第三阶段:高级功能
| 工具 | 说明 |
|---|---|
ffmpeg_mix_audio |
将多首曲目与音量、延迟和淡入淡出混合 |
ffmpeg_loop_audio |
使用可选的交叉效果将音频循环到目标持续时间 |
第四阶段:冥想工作流程
| 工具 | 说明 |
|---|---|
ffmpeg_process_meditation_voice |
一体化语音处理(压缩+归一化+节奏) |
ffmpeg_mix_meditation |
完整的冥想制作(语音+音乐+声音) |
使用示例
基本语音压缩
Use ffmpeg_compress_audio with inputPath "voice.mp3"
完成冥想制作
1. Process the voice recording:
Use ffmpeg_process_meditation_voice with inputPath "raw_voice.mp3", tempo 0.9
2. Mix with background music:
Use ffmpeg_mix_meditation with:
- voiceTrack: "voice_processed.mp3"
- musicTrack: "ambient_music.mp3"
- outputPath: "meditation_final.mp3"
- intro: { duration: 20, fadeIn: 3 }
- outro: { duration: 30, fadeOut: 3 }
配置
服务器从以下位置加载配置(按顺序):
./mcp-ffmpeg-config.json(项目目录)~/.mcp-ffmpeg/config.json(用户主页)%APPDATA%/mcp-ffmpeg/config.json(Windows应用程序数据)- 环境变量
- 内置默认值,具有FFmpeg自动检测功能
配置文件
{
"mode": "local",
"local": {
"ffmpegPath": "ffmpeg",
"ffprobePath": "ffprobe",
"outputDir": "~/mcp-ffmpeg-output",
"keepIntermediateFiles": false
},
"quality": {
"format": "mp3",
"codec": "libmp3lame",
"bitrate": "192k",
"sampleRate": 44100,
"channels": 2
},
"meditation": {
"compression": {
"threshold": "-20dB",
"ratio": 3,
"attack": 200,
"release": 800
},
"normalization": {
"targetLoudness": -16,
"truePeak": -1.5,
"loudnessRange": 11
},
"tempo": 0.9,
"musicVolume": 0.3,
"soundsVolume": 0.2,
"fadeInDuration": 3,
"fadeOutDuration": 3,
"finalBoost": 1.75
}
}
发展
# Run in development mode
npm run dev
# Build for production
npm run build
# Watch mode during development
npm run watch
许可证
GPL-3.0-参见 许可证 了解详情。
作者
施瓦茨迈克