简体中文

如何在 Mac 上保存和发送 SysEx 文件

在 Mac App Store 下载 InputConfig这款应用完全免费。无需创建账户。没有订阅,没有麻烦的下载,也没有任何锁定的功能。针对 Apple 芯片优化。

Mac 上免费的 SysEx 资料库是 Snoize 的 SysEx Librarian:它录下合成器发来的 System Exclusive 转储,把每一份存成 .syx 文件,再把这些文件播放回合成器。它的页面(我在 2026 年 10 月 27 日读过)列出的是 2023 年 10 月 21 日的 1.5.2 版,适用于 macOS 10.14.6 或更高版本,免费使用,并以 BSD 许可证开源。想不安装任何东西就看一眼,用 Chrome、Edge 或 Firefox 里的浏览器 SysEx 工具就能完成读取和发送。

我做了 InputConfig,一款面向 MIDI 控制器的免费 Mac App,我想在一开始就说清楚:它不发送也不接收 SysEx。它处理的是音符、旋钮、Pitch Bend 和音色切换,本页最后一部分会说明它在资料库旁边适合放在哪里。

步骤

  1. 连接合成器,并在“音频MIDI设置”的 MIDI Studio 窗口里确认它在线。
  2. 从 snoize.com 安装 SysEx Librarian 并打开它。
  3. 按 Record Many,在合成器上开始转储,结束后按 Done。
  4. 对照合成器的手册检查消息数量和大小,然后再保留一份文件的副本。
  5. 要恢复,就在 Destination 菜单里选合成器的端口,选中文件,按 Play。

了解 SysEx 资料库是做什么的

音色、鼓组和全局设置都存在合成器里面。大多数厂商允许你把它们作为 System Exclusive 消息,也就是批量转储,发送出来,而资料库就是在电脑上接住这份转储、稍后再发回去的 App。Snoize 把它的 App 描述为让 Mac 用 System Exclusive 消息和 MIDI 设备对话的办法,并说最常见的用途是备份音色数据,旁边还有固件更新之类的工作。

  • 录制。合成器发出它的转储,资料库把它存成文件。
  • 保存资料库。SysEx Librarian 列出每个文件的厂商、包含多少条消息和大小,有点像音乐资料库。
  • 发送。选一个文件和一个目标端口,资料库就把这些消息播放回合成器。

.syx 文件是把原始消息一条接一条存下来,每条都以 F0 开头,以 F7 结尾。SysEx Librarian 也能从标准 MIDI 文件,也就是以 .mid 结尾的那种,里读取 SysEx。资料库搬运数据,不编辑数据,所以修改音色仍然要在合成器上进行。SysEx 是什么逐个字节地解释了消息的格式。

先在 MIDI Studio 里检查合成器

Snoize 自己的文档说得很直接:这个 App 完全依赖你的 MIDI 接口和它的驱动。所以在责怪资料库之前,先确认 Mac 本身能够联系到合成器。

  • 你:打开“音频MIDI设置”,选择 Window, Show MIDI Studio,找到合成器,或者它所接的 MIDI 接口。
  • macOS:显示它认识的每个 MIDI 设备。变暗的图标表示认识但联系不上。
  • 检查:点按 Test MIDI Setup,再在合成器上弹一个键。它图标上的箭头会亮起。如果一直是暗的,先修好线或接口,再尝试转储。

如果 MIDI Studio 听不到合成器弹的音符,任何资料库都听不到它的转储。Mac 上的音频MIDI设置完整地讲了那个窗口。

保存转储并发回去

这些步骤用的是 SysEx Librarian 内置文档里的按钮名称。每台合成器启动转储的方式各不相同,所以这一部分请打开手册。

第 1 步:录制转储

  • 你:按 Record Many,然后从合成器自己的菜单开始批量转储。
  • SysEx Librarian:同时监听每个 MIDI 输入,所以你不用选端口,并且一直录到你按 Done。Record One 在收到一条消息后会自动停止。
  • 检查:列表里出现一个新文件,默认保存在“文稿”里一个名为 SysEx Librarian 的文件夹中。

