移调变换:改变调式的有效方法
在音乐理论和编程实现中,移调变换是一项关键技术。它能够帮助我们改变音乐的调式,同时调整音符的音高,以适应不同的音乐需求。下面,我们将详细介绍其中涉及的各种函数和变换方法。
离散函数与音高映射基础
从根本上来说,离散函数(DiscreteFunction)定义了两个离散对象集合之间的映射关系。在音乐领域,音高函数和调性函数就是离散函数的具体应用。
- 调性函数(TonalFunction) :它将一个调式(domain tonality)中的音映射到另一个调式(range tonality)中的音。其构造参数包括:
- domain_tonality :映射的源调式。
- range_tonality :映射的目标调式。
- primary_map :可选参数,用于指定源调式音到目标调式音的映射,可使用自然音或字符串表示。
- extension_map :可选参数,用于指定源调式外的音到目标调式外的音的映射。
如果只指定了源调式和目标调式,且它们的音集数量相同,默认的主映射(primary map)是按顺序的一对一映射。例如:
t_domain = Tonality.create(ModalityType.Major, DiatonicTone('C'))
t_range = Tonality.create(ModalityType.Major, DiatonicT
超级会员免费看
订阅专栏 解锁全文
2693

被折叠的 条评论
为什么被折叠?



