弹不出的旋律卡在录音里?这个免费AI转录插件把音频一键变成可编辑MIDI 📅 发布时间:2026/8/18 16:48:38 👁 浏览次数: 弹不出的旋律卡在录音里这个免费AI转录插件把音频一键变成可编辑MIDI【免费下载链接】NeuralNoteAudio Plugin for Audio to MIDI transcription using deep learning.项目地址: https://gitcode.com/gh_mirrors/ne/NeuralNote如果一段钢琴即兴、一段人声哼唱、一段萨克斯独奏能让 DAW 里的 MIDI 钢琴卷帘立刻“长出”对应音符你还会为扒带、复刻旋律、编曲取材发愁吗NeuralNote 就是为此而生的开源音频插件VST3/AU/Standalone。它用深度学习把音频信号直接转成标准 MIDI支持任意有调性乐器含人声、支持复音转录、支持弯音检测转录结果还能在插件内直接量化、缩放并拖进工程。对编曲人、作曲者、声音设计者和音乐技术开发者来说这是一件免费且开箱即用的“扒谱利器”。一、先问一句传统扒谱到底难在哪音频转 MIDI 不是新概念但真正好用的工具长期稀缺。旧路子通常有几道坎单音才准很多工具只能处理单旋律线一遇到和弦就糊。人声与泛音干扰歌手的气声、乐器的谐波会把音高检测带偏。节奏与音高“脏”转出来的音符忽长忽短、音高游移进 DAW 后还得手动修一大堆。调参靠重跑参数不满意就得整段重新转录效率极低。NeuralNote 的思路是把 Spotify 开源模型 basic-pitch 的转录能力搬进插件再围绕实时调参、即时反馈、直接导出重做体验。它不追求实时转写受算法特性限制后面会解释但把非实时转录这一件事做到了顺滑。二、为什么它能听清和弦与音高四段式CNN与CQT的前世今生NeuralNote 的转录引擎集中在 Lib/Model/ 目录核心是一条特征 → 卷积网络 → 音符事件的流水线。特征层Constant-Q 变换 谐波堆叠音频先被重采样到 22050 Hz再经过 Constant-Q 变换CQT得到频谱随后做谐波堆叠Harmonic Stacking增强基频能量。这步由 ONNX Runtime 执行对应模型文件是 Lib/ModelData/features_model.onnx具体实现见 Lib/Model/Features.cpp。CQT 的频域分辨率随音高变化天然贴合音乐感知——这也是 basic-pitch 家族音高检测稳定的根因。推理层一个CNN拆成四个只为跑得动原版 basic-pitch 的 CNN 被拆分成了四个串联的小模型轮廓检测、音符检测、起始点检测、持续检测权重以 JSON 形式存放在 Lib/ModelData/ 下用 RTNeural 推理。项目还为此给 RTNeural 贡献了 2D 卷积支持见 Lib/Model/BasicPitchCNN.cpp。四条后验概率曲线posteriorgrams输出后交给 Lib/Model/Notes.cpp 做音符事件提取。核心调用接口非常干净Lib/Model/BasicPitch.hclass BasicPitch { public: void setParameters(float noteSensibility, float splitSensibility, float minNoteDurationMs); void transcribeToMIDI(float* inAudio, int inNumSamples); void updateMIDI(); // 只重跑后处理不重跑CNN const std::vectorNotes::Event getNoteEvents() const; };注意updateMIDI()这个设计——改参数后不重跑特征和CNN只重算音符事件这正是边听边调、秒级反馈能成立的原因。参数更新与调度逻辑在 NeuralNote/Source/TranscriptionManager.cpp 中通过线程池和原子标志位mShouldRunNewTranscription、mShouldUpdateTranscription 等管理保证音频线程不被转录任务卡住。为什么不做实时转录README 里项目作者坦承了三点硬约束CQT 需要超过 1 秒的音频块才能算出最低频段的幅度延迟天然过高basic-pitch CNN 本身还有约 120ms 额外延迟音符事件算法是从未来向过去回溯处理的非因果。所以 NeuralNote 的定位是快速批量转录 边听边调而不是实时识别。这是架构使然不是偷懒——理解这一点你对它的预期才会准确。三、四步上手从拖进音频到拖出MIDI整个工作流简单得不像一个深度学习工具。以 DAW 中挂载插件为例采集音频点 RECORD 实时录音或直接把 .wav / .aiff / .flac / .mp3 / .ogg 文件拖进插件窗口。等待转录波形显示后AI 自动分析MIDI 音符即刻出现在钢琴卷帘区。边听边调点播放源音频与合成转录的音量可独立调节同时转动旋钮观察音符变化。导出成品从卷帘上方的提示区域把 MIDI 直接拖到 DAW 的 MIDI 轨道搞定。安装也很省心Windows 与 macOS 官方安装包支持 Standalone、VST3、AUMac多种格式安装时可自行勾选。macOS 版本带签名Windows 暂未签名首次运行可能需要额外放行步骤。关键参数速查表左侧面板三个旋钮直接决定转录质量参数作用域调高效果调低效果NOTE SENSIBILITY音符敏感度音符置信度阈值0.05~0.95捕获更多音符噪声也可能混入只留高置信度音符更干净SPLIT SENSIBILITY分割敏感度音符分割阈值同音高音符更易被拆开相邻同音高音符更易合并MIN NOTE DURATION最小音符时长时长过滤ms滤掉更多短促杂音保留更多短音含装饰音、误报对应实现可查阅 Lib/MidiPostProcessing/NoteOptions.cpp 与 Notes.h 中的 ConvertParams 结构体。四、怎么用好量化、弯音与调参的实战心法转录只是第一步让它进得了工程、听得像人弹的才是高阶玩法。音阶量化一键对齐调性在 SCALE QUANTIZE 面板里你可以锁定音高范围默认 A0–C8、选择根音与调式大调、小调、多利亚、混合利底亚、布鲁斯小调、大小调五声、旋律/和声小调等十余种并设置 Snap 模式移除离调音或吸附到最近调内音。实现逻辑在 Lib/MidiPostProcessing/NoteOptions.h 中——每种调式就是一个半音音程数组比如大调是 {0,2,4,5,7,9,11}。用法转录一段带轻微音高偏差的吉他独奏后选好调式直接 Snap音高立刻归位比手动逐音符修正快一个量级。时间量化对节奏网格TIME QUANTIZE 面板支持时间划分1/4、1/8、1/16 等、速度BPM、拍号以及 FORCE量化力度滑块。它读取 DAW 的播放头位置信息自动对齐网格见 NeuralNote/Source/TimeQuantizeOptions.cppFORCE 决定音符被吸向网格的程度——100% 是彻底对齐低一些则保留人类演奏的微差。用法快速乐段建议 1/16 划分 中等力度慢速抒情段落用 1/8 划分保留呼吸感。弯音与三个实操经验PITCH BEND 下拉支持关闭、单音弯音、多音弯音三种模式能把滑音、揉弦转成 MIDI 弯音事件保住演奏表情。结合社区反馈与模型特性几条经验值得收藏密集和弦段落把 NOTE SENSIBILITY 适当调低避免泛音被当成独立音符快速乐句提高 MIN NOTE DURATION过滤掉急促的误报短音音色极亮/失真严重的音源优先用分割敏感度做合并而不是一味降敏感度防止旋律线被拆碎。五、还能怎么玩源码复用、构建与二次开发对于开发者NeuralNote 的价值不止于插件本身。转录引擎可以独立拿走README 明确说明转录相关代码全部集中在 Lib/Model/模型权重在 Lib/ModelData/你可以只把这两块搬进自己的项目作者计划未来进一步抽成独立库。RTNeural ONNXRuntime 的组合意味着不依赖任何重型深度学习框架嵌入式或移动端也具备移植潜力。从源码构建依赖 git、cmake 与对应编译器克隆仓库git clone --recurse-submodules --shallow-submodules https://gitcode.com/gh_mirrors/ne/NeuralNotemacOS 直接执行./build.sh脚本会先下载 onnxruntime 静态库Windows 因已知编译器兼容问题需按 README 说明先用 Python 3.10 手动构建 onnxruntime.lib再执行.\build.bat。构建一次后即可在 CLion / VS / VSCode 中按普通 CMake 工程使用。打包细节见 PACKAGING.mdMac 走 Packages 签名脚本Windows 走 Inno Setup。测试套件与路线图Tests/ 目录覆盖了特征提取、CNN 推理、音符事件生成与性能基准等测试配套 test_data/ 下的 CSV/JSON 数据可用于回归验证。项目路线图指向 Linux 支持、内部合成器弯音、播放/暂停快捷键、缩放体验优化等方向Apache-2.0 协议下社区可以放心参与。六、客观的边界什么场景不适合它说清楚限制比吹捧更有价值非实时无法作为实时转写工具用在现场或监听到写场景混音成品对已混音、压限严重的成品音频转录精度会下降更推荐对干声或分轨操作复杂打击乐鼓组等无明确音高的内容不在目标范围内。但就干净的分轨 → 高质量 MIDI → 直接拖进工程这一主场景而言NeuralNote 的开源免费、跨平台与可二次开发属性让它几乎没有同级别的对手。扒谱、复刻、Remix 采样、旋律改编——从今天起别再对着波形逐帧点音符了。【免费下载链接】NeuralNoteAudio Plugin for Audio to MIDI transcription using deep learning.项目地址: https://gitcode.com/gh_mirrors/ne/NeuralNote创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考