使用 piano_transcription_inference将钢琴录音转换为 MIDI

一、简介

  • piano_transcription_inference 是由 Qiuqiang Kong 等人开发的高精度钢琴转录工具,支持音符与踏板信息转 MIDI。
  • 简单易用,通过命令行或 Python API,都能快速完成从音频(MP3/WAV)到 MIDI 的转写。
  • 支持 GPU 加速,转录速度快,适合音乐创作、扒谱、教学等应用场景。

在这里插入图片描述

二、环境与安装

✅ 必备:

  • Python 3.7+
  • PyTorch ≥1.4(推荐 GPU 版本)
  • FFmpeg(处理 MP3 等格式)
pip install piano_transcription_inference
# 安装 PyTorch 和 FFmpeg,可根据实际环境选择

GPU 推荐配置:4GB +,帮助大幅提高速度;无 GPU 可用 CPU 模式,但推理较慢。


三、快速上手

方法一:Python API 示例

from piano_transcription_inference import PianoTranscription, sample_rate, load_audio

# 加载音频
audio, _ = load_audio('your_piano.wav', sr=sample_rate, mono=True)

# 初始化转录器,选择 cuda 或 cpu
transcriber = PianoTranscription(device='cuda')

# 转录并保存 MIDI
transcriber.transcribe(audio, 'output.mid')
  • load_audio:统一采样率、单声道处理
  • transcribe:自动分段、推理、MIDI 写出,包含踏板信号

方法二:命令行调用

python3 example.py \
  --audio_path="your_piano.wav" \
  --output_midi_path="output.mid" \
  --cuda
  • 支持批量处理目录下所有音频
  • 无需改动代码即可快速实验

四、核心原理与可配置项

  • 使用高分辨率 CRNN 模型,结合 onset/offset 精确回归算法

  • 模型兼容踏板检测,生成完整演奏动态

  • 支持调整检测阈值:

    • onset_threshold(音符启动灵敏度)
    • offset_threshold(音符结束判定)
    • frame_threshold(帧级激活判断)
    • pedal_offset_threshold(踏板释放检测)

适当调参数,可提升转录精度或稳定性。


五、进阶技巧

  • GPU 多卡并行:可自定义修改脚本开启多 GPU 加速,大幅提升推理效率
  • 批量处理音频:可编写脚本遍历文件夹,输出目录结构对应的 MIDI 文件
  • 嵌入 DAW 流程:输出 MIDI 后,可导入如 Cubase/FL Studio 等 DAW 进行后期编辑

六、常见问题

  1. NoBackendError → FFmpeg 未安装
  2. 内存不足(Killed) → 降低 batch、关闭 GUI、多段处理
  3. 速度慢 → 优先使用 GPU、或降低 segment_samples(默认 10s 一段)

七、应用场景

  • 📝 扒谱:高速提取古典/流行钢琴曲谱
  • 🎓 音乐教学:学生录音即时转 MIDI,便于分析演奏
  • 🎼 MIDI 数据生成:可用于训练 DAW、音乐生成模型
  • 🛠️ 研究:配合 MAESTRO 数据集训练,支持自定义模型或微调

八、总结

  • 高精度:支持踏板,音符检测 F1 高
  • 易集成:一条命令或几行代码即可完成 MIDI 导出
  • 💻 多平台:支持 Linux/macOS/Windows(推荐)
  • 🔧 可扩展:可自定义训练新模型,适配特殊演奏风格


Windows GUI 工具推荐

若你希望使用无需编程的 GUI 工具,可以尝试社区封装的 Pianotrans

  • 多平台支持:Windows、Linux、macOS
  • 自带踏板信息转录功能
  • Windows 下可直接解压运行 .exe,拖入音频即可输出 MIDI ([dongaigc.com][7])。

使用步骤:

  1. 安装必要运行库(如 Visual C++ Redistributable)
  2. 解压下载的 PianoTrans
  3. 双击运行,选择音频,等待转完即可生成 MIDI 文件。

实用小工具

App Store 截图生成器应用图标生成器在线图片压缩Chrome插件-强制开启复制-护眼模式-网页乱码设置编码
乖猫记账,AI智能分类的最佳聊天记账App。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@井九

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值