#music #chord #music-theory #harmony #melody

persichetti

西方古典和当代音乐的和声基础元素及其分析工具

4 个版本

0.2.0 2021年5月9日
0.1.2 2021年4月11日
0.1.1 2021年4月4日
0.1.0 2021年4月4日

#750 in 音频

MIT 许可证

45KB
759

佩西希蒂

佩西希蒂是一个软件包,提供了关于西方古典和当代音乐和声概念的推理原语。它以作曲家及《20世纪和声》一书的作者文森特·佩西希蒂的名字命名。该书中的某些概念在此得到了实现。

功能

给定构成该音程的两个音符,命名音程

let b_flat = note!("Bb")?;
let g_sharp = note!("G#")?;
assert_eq!(Interval::new(Sixth, Augmented(1))?, Interval::from_notes(&b_flat, &g_sharp));

将音程相加

let major_second = Interval::new(Second, Major)?;
let perfect_fourth = Interval::from_str("p4")?;
assert_eq!(Interval::new(Fifth, Perfect)?, major_second + perfect_fourth);

组合音符和音程

let f_sharp = note!("f#")?;
let major_third = ivl!("M3")?;
assert_eq!(note!("a#")?, f_sharp + major_third);

其他工具包括

  • 倒置音程
  • 科学音高和 MIDI 音符转换
  • 生成序列音阵

正在开发中的工具包括

  • 和弦识别
  • 扩展/爵士和声
  • Neo-Remannian 转换 (PLR / NSH)
  • Slonimsky 旋律序列(超人口、内插、超外插)
  • 有限移位模式

依赖关系

~2.8–4.5MB
~79K SLoC