accord-joshrowley
是一个使用 JavaScript 编写的音乐理论库,它可以帮助开发者快速计算音符、和弦、调式和音阶,同时也支持将这些概念转化为 MIDI 数据以进行音乐生成。在本文中,我们将介绍如何使用 accord-joshrowley
完成一些常见的音乐理论计算任务。
安装
要使用 accord-joshrowley
,我们需要使用 npm 进行安装。打开终端并输入以下命令:
npm install accord-joshrowley
使用
在使用 accord-joshrowley
之前,我们需要将其导入到我们的项目中:
const { Note, Chord, Scale, Mode } = require("accord-joshrowley");
Note(音符)
要在 accord-joshrowley
中创建音符,我们需要提供一个字符串来表示音符的名称。例如,要创建一个名为“C#4”的音符,请执行以下操作:
const note = new Note("C#4");
我们还可以将音符的名称作为一个对象传递进去,如下所示:
const note = new Note({ letter: "C", octave: 4, accidental: "#" });
一旦我们创建了音符,就可以通过以下方式访问其属性:
console.log(note.letter); // "C" console.log(note.octave); // 4 console.log(note.accidental); // "#"
Chord(和弦)
要创建一个和弦,我们需要给出一个包含多个音符的数组。以下代码创建一个名为“Cmaj7”的大调 7 和弦:
const chord = new Chord(["C4", "E4", "G4", "B4"]);
我们还可以将和弦的名称作为一个字符串传递进去,如下所示:
const chord = new Chord("Cmaj7");
一旦我们创建了和弦,就可以通过以下方式访问它的属性:
console.log(chord.notes); // ["C4", "E4", "G4", "B4"] console.log(chord.name); // "Cmaj7"
Scale(调式)
要创建一个调式,我们需要指定调式名称和 root(根音)。以下代码创建一个名为“dorian”的 D 色调的 Dorian 调式:
const scale = new Scale("D", "dorian");
我们还可以将调式的名称作为一个字符串传递进去,如下所示:
const scale = new Scale("D dorian");
一旦我们创建了调式,就可以通过以下方式访问其属性:
console.log(scale.notes); // ["D4", "E4", "F4", "G4", "A4", "B4", "C5"] console.log(scale.name); // "dorian" console.log(scale.root); // "D"
Mode(音阶)
要创建一个模式,我们需要指定模式的名称和 root(根音)。以下代码创建了名为“lydian”的模式:
const mode = new Mode("C", "lydian");
我们还可以将模式的名称作为一个字符串传递进去,如下所示:
const mode = new Mode("C lydian");
一旦我们创建了模式,就可以通过以下方式访问其属性:
console.log(mode.notes); // ["C4", "D4", "E4", "F#4", "G4", "A4", "B4"] console.log(mode.name); // "lydian" console.log(mode.root); // "C"
实例
以下是一个完整的示例,将调式“D dorian”转换为 MIDI 数据:
-- -------------------- ---- ------- ----- - ----- ----- - - ----------------------------- ----- -------- - -------------------- -- -- ---- ---- ----- ------ - --- ------------------------ ------ ------ -- ---- ----- ----- - --- ---------- ---------- -- ------- ---- ---- ---------------------------- -- - ----- ---- - --- --------------- ----- -------------- - ------------ --------------------- - ----- --------------- --------- --- --- ------------- -- - ---------------------- - ----- --------------- --------- - --- -- ----- ---
在这个例子中,我们使用 easymidi
库发送 MIDI 数据,但实际上我们可以使用任何 MIDI 库或音乐生成器来处理 accord-joshrowley
返回的数据。
结论
现在,你已经了解如何在你的项目中使用 accord-joshrowley
库计算音符、和弦、调式和音阶了。这个库还提供了更多的功能,如计算音符之间的距离和找到与和弦相关的调式。希望这篇文章对你学习和使用 accord-joshrowley
库有所帮助!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/74541