用于探索音乐调音的python包。
PyTuning的Python项目详细描述
pytuning是一个python库,用于探索音阶 以及微英云闪长岩。它可以被需要计算方法的开发人员使用, 分析和操纵音阶,但也可以交互使用。
它大量使用SymPy包,一个纯python 计算机代数系统,允许标度和标度 象征性地操纵,不失精确。还有一个可选的 依赖于Matplotlib(和 Seaborn)对于一些已经 包括在包裹里。
该软件包的一些功能包括:
- 以各种方式创造音阶(江户,欧拉福克,全音阶,和声, 从发电机间隔等)
- 能够以外部理解的方式表示创建的刻度 软件(scala、timidity、fluidsynth、yoshimi、zynadsubfx)。
- 一些分析函数(例如,pytuning提供了一个搜索框架 基于定义的度量函数和组合分析的尺度模式)。阿尔索 包括一些数论函数,如素数极限和奇数极限。
- 一些尺度可视化。
- 互动使用。
作为一个简单的例子,创建一个31-tet刻度,然后为 胆小的软合成:
scale=create_edo_scale(31)tuning_table=create_timidity_tuning(scale,reference_note=69)
pytuning的设计非常简单,因此非计算机专业人员可以 使用它没有太多困难(音乐家,音乐学家,所有感兴趣的人 条纹)。
在范围内,这个项目类似于Scala 软件包,有一些不同:
- scala是一个成熟的、功能齐全的软件包,它包含许多 以及操作和分析这些比例的功能。这个项目 是更新和不太成熟的;它的范围现在要小得多(但是 希望这将很容易扩展)。
- pytuning是用python编写的,依赖于现代的、维护良好的依赖关系。 scala是用ada编写的,虽然这是一个有趣的选择,但它可能 限制可以在需要时更改或扩展它的用户群 起来。
- scala主要是一个应用程序。pytuning是一个开发库,但是 非程序员交互使用它的方式。
- 这个包不与声卡或音频驱动程序交互,所以 不能直接播放音阶。然而, 用于将音阶导出到其他软件包中以便音乐 声音也能产生。
安装
pytuning在python 2.7.x和3.x下运行。
安装pytuning的最简单方法是通过python包索引,使用 哪个pytuning是registered:
pip install pytuning
pytuning有两个硬依赖项:SymPy和 NumPy。sympy是一个纯python库,pip将处理 安装得很好。numpy是一个更复杂的包,如果通过pipmay安装的话 需要大量编译;您可能需要通过 在pip安装包之前,平台提供的任何机制。
如果以交互方式运行包,建议使用jupyter interactive 安装外壳。在交互式使用说明下的文档中对此进行了讨论。
源代码可以在GitHub上找到,其中 它可以被克隆和安装。
文档
可以在Read the Docs上找到该包的文档。
路线图
更多的尺度,更多的可视化,更多的分析功能。欢迎拉取请求!