概要

MIDIファイルをMuseデータ形式のファイルに変換するソフト。コマンドプロンプトを利用する。
「mid2mus希望」と書いたメールにオリジナルなMuseデータを添付して加藤一郎氏に送ると、このソフトがもらえる。

加藤一郎氏によると、以前mid2musをもらうために中身が「drm」と記述されただけのデータが送られたことがあったという。失礼極まりない事例である。しかし、「そうは言っても、自分の開発したソフトを欲しいと思う人がいることは、開発者冥利に尽きる」と加藤一郎氏は語っていた。なお「drm」のみのデータであっても、mid2musは献上される。

mid2mus の変換

mid2mus は MIDI ファイルを機械的に Muse データに変換するため、どうしても mid2mus 特有のデータとなりやすい。
基本としてmid2mus で変換した Muse データを『Muse の殿堂』に投稿しても審査の対象にならない。

ただ、データを聴いただけでは手書きによる打ち込みか mid2mus変換データであるかの判別はほぼ不可能である。
過去、殿堂に登録された曲の中には、mid2mus で変換された楽曲があったようだ。

mid2mus による変換の仕様

mid2mus で変換した Muse データは、手打ちで作られた Muse データとは異なる、独特の変換結果が出力される。
ここでは、mid2mus で変換された Muse データの特徴を列挙する。
 ※mid2mus のバージョンにより当てはまらない項目もあり。

==========

  • メンバー属性は全て フィンガー0 に記述される。
    • フィンガーの番号が0 以外の場所に @ が登場しない。V や S や U などが、フィンガー0 内にすべて混在することになる。
    • %・テンポは #A0 にまとめて記述される。
    • 各フィンガー0 の末尾には「X120=0(オール・サウンド・オフ)」が自動的に出力されている。

  • 休符以外のフィンガー属性(音階・強弱など)は、フィンガー0 には出現しない
    • 上にある「メンバー属性」の入力タイミング用にのみ休符が使用されている。

  • 一部のメンバー属性が X**=** に置き換えられる。

  • オリジナルな Muse データを MIDI にエクスポートし、さらに mid2mus で変換した場合、Muse譜面モニタの小節線が意味を成さなくなる。

  • 出力されるメンバーは@ABC……の順であるが、メンバーZ はメンバーI とメンバーJ の間に出力される。
    • MIDIチャンネルの順番に出力(ドラムパートは MIDI規格では「10ch(10番目)」であるため)

  • 以下のコマンドが出力されない。

    • 調性(\)とフラット(-)、ナチュラル(=)が存在しない
      • 全ての音を実音で表記するため、調性の指定をする必要がない。フラットされる音はシャープによって記述される。したがって、ナチュラルも存在しない。
      • mid2mus の変換データの最大の特徴は調性の指定がなく、フラットの記述が一切出てこないところにある、と言える。

    • 「o」(絶対オクターブ)が出現しない
      • < と > の相対オクターブのみで出力される。

    • 和音,和音の再現表記,コード,和音とコードの遅延
      • 1フィンガーに1音ずつ書かれる仕様のため、フィンガーごとに割り振られる。止音と出音が重なる音がある場合もフィンガーで分けられてしまう。
      • 10和音以上鳴らした場合などフィンガーに1音ずつ分けて記述して足りなくなった場合は、フィンガー9 にまとめて和音にして記述される。[drmfs<drmfs<dr]:i20 などを変換した場合、非常に複雑な記述となって、とてもではないが読めたものではない。

    • 連符,連符の再現表記
      • 3連符や特殊な連符は、全て微分音長による音長の加算や休符に置き換えられる。

    • 曲中のタイミング合わせ
      • 曲中にタイミングを合わせる「%」や「%(メンバー)」は、休符に置き換えられる。記述されている全てのフィンガーに休符がつくため、タイミングを計るのは非常に難しい。

    • 一部のメンバー属性・フィンガー属性・テンポの遅延
      • 属性値と休符だけで表現される。(例:“%50 %46:4”=“%50_16 %49_16 %48_16 %47_16 %46”)

    • 出音・止音の指定
      • スタッカートと音長の加算、休符によって表現される。止音よりも出音が早い場合は、フィンガーを分けて出力される。

    • 音長の減算(~)
      • 全て加算によって表現される。

    • アクセント,音量・強弱の相対指定
      • 全て実際の数値に置き換えられる。

    • 定義マクロ、展開マクロ、無名マクロ
      • マクロが展開された状態で全て書かれる。{ } は一切登場しない。

    • ブロックコメント,冒頭以外のコメント,曲中の全角文字,小節区切りのような記号など
      • Muse が再生する時に無視する文字は出てこない。ただし、データの冒頭にファイルのパスや作者名などが書かれた部分を除く。

    • *STOP、*MARK
      • すべて *TEXT に変換されるため、*STOP による曲の一時停止(クリック待ち)は一切行えない。

    • *FING
      • 全てのフィンガーに指定した属性と値が書かれる。

    • *FONT,*COLR
      • Muse だけに有効なこれらのコマンドが登場するわけがない。

    • *POOL,*DATA
      • システムメッセージは非対応。

==========
細かな違いまで列挙してしまったが、主にこのような違いがある。
そのため、mid2mus で変換されたデータを読もうとするのは非常に困難であり、mid2mus で変換されたデータは、それなりに分かってしまう傾向にある。

mid2mus が出力しない記述一覧

README.TXTの3977行目をコピペしたものを利用している。

	- 全域属性 ‥‥‥‥‥ % \  (*1)
	- メンバー宣言 ‥‥‥ @ ABCDEFGHIJKLMNO Z  (*2)
	- メンバー属性 ‥‥‥ S Y T
	- フィンガー属性 ‥‥ ? w p q
	- 音符記述
		音名 ‥‥‥‥ - =
		音長 ‥‥‥‥ ~
	- 群記述 ‥‥‥‥‥‥ (  ) [  ] ' '
	- 補助記述 ‥‥‥‥‥ & ,
	- コマンド記述 ‥‥‥ * "  " (*3)
	- マクロ記述 ‥‥‥‥ $ {  }
	- キャンセル文字 ‥‥ | ! ; (*4)

(*1) タイミング合わせの%に限り、データ末尾に %%125 と記される。
(*2) フィンガー番号 0 のところに @ とだけ記されているが、メンバー指定はない。
(*3) 特定のコマンドに限る。以下を参照。
(*4) 冒頭のみ;が登場する。

コマンド部分のコピペしたものを利用している。

		STOP → 一時停止と文字列の表示/完全停止
		MARK → 位置決め可能な文字列の表示
		FONT → 上記4コマンドの文字フォント指定
		WAVE → 音声ファイルの再生
		FING → フィンガー属性の一括指定
		COLR → メンバー色のカスタマイズ(1コマンドのみ有効)
		DATA → エクスクルーシブの出力
		POOL → エクスクルーシブ前半部の記憶

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-01-09 (土) 11:30:12 (1203d)
Google