第 2 步:检查收到了什么

  • 你:读新文件的 # Msgs 和 Size 两列,再按 Contents 查看这些消息。
  • SysEx Librarian:打开一个窗口,列出每条消息,以及它的十六进制和 ASCII 数据。
  • 检查:如果手册给出了完整转储的大小或消息数量,两者应该一致。文件偏短,说明转储有一部分没有到达。

第 3 步:发回去

  • 你:在工具栏的 Destination 菜单里选合成器所在的端口,选中文件,按 Play。用 Add 按钮添加你下载的文件,或者把它拖进列表。
  • SysEx Librarian:发送这些消息,并显示已经发出了多少条。
  • 检查:合成器显示它收到了数据,通常屏幕上会有一条提示,而恢复的音色像以前一样演奏。

选以你的接口命名的端口,比如 Port 1。名为 Act as a source for other programs 的目标,是发给 Mac 上的其他 App,不是发给合成器。

不能安装 App 时,用浏览器工具

在借来的或受管理的 Mac 上,本站的 MIDI SysEx 监视器可以直接在浏览器里把收到的 System Exclusive 消息读成十六进制,还能发送 Identity Request 或一个 .syx 文件。它需要 Chrome、Edge 或 Firefox,因为 Safari 没有 Web MIDI。

  • 额外的权限。浏览器会在页面使用 SysEx 之前单独询问,因为 SysEx 能改写设备。只对你信任的页面允许。
  • Identity Request。它是通用消息 F0 7E 7F 06 01 F7,请每台设备报告它的厂商、型号和版本。得到回复,就证明来回都通了,然后再发送更大的东西。
  • 限制。标签页适合检查连接和发小文件。如果是你要反复回来用的资料库,专用 App 更方便。

先发一个 Identity Request,因为得到回答,就证明线的两个方向都能工作。

如果转储失败,或者合成器无视它

MIDI 几乎没有错误检查,Snoize 也指出了这一点:这个 App 分辨不出一条正确的消息和一条在路上损坏的消息。按这个阶梯往上走,从最小的一步开始:

  1. 把合成器设为接收。许多合成器会无视收到的 SysEx,直到打开接收设置,或者关闭内存保护。手册里写着你这个型号的设置名称。
  2. 对上设备编号。有些厂商在消息里放了设备 ID,而合成器会无视发给另一个 ID 的转储。
  3. 放慢发送。在 SysEx Librarian 的偏好设置里,Pause between played messages 默认是 150 毫秒。对需要时间存储每条消息的旧合成器,调高它。
  4. 降低传输速度。同一个偏好设置里有 Transmit Speed,Snoize 建议在你于“音频MIDI设置”里添加的设备上设置它,还有 Transmit buffer size,Snoize 建议在数据接收不正常时把它降到 256 或更低。
  5. 更新或更换接口。Snoize 说,MIDI 接口尤其可能在 SysEx 上有问题。请装厂商最新的驱动,或者换一个接口,如果合成器有的话,也可以试试直接的 USB 线。

录得到却始终不结束的转储,可能被 SysEx receive timeout 截断了,默认是一秒。放慢发送,比这份清单上的任何办法都更能解决恢复失败的问题。

知道什么时候不要发送 SysEx

  • 给另一个型号的文件。只发送为你这台合成器专门制作的文件。错误的数据可能覆盖音色。
  • 没有按厂商的步骤做的固件。固件是最危险的 SysEx,因为文件不对,或传输中途停下,都可能打断更新。请严格按厂商的说明去做,如果他们指定了工具,就用他们的工具。
  • 没有备份的转储。在载入别人的音色库之前,先录下你自己的。我会录两遍,两份都保留,因为损坏的转储看起来和好的一模一样。
  • 旋钮就能做的事。改变滤波器、音量或音色根本不需要 SysEx,因为 Control Change 和 Program Change 已经能做到。

