力度/渐强/渐弱
力度符号也被收纳在函数 @symbol 中,用简写 $名称 创建,一般用 ^ 把它放在音符上方。默认力度与 MuseScore 4.5.2 一致,按从弱到强排列:
| 符号 | 中文术语 | MIDI 播放力度 |
|---|---|---|
$pppppp | 六重弱 | 1 |
$ppppp | 五重弱 | 5 |
$pppp | 四重弱 | 10 |
$ppp | 极弱 | 16 |
$pp | 很弱 | 33 |
$p | 弱 | 49 |
$mp | 中弱 | 64 |
$mf | 中强 | 80(默认) |
$f | 强 | 96 |
$ff | 很强 | 112 |
$fff | 极强 | 126 |
更多 f | 四重强及以上 | 127 |
没有指定力度时,默认播放力度为 80,与 $mf 相同。
1^$p 2 3 4 | 5^$f 6 7 1' |||
1^$ppp 2^$pp 3^$p 4^$mp | 5^$mf 6^$f 7^$ff 1'^$fff |||复制代码
第一小节 1 2 3 4 都以弱力度播放,从第二小节的 5 开始改为强力度。力度记号从所附着的音符开始生效,并沿当前音轨持续。 上下摆放只改变谱面位置,不改变力度含义。
重音符号用 @symbol(accent) 创建,简写为 $accent,一般用 ^ 放在音符上方。
与 $f 等持续生效的力度记号不同,$accent 只增强所附着音符的力度,不改变后续音符的基础力度。 jpFun 播放时会在该音符原有力度上增加 20,最高不超过 127。
1 ^ $accent ^ $accent 2 ^ $accent _ $mp 3 ^ $mf ^ $accent复制代码
三个音的力度分别为 120、84、100:第一个音叠加两次重音,80 + 20 + 20 = 120;第二个音以 $mp 为基础,64 + 20 = 84;第三个音以 $mf 为基础,80 + 20 = 100。重音是在当前强弱基础上的强调,并不等于把音符改成固定的强力度。
两者使用同一个函数:
@dyn(from, to, dv)from、to是首末对象的标签,可标记音符或增时线,范围包含两端,支持跨行。两个标签必须位于同一音轨、不同记谱时间。可以跨小节、跨行,但不能连接两个声部,也不能用同一和弦里同时发音的两个音作为首尾。dv是数字,表示力度的变化量:正数表示渐强,负数表示渐弱。函数会在谱面上方画出相应的楔形记号,并按记谱时间线性改变各个音符的播放力度。
% 打标签的时候注意后面加一个空格,不然 ^ 和 _ 会被认为是标签的一部分!
1@start 2/ 3. 4@peak | 5^$f 4@fall 3@end 2^$p |||
@dyn(start, peak, 48)
@dyn(fall, end, -48)
1@start ^$p 2/ 3. 4@peak ^$f | 5@fall _$f 4 3 2@end _$p |||
@dyn(start, peak, 48)
@dyn(fall, end, -48)
复制代码
- 第一小节展示渐强。 从默认力度
80开始,四个音符的力度依次为80、96、104、127。音符时值不同,力度按记谱时间变化;终点原本应为128,被限制为127。 - 第二小节展示两端带力度符号的渐弱。
$f、$p放在首尾,渐弱的标签却放在中间两个音上,因此实际力度是96、96、49、49,不是四个音均匀递减。这种写法呈现了渐弱的视觉效果,但播放只在中间两个音之间发生一次力度下降。 - 第三小节展示把标签放在首尾的效果。
@dyn的避让范围包含端点;首尾音符上方有$p、$f时,楔形记号会被顶到这些符号上方。这也是第二小节把标签放在中间的排版原因。四个音符的力度依次为49、65、73、127。注意,终点的$f还会与渐强增量叠加,按96 + 48 = 144计算后被限制为127,不能把它当作渐强的目标力度。 - 第四小节把力度符号放到下方。 用
_代替^,首尾标签仍覆盖整个小节,上方的楔形记号便不必为了避让上方力度符号而抬高。四个音符的力度依次为127、127、112、1。这里展示的是摆放方式;移动符号不会改变播放规则,也不会消除力度符号与渐变增量的叠加。和 3 同样,这里的演奏力度是有问题的,只是看起来好看。
终点标在增时线上时,例如 1@start 2 -@end @dyn(start,end,24),会使用同轨、终点及此前最后一个原始力度作为保持基准。渐变只调整音符起音时的力度,持续中的声音不会在增时线上重新改变力度。没有可用基准时会给出警告,保留楔形线并跳过播放修正。
关于 @dyn 和 @tie 的重叠问题,请参考 反复与播放:跳房子与连音线等重叠问题。