键盘作曲家
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_18c089d3/keyboard-to-music。
技能介绍
要解决什么问题
脑子里蹦出一段旋律,手边只有键盘、没有乐器或记谱软件时,很难把「按键节奏 + 音高直觉」落成可回放、可分享的简谱或音频。纯手动写简谱又容易丢时值;只记字母序列也分不清半拍、休止和八度。这个技能把键盘输入当作「虚拟琴键 + 节拍器」,输出带时值的简谱文本,并能在本地生成 MIDI、播放和导出 MP3/WAV。
核心能力与工作方式
- 键盘记录:用
pynput监听按键;节奏感知模式按按键间隔(默认 BPM 120)推断时值——按得快对应短音符,间隔长则插入休止。输出形如1:2(Do 两拍)、0:1.5(休止 1.5 拍)。另有定时录制、实时监听等路径,ESC 结束、Backspace 删除。 - 文本转换:按固定映射把字母/数字键转为简谱(如
l→1、空格→0);小写为一拍,大写为半拍(如L→1_);+/-表示高低八度。 - 音乐播放:解析简谱文件,用
mido生成 MIDI(中央 C=60 对应中音 Do),pygame.mixer播放;BPM 与乐器参数(piano/guitar/violin/trumpet)顺序可任意。播放后可自动导出 MP3。
适用边界与注意点
- 映射表是固定键位→音高,不是真实钢琴布局;创作依赖记忆映射或对照表。
- macOS 需在「辅助功能」里授权终端/Python,否则键盘监听会失败。
- 无声音时检查是否已安装
mido、pygame等播放依赖;调速可在播放时指定 BPM(如慢板 ~60、中板 ~120)。 - 预设曲目表当前为空,需通过
generate_presets.py自行扩展;适合旋律草稿、教学记录和生成 MIDI 再进 DAW,而非专业制谱排版。
使用场景
- 音乐老师在只有 PC 的机房里,让学生按键位映射弹练习曲,并把带休止与时值的简谱文件交给老师批改。
- 出差或外出时只有笔记本,作曲者用节奏感知录制把突发旋律记成 `音符:时值` 格式的简谱草稿。
- 手上有用字母键写好的练习稿,需要先转成简谱、本地播放听一遍,确认音高和节奏再交给同学或学生。
- 节奏训练课上要求学员用大小写区分半拍与一拍,录完后回放并导出 WAV,便于课后对照自己的间隔是否稳定。
适合人员
- 中小学或培训机构音乐教师,要在无 MIDI 键盘的电脑教室把学员键盘练习记成可存档的简谱。
- 在家用 DAW 编曲的爱好者,习惯先用 QWERTY 敲旋律,再需要 MIDI/MP3 交给现有工程继续编。
- 自学简谱、对照固定键位表练习的成人学员,希望把打字练习直接变成可播放的谱面文本。
- 开设视唱练耳或节奏课的工作室老师,需要批量收集学员每日键盘录制结果做课堂讲评。