游戏音频生成器

一个基于Zig的游戏音频生成工具,可生成循环背景音乐、音效和提示音,输出为16位PCM WAV文件。

  • by Matuyuhi
  • Zig
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Matuyuhi/16bits-gaudio-mcp

使用说明

16位高斯mcp

一个Zig供电的MCP服务器,可以生成游戏音频——可循环的背景音乐、音效和叮当声——作为16位PCM WAV文件。

克劳德称之为工具 .wav 文件出来了。就这样

  • 零外部依赖(仅限Zig标准库)
  • 16位PCM WAV输出
  • FM合成、施罗德混响、ADSR包络、多轨混音
  • 通过种子进行确定性生成——每次都是相同的种子=相同的输出

样品

以下所有样本均由该工具生成。点击在GitHub上收听,或克隆仓库以获取WAV文件。

背景音乐

示例 样式 键/比例 BPM
冒险 adventure C专业 140
老板之战 boss D小调 160
镇 town F专业 100
网络 cyber 和声小调 140
恐怖 horror C phrygian 70

音效

跳 硬币 爆炸 激光
充能 冲撞 盾 扭曲
雷

叮当声

舞台清场 游戏结束 胜利
项目获取 发现秘密 危险

快速开始

brew tap matuyuhi/tools
brew install 16bits-audio-mcp

添加到您的Claude配置(~/.claude/settings.json 克劳德代码,或 claude_desktop_config.json 桌面):

{
  "mcpServers": {
    "16bits-audio": {
      "command": "16bits-audio-mcp"
    }
  }
}

然后问克劳德:

Generate a dungeon BGM at 90 BPM in A harmonic_minor, 8 bars, and play it

您可以生成什么

BGM——15种款式

完整的4轨乐曲(旋律、低音、和声、打击乐),具有每种风格的音色、节奏和混响。

风格 心情 时间信号。 和弦进展
adventure 明亮、英勇 4/4 I-IV-V-I
dungeon 黑暗,时态 4/4 i–VI–VII–i
boss 侵略性、戏剧性 4/4 i–bVII–bVI–V
town 温暖,华尔兹 3/4 I–V–vi–IV
battle 激烈驾驶 4/4 ii-V-I-VI
field 开放、田园 4/4 I-vi-IV-V
puzzle 古怪、周到 5/4 I-iii-vi-IV
menu 清洁、环境 4/4 I-IV-I-V
horror 不稳定、稀疏 4/4 i–bII–V–i
space 虚幻的,浮动的 4/4 伊苏斯4–bVII–IV–I
shop 乐观、友好 4/4 I-IV-iii-vi
castle 帝王,次要 4/4 i–iv–V–i
underwater 梦幻,流动 4/4 伊势2–IV–vi–Vsus4
forest 自然、温和 3/4 I-iii-IV-vi
cyber Edgy,电子 4/4 i–bVII7–bVI–bVII

每种风格都使用不同的波形、ADSR包络、打击模式(踢腿/响弦/高帽/边缘/振动器)、摇摆和混响设置。

音效——20种

类型 描述 持续时间
jump 向上扫频 200ms
hit 突发噪声,快速衰减 100ms
coin 双音蜂鸣器(C6→E6) 150ms
explosion 滤波噪声隆隆声 800ms
laser 向下锯齿扫掠 300ms
powerup 上升五声琶音 500ms
error 方波颤音 200ms
footstep 两个滤波噪声脉冲 200ms
menu_select 明亮的短光点 80ms
menu_cancel 下降两音光点 120ms
dash 快速噪声嗖嗖声 250ms
shield 金属谐振音 400ms
heal 温和上升微光 600ms
charge 上升频率渐强 800ms
warp 抖动调频扫频 500ms
door 低共振砰砰声 350ms
switch 短点击声 60ms
splash 过滤水噪声 500ms
wind 持续调制噪声 1000ms
thunder 裂纹+低隆隆声 1200ms

所有SE支持 pitch (0.5–2.0)以及 volume (0.0–1.0)用于调整。

