Back space

       9. 楽典との関連
  2020/09/07

  9.1 五線譜
     小節行に記入された位置を示す文字で表現します。
     位置を基準にリズム楽器はピアノロールが縦になったと考えてください。
     考え方は五線譜が縦になったのと同じです。

   例 1、
        

        

     

   例 2、
   

       

   9.1.1 音部記号
    音部記号に変わって音域に合った小節行を利用します。
    小節行は中央C (Middle C) の位置を * で記載し上オクターブを 4 5 6 下のオクターブを
    2 1 0 で記載したいくつかの種類があります。
    詳細は 8.2項 小節行の種類をご参照ください。
      

   9.1.2 調と臨時記号
     下記 $行で表記します。
     $の後に#シャープ、&フラットを記入することで調を指定します。
     音階はMajorメジャー、Minorマイナーを記入して指定します。
     Major は _M 、minor は、 _mi と省略して記入し [meb] を実行すると
     文字は正しく補正されます。 {$&4/4} _M -> {$&4/4} F_Major

     例 ハ長調 {$4/4 C_Major}  {$##3/4 _major} はイ長調
        {$4/4}   4/4拍子  C_Major 、 a_minor
        {$#4/4}  4/4拍子  G_Major 、 e_minor

        

   9.1.3 速度記号

      
      {/60} は [meb] コマンドを実行すると、 {m.m. _/ = 60} で速度 60 bps になります。
      {/h120} は [meb] コマンド実行で、 {m.m. o/ = 120} になります。
      2分音符の速度が 120ですので速度は 60 bpsです。

   9.1.4 ピアノ譜と大譜表
      ピアノなど鍵盤楽器でシンセのコントローラーを使用しないで音階の入力エリアを
     大きくした以下の小節行になります。
      M(m) : Middle bars (Piano)
      L(l) : Low bars
      H(h) : High bars

   9.1.4 楽器の音域定義
      楽器定義ファイル xxrdf.dat に楽器の音域を指定することで小節行に..ドットで
      音域の範囲を表示します。
      下図、赤枠の数値で音域を定義します。
      symv1 は低音域、symv2 は高音域のノート番号です。

    

  9.2 小節と小節番号
     -ハイフンで始まる行は小節行です。
     ハイフンの次は音部記号です。
     音部記号は小節行の種類と同じ文字で下図の種類があります

     

     例、
      -c0000001
      -g0000001
      -s0000001

     音部記号の後の数値はシーケンス番号が2桁、残り5桁の数値は小節番号になります。
      注、 小節は最大99999まで表現可能ですが、
         Webプログラムのメモリ制限がありますので3000行位までにしてください。
     例、
       -g0100002 はシーケンス1、2小節

  9.3 音符
     ノート行に上書きで記入する文字で、1から9の数値による音符です。
     ノート行の velo 値を 12.8 とした場合、
     それぞれ 1- 9 は四捨五入で以下の値がMIDIのノートON値になります。

    

      1 x 12.8 = 12 (12.8)
      2 x 12.8 = 25 (25)
      3 x 12.8 = 38 (38.4)
      4 x 12.8 = 51 (51.2)
      5 x 12.8 = 64 (64)
      6 x 12.8 = 76 (76.8)
      7 x 12.8 = 89 (89.6)
      8 x 12.8 = 102 (102.4)
      9 x 12.8 = 115 (115.2)

     mse画面でのイベント・リスト表示
    

  9.4 休符行と休符

     休符は、休符行で表現します。
     例、
     R r 等の文字を記入して [meb/xyy] ボタンを実行します。

    

     実行結果

    

     ノート行と休符行の種類
    

  9.5 臨時記号
     音符前のノート行、休符行、プラス行の同じ位置にシャープ、フラット、ナチュラル
     などの臨時記号を上書きします。

     文字は、
      # シャープ
      & フラット
      $ ナチュラル
      * ダブル・シャープ
      @ ダブル・フラット
     です。
     記入方法は楽典と同じと考えてください。

    

    

  8.6 装飾音
     前打音
     ノート行の作成はピリオドを記入して[meb] ボタンを実行します。
     前打音の演奏は次の音符の演奏時間が短くなります。

     非和声音を明示的に記入します。
     . ピリオド1つ
     . -> %xx ./>

     前短打音
     .. ピリオド2つ
     .. -> %xx ./>>

     後打音
     演奏は前の音符を短く演奏して行われます。(未完成)
     , -> ./)
     ,, -> ./))

     例、
    

    

  9.7 装飾記号
     音符と同じ位置にトリル、モルデントなどの装飾記号を上書きします。
      t トリル
      m モルデント
     装飾音の強は先に演奏された音の強さで演奏されます。
     先の演奏音がない場合は標準の 5 になります。
     音強の変更するを場合は+ プラス行で装飾音の前に指定します。

    例 1
    

    例 2.
    

    

  9.8 タイ (k-sgtie)
      延長したい音符の次の行以降に:コロン文字で継続してください。

    

  9.9 スタッカート、スラー

     

    スタッカート %xx の値を小さくします。
    スラー %xx の値を大きくします。

    

  9.10 連符

    /[3 -> 3連符(4分音符)
    /h[9 -> 9連符(2分音符)

    

    [meb/xyy] 実行で以下になります。

    

    3連符を追加して音符を入れてみました。

    

  9.11 コードの扱い (k-mgchord)
   9.11.1 コード・ルールファイル
    楽曲ディレクトリにはそれぞれのコード・ルールファイルが生成されます。
    ルール・ファイルの編集で独自のルールを作ることが可能です。
    ここでは、サンプルを使った説明を行います。

    

    上図は、abc ディレクトリ内に abccpj.dat abccpi.dat のファイルが生成されています。
     abccpj.dat メジャー・コード(Major Chord)ルールファイル
     abccpi.dat マイナー・コード(minor chord)ルール・ファイル

    ルール・ファイルの中身「レベル」について
     レベル
     $R: コード・ルールの名称
     $0: Major/minor の設定
     $1: 調の設定
     $2: コード進行の設定
     $3: コード音の位置設定
     $4: コード名
     $5: コード・ボイシングの設定
     $6: 応用編で説明予定です。
     $7: 応用編で説明予定です。
     $8: 応用編で説明予定です。
     $9: 応用編で説明予定です。
     $A: アベイラブル・ノートの設定
     $M: 調律の設定
     $N: 応用編で説明予定です。

    

    ルール・ファイルの編集
    ルール・ファイルは楽曲毎に生成されますので自由に編集可能ですが、
     $2 のみ編集を行い好みのコード進行を作成されることをお勧めします。
    作成は、
     $2: Name
     $2: Chord
     $2: 、
     、
     、
     $2: END
    $2: Name で開始、$2:END で終了です。
    Name は、コンダクター・ファイルで参照可能になります。

   9.11.2 コード記号(k-mgchsymb)
    ! 記号の後にI,II,III,IV,V,VI,VIIの記号を使います。
    例、
    !I -> !V -> !VIm -> !IIIm -> !IV -> !I -> !V -> !I ハ長調(C_Major)の場合コード名は
    C -> G -> Am -> Em -> F -> C -> V -> C です。
    通常コンダクター・ファイルでグローバル・コマンドとしてコード進行を記入します。
    {$I} -> {$V} -> {$VIm} -> {!IIIm} -> {!IV} -> {!I} -> {!V} -> {!I}
    [meb/xyy] コマンドを実行すると設定された調のコード名が表示されます。

    

   9.11.3 コード進行とパターン (k-mgchprog)
    Mjor、Minor それぞれのルール・ファイル内 $2: でコード進行を記載します。
    ルール・ファイルに定義されたコード進行は、コンダクター・ファイルで指定可能です。
    例、
    

    コンダクター・ファイルでコード進行を
    {$2:Canon}を指定すると、ルール・ファイルの$2: ,,, $2:END のコード進行が読み込まれます。

    ハ長調 (KEY C_Major) の場合、 {!I} 行は以下の補正がされます。
    $2:I = "I $I $4:M $3:M -> V V/II" 読み込み行

    「変換」
    I -> I
    $I -> C
    $4:M -> Major chord
    $:3:M -> ,Root+M3+P5
    -> V V/II

    「結果」
    {!I C Major chord ,Root+M3+P5 -> V V/II}

    「次のコード」
    -> V V/II は左のコードが優先で 次の {!} 行にコードが生成されます。
    {!V G Major chord ,Root+M3+P5 -> VIm}

    「繰り返し」
    {!} 行にコード進行ルールのコードが生成されます。
    {!VIm Am minor chord ,Root+m3+P5 -> IIIm IIIm/V}

    メインのディレクター画面で [meb] コマンドを実行するとグローバル・コマンドで
    作成されたコンダクター・ファイルのコード設定は、
    全てのパートにコピーされます。

    例、パート・ファイル abc_018.meg

    

    2分音符のノート行を生成します。

    

     コード音位置に値を入れます。

    

     演奏データが入ります。
     ベロシティ値の設定 "555555" は、コード音位置の左から値 5 5 5 5 5 5の順に割り当て
     られます。、

    

     ベロシティ値を変更する場合は、
     #defne Chord_velocity "456789" とすると、左のコード音( . ドット)位置
     から順に 4 5 6 7 8 9 と値が割り当てられます。
     ただし、ボイシングのコード音位置の文字が # の場合は、 + プラス文字、
     & の場合は、- マイナス文字が入ります。
     この場合のベロシティ値は 5 になります。

    {Clear notes}  [meb/018] を実行したのち、再度[meb/018]を実行します。
    

   9.11.4 コードボイシング(k-mgchvoice)
    Major、Minorそれぞれのルールファイルでコードボイシングを記載します。
    ルールファイルに定義されたコードボイシングはコンダクター・ファイルで指定可能です。

    

    コードボイシングはルール・ファイルの $5: で設定されています。
    設定済のボイシングの種類は上図になります。

    例として、Default close Open のボイシングで
    Major minor dim aug Major7 の設定例を以下に示します。

    「Defaut」
    

    「Close」
    

    「Open」
    

    コード音は、" " で囲まれた、. ドット、# シャープ、& アンパサンドの位置になります。
    ルール・ファイルでは、コードのルート音の位置が 0 で設定されていますが、
    ルート(Root)音の位置を0 から 2に変更する場合は、
    以下の#define コマンドで値 2 を設定します。
    例、
    #define Chord_base_position 2

    

    例、
     {Clear notes}
    #define Chord_base_position 3
    $5:Open

    上記の指定で [meb/018)を2回実行します。

    

    結果
    

   9.12 グリッサンド

    

    コンパイラにてグリッサンドの演奏コードを出力します。
    指定方法はノート行右端の_Expのカラムに、+-~xy の文字を入れます。
    xはグリッサンドの方向と演奏方法の指定です。
     xが0は、低音から高音へのグリッサンド
     xが1は、低音から高音へさらに低音へのグリッサンド
     xが2は、低音から高音へ2回繰り返し
     xが3は、高音から低音へ低音から高音へのグリッサンド
    ~文字はグリッサンドの指定文字でこの~文字の前に+プラス、-マイナス文字を入れます。
    +プラスは上記xの値による正方向の演奏方法で、
    -マイナスは反対方向での演奏になります。

    

    yの値は、グリッサンド演奏の時間 (dt) です。
     yが1は、dt = 1000
     yが2は、dt = 2000
     yが3は、dt = 3000
     yが4は、dt = 4000
     yが5は、dt = 5000
     yが6は、dt = 6000
     yが7は、dt = 7000
     yが8は、dt = 8000
     yが9は、dt = 9000
     8分音符 _/) の長さは、内部の数値で50000ですので
     上記 yを3とした場合 dt=3000 になり、グリッサンドの最大入力可能な音符数は、
     50000/3000 = 約16 です。

    yの値が小さい程グリッサンドの演奏時間が短くなりますので
    実際の演奏を確認してyの値を決めてください。
    グリッサンドを設定するノート行の前に+から始まる補助行を入れ
    右の -------> 方向を示す文字を入れるとアルペジョの演奏が見た目でわかりやすくなります。
    補助行での-、<、> 文字は演奏への効果はありません。

    例、
     glissando +~xy
     +   ----> glissando up
     +   <---- glissando doun
     ex. -m0100001-_______________
     +           ----> 7&
     %xx _/)       5 5 5 5     +~03

     *+axy Dynamic expand
     Glissando
     *-~xy n
     *+ ar->pmf = 0
     *- Reverse ar->pmf = -1
       x : 0 up
       x : 1 up down
       x : 2 up up
       x : 3 down up

  9.13 反復、リピート
    反復、リピートは使いません。
    だたし、1つ前の小節のフレーズを繰り返し演奏する場合には、
    次の小節でノート行 /% を入力します。
    /% の入力は meb/xyy の実行で /%/ 行に補正されます。

    例、
    /%/ 行は、小節のフレーズを繰り返し演奏する省略指定です。
    以下の、2小節目は1小節のリピートになります。

    

  9.14 ピッチ、音強の変化
    MIDIのコントロール・データの連続変化を指定します。

    コマンド形式 [ 変化値 変化の時間] コントロール名
     変化値 : 数値、音強はp f の利用が可能
     変化の時間 : 音符の長さ _/ o/ 等
     コントロール名 : v_音の強さ p_ピッチベンド m_モジュレーション
                e_エクスプレッション 等
    

    例、 音強の変化
     [pp>f O] v -> [pp<f O] Volume
     [f>p O] v -> [f>p O] Volume
     [mp O] v -> [mp O] Volume

    

     イベントリストの一部
    

    注、
     複数のパートで上記の変化コマンドを利用すると多量のMIDIデータが生成されます。
     多量のMIDIデータを利用するとレイテンシーが悪くなり演奏が乱れます。
     音強の変化、ピッチベンド以外は、動作が未確認ですので利用しないでください。

  9.15 移調(k-mgchtransp)
     楽曲全体の移調は、ディレクター・ファイルの
      {Global_Transposition xx}  行のxxに移調する数値をいれてコメント行をはずし
     メイン画面の[meb] ボタンを実行します。
     シーケンスの移調はコンダクター・ファイルの
      {Sequence_Transposition xx} 行のxxに移調する数値をいれてコメント行をはずし
     [meb/x00]ボタンを実行します。
     注、バックアップを忘れないで実行しておくと後で戻せます。
       Main画面 Command : 「bak 」

  9.16 転調 (k-mgchmodur)
     転調はコンタクター・ファイルにある$行のシャープ、フラットを入れ替え
     [meb/xyy]ボタンを実行します。
     例 {$3/4} -> {$##3/4}

Back