4 个稳定版本

1.1.1 2023年8月18日
1.1.0 2023年8月15日
1.0.1 2023年8月13日

音频 类别中排名 #386

每月下载量 34

MIT 许可证

73KB
1.5K SLoC

和弦解析器

音乐和弦签名的解析器。成功的输出将返回一个具有和弦内置抽象表示的解析和弦。

功能

  • 完整的和弦解析,额外支持 Unicode 符号!(例如 Δ、°)
  • 模糊符号到具体音符的转换(maj13 -> maj7 + 9 + 13,sus -> sus4 等。)
  • 输入规范化(空格修剪等。)
  • 完全文档化,易于使用!

用法

use chord_parser::*;

let mut parser = ChordParser::new();
 
let result = parser.parse("Cmaj9");
 
match result {
    ChordParseResult::Success(chord) => println!("{:?}", chord.alteraations.seventh),
    ChordParseResult::Failure(kind) => panic!("Expected successful parse!"),
};
 
let result = parser.parse("E7(b9,b13)");
 
// Do something else...

高级

更多内容,请访问官方 文档


lib.rs:

此 cargo 提供了音乐和弦签名的解析器。成功的输出将使用内置表示返回解析和弦。

简单示例

use chord_parser::*;

let mut parser = ChordParser::new();

let result = parser.parse("Cmaj9");

match result {
    ChordParseResult::Success(chord) => println!("{:?}", chord.alterations.seventh),
    ChordParseResult::Failure(kind) => panic!("Expected successful parse!"),
};

let result = parser.parse("E7(b9,b13)");

// Do something else...

高级

有关解析可以执行的所有操作,请访问 ChordParser

要检查和弦元素的抽象表示,请访问 chord

无运行时依赖