铃儿——12种

类型 情绪 波形
stage_clear 胜利上升+号角和弦 正弦
game_over 带混响的降小调 三角形
level_up 快速上升五声音阶 正弦
item_get 两个明亮的音符 正弦
boss_clear 戏剧性的上升+力量和弦 正弦
victory 扇形黄铜上升+大和弦 锯齿
defeat 慢速下降小 三角形
secret_found 神秘的彩色闪光 正弦
save 柔和的确认铃声 正弦
shop_buy 欢快的快丁 方
danger 紧急脉冲报警(次要2级) 方形
unlock 明亮的上升+闪烁的和弦 正弦

节奏感选项: fast, normal, slow, triumphant

磅秤——10种类型

比例 间隔 字符
major 0、2、4、5、7、9、11 明亮、快乐
minor 0、2、3、5、7、8、10 悲伤、严重
pentatonic 0、2、4、7、9 简单、通用
blues 0,3,5,6,7,10 忧郁,深情
dorian 0、2、3、5、7、9、10 爵士、民谣
mixolydian 0、2、4、5、7、9、10 摇滚,占主导地位
phrygian 0,1,3,5,7,8,10 西班牙语,异国情调
lydian 0、2、4、6、7、9、11 梦幻,明亮
harmonic_minor 0、2、3、5、7、8、11 戏剧,东方
chromatic 0–11 所有半音

音效——9种类型(通过 wav_fx)

效果 参数 用例
reverb room_size (0–1), wet (0–1) 空间、深度
delay delay_ms, feedback (0–1), wet (0–1) 回声、节奏
lowpass cutoff_hz 围巾,温暖
highpass cutoff_hz 薄而清晰
bandpass low_hz, high_hz 电话、收音机
chorus depth (0–1), rate Hz, wet (0–1) 宽度,微光
distortion drive (0–1), wet (0–1) 勇气、侵略性
bitcrusher bit_depth (1–16), downsample (1–64) 低保真,复古
tremolo rate Hz, depth (0–1) 脉冲、颤音

效果可以被链接——它们是按顺序应用的。

示例提示

基础世代

Generate a boss battle BGM at 160 BPM in D minor, 8 bars
Create jump and coin sound effects, then play them
Make a victory jingle in G major with triumphant tempo

创意组合

Generate a cyber BGM at 140 BPM in A harmonic_minor, then apply bitcrusher (8-bit, downsample 4) for retro feel
Create a forest BGM in E lydian at 100 BPM, 16 bars, then add chorus and reverb
Generate explosion, laser, and hit SEs with different pitches, then mix them with offsets into one file

工作流程:使用种子进行迭代

Generate a dungeon BGM with seed 42 — if you like the melody, keep the same seed and try different scales

这 seed 参数使BGM生成具有确定性。相同的种子+相同的参数=相同的输出。改变 key, scale,或 bpm 同时保留种子以保持旋律形状。

安装

自制(推荐)

brew tap Matuyuhi/tools
brew install 16bits-audio-mcp

一个衬垫

curl -fsSL https://raw.githubusercontent.com/Matuyuhi/16bits-gaudio-mcp/main/install.sh | bash

从源代码构建

需要 之字形 0.15.x。

git clone https://github.com/Matuyuhi/16bits-gaudio-mcp.git
cd 16bits-gaudio-mcp
zig build
# binary: zig-out/bin/16bits-audio-mcp

或者:

make install   # builds and installs to ~/.local/bin

配置

克劳德代码

添加 ~/.claude/settings.json:

{
  "mcpServers": {
    "16bits-audio": {
      "command": "16bits-audio-mcp"
    }
  }
}

克劳德桌面

添加 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)或 %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "16bits-audio": {
      "command": "16bits-audio-mcp"
    }
  }
}

如果从源代码构建,请使用完整路径:

{
  "mcpServers": {
    "16bits-audio": {
      "command": "/path/to/zig-out/bin/16bits-audio-mcp"
    }
  }
}

