wiki:外部仕様/MML仕様/演奏命令解釈規則
Last modified 3 years ago Last modified on 07/01/09 08:24:16

演奏命令解釈規則

半音指定の扱い

  • 音符に対する半音指定がない場合は、制御命令 #key による設定に準じる。
  • 音符に対してシャープ (+ または #) またはフラット (-) が一つないし複数指定された場合、制御命令 #key による設定を上書きする (加算ではない)。
  • 音符に対してナチュラル (=) が指定された場合、制御命令 #key による設定は無効化される。
  • 制御命令 #key による設定は、常に厳密に行う。例えば、
    #key C Major
    cdef gab>c
    
    #key B+ Major
    cdef gab>c
    
    は同じような意味に見えるかもしれないが、動作としてはまったく異なる。後者は、
    #key C Major
    c++d++e+f++ g++a++b+>c++
    
    と同じ意味となり、
    #key C Major
    defg ab>cd
    
    と同じ動作となる。

付点の扱い

  • L 命令に付点付きの長さが指定された場合で、かつ、音符の長さ指定が付点のみである場合、その音符の長さは、L 命令にて指定した付点付きの長さに対して、さらに付点を加えた長さとなる。 例えば、
    L4. c.d16e.f16 gf16e16dr8
    
    は、
    c4..d16e4..f16 g4.f16e16d4.r8
    
    と解釈される。
  • L 命令に付点付きの長さが指定された場合であっても、音符の長さ指定が数値と付点である場合は、その音符の長さは、音符の長さ指定そのものの長さとなる。 例えば、
    L4. c.d16e.f16 g8.f16e8.d16c+r8
    
    は、
    c4..d16e4..f16 g8.f16e8.d16c+4.r8
    
    と解釈される。