本文介绍如何使用alda编写曲谱。
alda的官方描述:A music programming language for musicians.
很酷吧。
可以在官方的web-demo先体验一下
#安装
参考官方介绍安装alda.
启动alda服务
1 | alda up |
#语法
首先尝试演奏一小段:
1 | alda play -- "piano: c6 d12 e6 g12~4" |
piano: c6 d12 e6 g12~4就是alda写乐谱时的基本格式
首先指定乐器piano:然后是音c和表示时长的6
#乐器
alda支持的乐器列表
#音高
十二平均律把音分成从低到高的c c# d d# e f f# g g# a a# b
在alda里,可以表示为c c+ d d+ e f f+ g g+ a a+ b,当然降c可以表示为c-
在乐谱的开头可以指定Octave为第几个八度:
1 | piano: o3 c d e g |
在乐谱中可以用>将后续音符提高一个八度,用<降低一个八度:
1 | piano: o4 c d e g > c d e g < c d e g |
#音长
alda音符后面的数字指示音的长短:
- c4表示一个1/4拍的c,c8表示一个1/8拍的c,注意没指定时默认用之前指定过的音长,如
c2 d e中c后面的d和e都会变成1/2拍 - g12~4表示一个1/12拍加1/4拍的g
1 | piano: c6 d12 e6 g12~4 |
#休止音符
休止音符用r表示,仍然可以跟数字表示音长:
1 | piano: c6 d12 e6 g12~4 r4 c6 d12 e6 a12~4 |
#和弦
可以用/表示同时奏响,如:
1 | piano: c/e/g c/e/g c/e/a c/e/a |
#多乐器合奏
1 | piano: |
#一个例子
新建乐谱test.alda,内容:
1 | (tempo! 90) |
播放乐谱
1 | alda play --file test.alda |
#Alda REPL
alda提供了交互式命令行的服务,通过alda repl进入交互式命令行状态,可以直接敲乐谱的代码播放。