1


JFugue (5、ベータ版) についていくつか質問があります。

  • The complete guide to JFugueから、パターンの調号に応じて、JFugue が音価を解釈することが言及されています。例として、ヘ長調の場合、「Bn」と書かない限り、B は自動的に B-flat に変換されます。問題は、F メジャー キーを扱っていて、「Bb」と書いた場合、JFugue はそれをどのように解釈するかということです。「Bbb」または「Bb」ノートとして?
  • 2 番目の質問は、JFugue でのキーの転置についてです。
    そのための最速の方法は何ですか?

フセイン・ハムード
、よろしくお願いします。

4

1 に答える 1

1

質問の最初の部分への回答: ヘ長調のキーでは、Bb は Bb のように演奏されます。ヘ長調で演奏されるときの B 自体と同じです。これをテストするプログラムは次のとおりです。

StaccatoParser parser = new StaccatoParser();
DiagnosticParserListener dpl = new DiagnosticParserListener();
parser.addParserListener(dpl);
Pattern pattern = new Pattern("KEY:Cmaj B Bn Bb   KEY:FMaj B Bn Bb");
parser.parse(pattern);

そしてその出力 (MIDI ノート 70 は Bb で、MIDI ノート 71 は B であることに注意してください):

Before parsing starts
Key signature parsed: key = 0  scale = 1
Note parsed: value = 71  duration = 0.25  onVelocity = 64  offVelocity = 64
Note parsed: value = 71  duration = 0.25  onVelocity = 64  offVelocity = 64
Note parsed: value = 70  duration = 0.25  onVelocity = 64  offVelocity = 64
Key signature parsed: key = 5  scale = 1
Note parsed: value = 70  duration = 0.25  onVelocity = 64  offVelocity = 64
Note parsed: value = 71  duration = 0.25  onVelocity = 64  offVelocity = 64
Note parsed: value = 70  duration = 0.25  onVelocity = 64  offVelocity = 64
After parsing finished

あなたの質問の 2 番目の部分への回答: 今のところ適切な回答があるかどうかはわかりません。しかし、あなたは私にクラスのtranspose()メソッドを書くように促しました. Patternありがとうございました!

于 2015-03-28T00:52:48.160 に答える