在任何新东西进入合成器之前,先备份里面已有的内容。

InputConfig 做的是什么

InputConfig 把音符、Control Change、Pitch Bend、触后、Program Change 以及 Start、Continue 和 Stop 绑定为输入,并通过一个名为 InputConfig 的虚拟 MIDI 端口,发送音符、Control Change、Pitch Bend、Program Change 和走带消息。这两份清单里都没有 SysEx,所以它不能录制转储、保存 .syx 文件或发送它。

它帮得上忙的,是资料库周围的日常控制:音色恢复后你演奏的旋钮、打击垫和踏板。打击垫或手柄按钮可以发送固定的 Control Change 或 Program Change,旋钮可以变成快捷键,合成器发来的 Program Change 还能切换 Mac 上的整套布局。

InputConfig 的编辑器里,三个按钮行发送固定的 Control Change 值,分别用于音量、声像和混响。
Figure 1. 日常控制不需要 SysEx。三个手柄按钮用普通的 Control Change,把音量设为 100,声像设为中间,混响设为 40。
InputConfig 的 Live Visualizer 的 MIDI 视图,载入 MIDI: Knob Deck 预设,显示一个键盘、旋钮和最近的消息。
Figure 2. Live Visualizer 用 CC 编号给每个旋钮命名,这能告诉你一个控件不用 SysEx 是否够得着。

转储用资料库,每天演奏的旋钮用映射工具。MIDI 消息速查表列出了每种标准消息,Mac 上的 MIDI 监视器比较了查看流量的几种办法。

简短版

  • 免费的 App。Snoize 的 SysEx Librarian 录制转储,保存 .syx 文件的资料库,并把它们播放回去。
  • 第一项检查。MIDI Studio 的 Test MIDI Setup 能证明 Mac 听得到合成器。
  • 常见的修复。打开合成器的接收设置,然后放慢发送。
  • InputConfig。它不做 SysEx。它处理围绕在旁边的音符、旋钮和音色切换。

在把任何东西载入合成器之前,先录下你自己的备份。

常见问题

Mac 上有免费的 SysEx 资料库吗?

有。Snoize 的 SysEx Librarian 免费且开源。根据它的页面,2023 年 10 月的 1.5.2 版可在 macOS 10.14.6 或更高版本上运行。

.syx 文件是什么?

一个保存了一条或多条原始 System Exclusive 消息的文件,每条从 F0 到 F7,比如合成器的音色库或固件更新。

我的 SysEx 转储为什么失败?

通常是合成器没有设为接收、设备 ID 对不上,或者消息到得太快。打开接收设置,然后调高消息之间的停顿,或降低传输速度。

InputConfig 能发送或接收 SysEx 吗?

不能。InputConfig 处理音符、Control Change、Pitch Bend、触后、Program Change 和走带消息。转储请用 SysEx Librarian 或浏览器里的 SysEx 工具。

要改合成器上的旋钮,需要 SysEx 吗?

通常不需要。大多数旋钮和音色切换用的是 Control Change 和 Program Change,任何 MIDI App 或映射工具都能发送。SysEx 用于转储、固件,以及没有 CC 编号的设置。

更多中文页面

详细指南(英文)

作者说明。Ryleigh Newman 开发了 InputConfig,因为双手活动不便,每天都用手柄操作自己的 Mac。本页译自英文。Mac 的语言设为简体中文时,App 的主要按钮和菜单显示为中文,本页使用这些名称,并在括号中附上英文名称。App 的其他部分和网站的其他页面都是英文。

本页的其他语言版本: English, Deutsch, Español, Français, Italiano, 日本語, 한국어, Polski, Português, Русский, ไทย, 繁體中文

在 Mac App Store 下载 InputConfig免费。macOS 14 或更高版本。无需账户,数据不会离开你的 Mac。 源代码在 GitHub 上.