用途:面向 Expert Sleepers disting NT 的 C++ 插件开发与维护,覆盖从设计、实现到 ARM 构建、测试与发布的全流程。当前已验证基线为 API v13(64 条逻辑总线:12 输入、8 输出、44 辅助),需固定 distingNT_API 子模块,并在每次发布前依据官方来源核对目标固件/API。
主要能力与用法:先检查真实仓库状态、API 子模块提交、构建目标、测试与发布流程,再定义可观测行为契约(声部归属、分配/抢占、Gate 阈值、音高转换、重触发、延音/恐慌、重配置)。DSP 采用固定内存与有界音频线程工作,step() 内避免分配、阻塞 IO、日志和无界扫描,使用 numFramesBy4 * 4,并对外部索引、电压、音符、频率做钳位。总线参数 0 在允许时视为 None,且必须先验证再减一;遵守 Add/Replace 输出模式,明确电压上限作用于插件贡献还是共享总线。已发布插件需保持参数索引不变,新增参数追加到底层参数数组。
复音 CV/Gate 模型:一个 gate 组拥有一个 gate 总线及其后 Count 个连续 pitch 总线(pitch 声部 i 读 gateBus + i + 1,宿主机编号);需校验最高派生总线与 kNT_lastBus、声部上限及其他组预留;按组序分配固定不重叠声部分区,余量留给 MIDI;使用施密特迟滞、显式采样保持、计数增加后的新边沿激活,以及移除/重分配时的短淡出。
限制与验证:池大小与加载器位置属特定固件事实而非 API 保证。发布前需通过原生单元/行为测试(含最坏声部数与状态转换)、严格编译警告与静态分析、ARM 硬件构建(-fPIC,无异常/RTTI)、ELF32 小端 ARM 可重定位对象检查(导出 pluginEntry)、文档事实核对,以及 nt_emu 和/或实机测试,且各证据不可互相替代。发布需用户明确批准,使用语义化版本;标签推送后需检查托管工作流、下载发布归档并校验摘要与内容,重新检查随附的 .o。