工具参考(9个工具)

bgm_compose

生成4首曲目(旋律、低音、和声、打击乐)的可循环背景音乐。

参数 类型 必填 说明
output string yes 输出WAV文件路径
style string yes 15种风格之一(见上文)
bpm 数量 是 每分钟节拍数
duration_bars number yes 条数
sample_rate 数字 是 采样率(例如44100)
key string yes 音乐键(例如“C”、“F#”、“Bb”)
scale string yes 10个刻度之一(见上文)
种子 数量 是 用于确定性生成的随机种子

叮当声

生成简短的游戏事件广告歌曲。

参数 类型 必填 说明
output string yes 输出WAV文件路径
type string yes 12种广告歌曲类型之一(见上文)
sample_rate 数字 是 采样率
key string yes 音乐键
tempo_feel string 是 fast / normal / slow / triumphant

se_gen

生成游戏音效。

参数 类型 必填 说明
output string yes 输出WAV文件路径
type string yes 20种SE类型之一(见上文)
音高 数字 是 音高倍数(0.5-2.0)
音量 数字 是 音量(0.0–1.0)
sample_rate 数字 是 采样率

note_synth

将单音或和弦合成到WAV。

参数 类型 必填 说明
output string yes 输出WAV文件路径
notes string[] yes 注释名称(例如[“C4”、“E4”、“G4”])
波形 字符串 是 sine / square / sawtooth / triangle / pulse
duration_ms number yes 持续时间(毫秒)
adsr 对象 是 {attack_ms, decay_ms, sustain_level, release_ms}
sample_rate 数字 是 采样率
reverb boolean no 应用混响(默认值:false)

fm_patch

使用FM合成(YM2612型2-运算符)生成音调。

参数 类型 必填 说明
output string yes 输出WAV文件路径
carrier_note string yes carrier note(例如“A2”)
调制器比率 数量 是 调制器频率比
modulation_index 数字 是 FM调制深度
carrier_adsr 对象 是 运营商adsr包络
modulator_adsr 对象 是 调制器adsr包络
duration_ms number yes 持续时间(毫秒)
sample_rate 数字 是 采样率

wav_fx

将效果链应用于现有的WAV文件。

参数 类型 必填 说明
input string yes 输入WAV文件路径
output string yes 输出WAV文件路径
effects object[] yes 效果数组(见上面的效果类型)

wav_mix

将多个WAV文件混合成一个。

参数 类型 必填 说明
跟踪 对象[] 是 {path, gain, offset_ms} 阵列
output string yes 输出WAV文件路径
normalize boolean no 将峰值归一化为-1 dBFS

wav_info

获取WAV文件元数据和波形统计数据(采样率、信道、比特深度、持续时间、RMS/峰值dB)。

参数 类型 必填 说明
path string yes WAV文件路径

wavplay

异步播放WAV文件(macOS: afplay,Linux: aplay).

参数 类型 必填 说明
path string yes WAV文件路径

支持的密钥

C、 C#、D、D#、E、F、F#、G、G#、A、A#、B(以及平面:Db、Eb、Gb、Ab、Bb)

音符范围:C0–B9(MIDI 12–131)。A4=440Hz。

提示

  • 迭代种子:使用 seed 锁定你喜欢的旋律,然后调整 key, scale, bpm,或 style.
  • 效果链:按顺序应用多种效果,例如。, bitcrusher → reverb 适用于低保真环境。
  • 混合工作流程:生成单独的曲目(BGM、SE、广告歌曲),然后与 wav_mix 使用 offset_ms 为了精确计时。
  • 变桨SE:使用 pitch: 0.5 对于较重的声音, pitch: 2.0 更轻/更快的变体。
  • 低保真复古音效:申请 bitcrusher (bit_depth:4-8,下采样:2-8)转换为任何生成的音频。

贡献

欢迎在 Matuyuhi/16位高斯微控制器.

zig build          # build
zig fmt src/       # format

许可证

麻省理工学院