AMT-AugPy 1.0
收藏AMT-AugPy 1.0 数据集概述
数据集简介
AMT-AugPy 1.0 是一个用于自动音乐转录(AMT)数据集增强的 Python 工具包,通过多种音频转换来增强数据集,同时保持音频和 MIDI 文件的同步。
数据集格式
数据集遵循与 MAESTRO v3.0.0 相同的格式,适用于自动音乐转录任务。工具包需要一个包含配对音频和 MIDI 文件的文件夹,文件名必须匹配。
Folder/ ├── song1.wav # 音频文件 ├── song1.mid # 地标性注释 MIDI 文件
特性
- 时间伸缩:调整音频文件的速度,同时保持音调
- 音高转换:改变音频文件的音高,同时保持时间
- 混响与滤波:应用房间声学效果和频率滤波
- 增益与合唱:通过增益和合唱效果增加深度和丰富度
- 智能暂停检测:基于音符时间识别和操作音乐暂停
- 音频标准化:将各种音频格式转换为 44.1kHz WAV
安装
可以通过 pip 或克隆仓库来安装 amt-augpy。
使用 pip
bash pip install amt-augpy1.0
从源代码
bash git clone https://github.com/LarsMonstad/amt-augpy1.0.git cd amt-augpy1.0 pip install -r requirements.txt
依赖
- librosa
- soundfile
- numpy
- pedalboard
- pretty_midi
- tqdm
使用
基本使用
bash python -m amt_augpy.main /path/to/dataset/directory
参数范围(在 main.py 中定义)
- 时间伸缩:0.6 到 1.6 倍
- 音高转换:-5 到 +5 半音
- 混响房间大小:10 到 100
- 增益:2 到 11 dB
- 合唱深度:0.1 到 0.6
- 滤波截止频率对:各种预定义的频率范围
每个输入文件将使用这些范围内的随机参数生成多个增强版本。
文件格式支持
音频
- 输入:WAV, FLAC, MP3, M4A, AIFF
- 输出:WAV (44.1kHz)
注释
- MIDI (.mid)
输出结构
对于每个输入文件对(音频 + MIDI),工具包生成多个增强版本,文件命名如下:
original_name_effect_parameter_randomsuffix.extension
数据集创建与验证
数据集遵循 MAESTRO v3.0.0 格式,但包括原始录音的增强版本。
创建数据集 CSV
脚本将创建一个 CSV 文件,包含所有原始和增强文件,并组织为训练/测试/验证集。
bash python create_maestro_csv.py /path/to/directory
验证数据集分割
bash python validate_split.py /path/to/dataset.csv
CSV 格式
生成的 CSV 遵循 MAESTRO 格式,包含以下列:
- canonical_composer
- canonical_title
- split
- year
- midi_filename
- audio_filename
- duration
许可
MIT 许可,详情见 LICENSE 文件。
引用
如果在使用研究中使用了此工具包,请引用以下信息:
@software{amt_augpy, author = {Lars Monstad}, title = {amt-augpy: Audio augmentation toolkit for AMT datasets}, version = {1.0}, year = {2025} }




