跳转到主要内容

音乐理论库,面向人类。

项目描述

PyTheory:面向人类的音乐理论

这个(正在进行中)库试图使探索音乐理论对人类来说更容易接近。

logo

PyTheory是一个音乐理论库,它程序化地生成所有已知的西方音调、音阶和和弦指板图(用于自定义指板)。

它能够输出表示音高的十进制数或音高的正确符号表示(作为一个SymPy对象)。

真实音阶 -> 音高评估

>>> from pytheory import TonedScale

>>> c_minor = TonedScale(tonic='C4')['minor']

>>> c_minor
<Scale I=C4 II=D4 III=Eb4 IV=F4 V=G4 VI=Ab4 VII=Bb5 VIII=C5>

>>> c_minor[0].pitch()
523.251130601197

>>> c_minor["I"].pitch(symbolic=True)
440*2**(1/4)

>>> c_minor["tonic"].pitch(temperament='pythagorean', symbolic=True)
14080/27

可听地播放一个音符(或和弦)

>>> from pytheory import play
play(c_minor[0], t=1_000)

自定义调音的和弦指法

>>> from pytheory import Tone, Fretboard, CHARTS

>>> tones = (
...     Tone.from_string("F2"),
...     Tone.from_string("C3"),
...     Tone.from_string("G3"),
...     Tone.from_string("D4"),
...     Tone.from_string("A5"),
...     Tone.from_string("E5")
... )

>>> fretboard = Fretboard(tones=tones)
>>>
>>> c_chord = CHARTS['western']["C"]

>>> print(c_chord.fingering(fretboard=fretboard))
(0, 0, 0, 3, 3, 3)

它还可以为任何乐器生成所有已知的和弦图(准确性待确定!)。

✨🍰✨

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分布

pytheory-0.1.2.tar.gz (10.4 kB 查看哈希)

上传时间: 源代码

构建分布

pytheory-0.1.2-py2.py3-none-any.whl (10.4 kB 查看散列值)

上传时间 Python 2 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面