Polymath:音乐创作的新革命
Polymath是一个创新的开源项目,它运用机器学习技术将任何音乐库(无论是硬盘上的还是YouTube上的)转化为一个音乐制作样本库。该项目通过自动分离歌曲的各个音轨(如节奏、低音等)、量化到相同的节奏和节拍网格、分析音乐结构和键值等信息,以及将音频转换为MIDI,构建了一个可搜索的样本库,极大地优化了音乐制作人、DJ和机器学习音频开发者的日常工作流程。
应用场景
- 音乐创作:你可以轻松地从不同歌曲中提取元素,创造出独特的全新作品。只需挑选Funkadelic的节奏、Tito Puente的贝斯线和Fela Kuti的号角声,就能快速整合进你的数字音频工作站。
- DJ混音:利用Polymath的搜索功能,可以迅速找到相关的曲目,创建出一个无缝融合的一小时DJ混音集。
- 机器学习数据准备:对于ML开发者,Polymath简化了创建大型音乐数据集的过程,便于训练生成模型等任务。
技术实现
Polymath的核心技术包括:
- 使用Demucs进行音乐源分离。
- 通过sf_segmenter进行音乐结构分割和标注。
- 利用Crepe神经网络进行音高跟踪和键值检测。
- 音乐转MIDI由Basic Pitch完成。
- 音乐量化与对齐则依赖于pyrubberband。
- 音乐信息检索和处理则由librosa提供支持。
社区参与
加入Polymath社区,在Discord与全球创作者交流心得!
系统需求与安装
请确保您已安装ffmpeg
。之后,使用Python 3.7至3.10版本运行以下命令进行安装:
git clone https://github.com/samim23/polymath
cd polymath
pip install -r requirements.txt
如果遇到basic-pitch问题,请在安装后执行以下命令:
pip install git+https://github.com/spotify/basic-pitch.git
对于GPU支持和Docker部署的详细步骤,请参考项目文档。
运行Polymath
通过简单的命令,您可以添加歌曲到库、量化歌曲、搜索相似歌曲以及将音频转换为MIDI。具体操作请参阅项目README文件中的详细指南。
特点
- 高效自动化:一键式操作,自动分离、量化、分析并转换音乐。
- 智能搜索:根据多种音乐特征快速查找相似歌曲。
- 自定义设置:可调整多项参数以适应不同的音频处理需求。
- 广泛兼容性:支持本地运行与Docker容器部署,适用于各种环境。
- 开放源代码:基于MIT许可证,鼓励社区参与和改进。
Polymath不仅是一个工具,更是一种全新的音乐创作方式。现在就加入,释放您的创作潜能!