我正在制作一个程序,根据 C 大调音阶的随机基本和弦进行生成随机简单的旋律。
从这个音阶生成 4 个三和弦的和弦进行的好方法是什么?从音阶中生成 4 个完全随机的三元组(从 7 个现有的三元组中)通常听起来不太好。
我需要一种方法来生成听起来不错或不错的和弦进行,但我不想简单地从现有的进行池中随机选择一个进行。我仍然希望程序自己生成这 4 个三和弦,使用一些简单的算法来确保生成的级数听起来不错。
(正如我所说,这 4 个三和弦将分别取自 C 大调音阶的 7 个三和弦)。
请注意:这个问题与我之前关于创建旋律创建算法的方法的问题并不重复。这是关于寻找一种生成和弦进行的方法。生成旋律是另一个主题。
感谢您的帮助
编辑:关于如何知道一个三和弦在另一个三和弦旁边听起来是否合适的一般指南也很棒。
听起来你需要将其分为几个阶段:
- 首先,从该密钥的所有可能性中随机生成一个三元组
- 其次,应用一个或多个过滤器来消除那些“听起来不合适”的过滤器(*)。
- 继续下去,直到获得 4 个通过所有过滤器的三元组。
我认为这个解决方案最终可能也会令人愉快地工作——你可以慢慢地建立一个过滤器集合,每个过滤器都做一件简单的事情——但是把它们放在一起,你会逐渐弄清楚什么是“体面”的定义。
(*) The 听起来不错定义为参考之前的三元组(如果有的话),您可以在此处编写过滤器,例如:
-
三和弦的根音是否符合相对于先前根音的逻辑模式?;例子:
-
这个三和弦的音符与前一个三和弦至少有一个共同的音符吗?
-
前一个三元组的“跳跃”是否“小于”某个给定的阈值?
- 以避免在整个范围内出现不和谐的跳跃
- 只需将三和弦的 MIDI 音符值相加并与之前的值进行比较即可轻松实现
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)