Top > howto_lv2_16

BGMの音質が気に食わない

Last-modified: 2017-08-11 (金) 00:44:00
  • CardWirthのBGMには、主にMIDIが使われている(古いシナリオほど多い)。
  • MIDIが再生された時の音質は「SoundFont」フォルダ内の、指定されたMIDI音源に依存する。
  • 無料で使えて、そこそこ良い性能なMIDI音源がある。
  • MIDI音源を組み合わせることで、音質をより高めることもできる。
 

音質って重要だよね Edit

( ´∀`)
   ねえねえ。
(´・ω・`)
   どうしたの?
( ´∀`)
   いろんなシナリオやってきたんだけどさ、何と言うか……
(´・ω・`)
   ?
( ´∀`)
   ……BGMの音がヘボ過ぎて、緊張感が台無しなシーンが多いような。
(´・ω・`)
   んー、まあBGMがMIDIだから、最新の市販のゲームとかに比べると、どうしてもしょっぱいよねえ。
( ´∀`)
   どうにかなんない?
(´・ω・`)
   んじゃ、少しでも良くする方法について解説しようか。

MIDIの基礎知識 Edit

(´・ω・`)
   さて。さっきも少し話したけど、CardWirthではBGMにMIDIという形式を採用している。
( ´∀`)
   なにそれ。
(´・ω・`)
   詳しい解説はGoogle先生とWikipedia教授に任せよう。
   シナリオフォルダやCardWirthのフォルダの中に、「mid」という拡張子のファイルが入っていたと思う。
   これが音楽ファイルだ。
( ´∀`)
   なるほど。
(´・ω・`)
   で、実はこのファイルにはMP3ファイルみたいに音楽が録音されているわけじゃない。
   これはただの楽譜で、どの楽器をどのように演奏するか、ということしか書かれていない。
( ´∀`)
   これを再生するにはその楽譜を解釈して音にしなきゃいけないんだね。
(´・ω・`)
   そう。で、それを担当しているのが通称MIDI音源(サウンドフォント)。要は楽器の演奏家集団だ。
( ´∀`)
   MIDIファイルをMIDI音源に渡して、演奏してもらったものをBGMとして流してるんだね。
(´・ω・`)
   うん。……さて、今ここに音楽家集団が2組いる。
   片方は幼稚園の鼓笛隊。もう片方は何とかかんとかフィルハーモニックオーケストラ。
   どっちの音楽家集団が良い音 を鳴らすと思う?
( ´∀`)
   そりゃもちろん、オーケストラの方だよ。
   ……そうか、MIDI音源の品質がよければBGMもきれいになるんだ。
(´・ω・`)
   ご明察。で、だ。ちょっとCardWirthを起動して「ゲーム画面(宿)に入る」
   →「右下の歯車ボタン(ゲーム環境の変更)をクリック」→「オーディオ」タブを選んでくれ。
   そこの「使用するサウンドフォント」のところに何て書いてある?

 
ゲーム環境の変更
 

( ´∀`)
   「Default.sf2」だね。

 
「オーディオ」タブ
 

(´・ω・`)
   これがCardWirth標準のMIDI音源なんだけど、ようはCardWirth本体を配布しやすくするため
   容量を限界まで減らしてあるから、本当に「音が出る」程度の音質でしかなかったりするんだ。
( ´∀`)
   まあ、容量の肥大は敵だからね……
(´・ω・`)
   というわけで、PCに新しくナイスな腕前の音楽家をお招きしよう。

音源の導入 Edit

(´・ω・`)
   ナイスな腕前の音楽家とは言ったけど、ガチのオーケストラ楽団だったり、名演奏家だったりすると
   音源も有料だったり、サウンドフォントのサイズだって百数十〜数百MBにまでなるんだよね。
( ´∀`)
   さすがにそれは、扱いきれないかなぁ……
(´・ω・`)
   ということで、動画サイトで「演奏してみた」してるような感じの、そこそこの腕前をしていて
   なおかつフリーの音源(サウンドフォント)として、サイトで無料配布されているものを使うとしよう。
( ´∀`)
   タダで使えるMIDI音源もあるんだね。
(´・ω・`)
   まずは「32MbGMStereo.sf2」だ、NTONYXというサイトで配布されている(直リンク
   トップページ→「download」タブ→「Free SoundFonts and GigaSounds」→「SoundFonts」
   →ページ中程の「Click here to download SoundFont 32Mb GM Stereo Set.」からダウンロードできる。
( ´∀`)
   ファイル名どおり、32MBくらいの大きさなんだね。
(´・ω・`)
   これくらいの大きさのMIDI音源が、音質と扱いやすさのバランスが良いと思うんだよ。
   次に「GeneralUser GS」だ、S. Christian Collinsというサイトで配布されている(Backup_1471
   トップページ→上タブの「Virtual Instruments」→左タブに出て来る「GeneralUser GS」
   →ページ中程の「Download」→「GeneralUser GS 1.○○」からダウンロードできる。
   「zip」形式で圧縮されてるから、解凍してから音源ファイルを取り出そう。
( ´∀`)
   「.sf2」っていうファイルが、サウンドフォントなんだね。そういえば「GeneralUser GS」には
   他にもいろいろファイルとフォルダが入ってたけど、これらを使う必要は無いのかな?
(´・ω・`)
   使う必要はないから、そのままゴミ箱に捨てて構わないよ。
   読めるなら、リードミーやライセンスを読んでおいたほうが良いんだけどね。
( ´∀`)
   非商用で個人が利用する場合に限りOK、って言ってるのは分かるよ。
(´・ω・`)
   それだけわかっていれば十分かな。さて、お目当てのサウンドフォントが入手出来たら
   それらをCardWirthフォルダ内の「SoundFont」フォルダに移動させ、改めてCardWirthを起動しよう
   そうしたら再びゲーム画面(宿)から、歯車(ゲーム環境の変更)の「オーディオ」タブを開いてくれ。

 
サウンドフォントの追加
 

( ´∀`)
   「利用可能なサウンドフォント」が増えてるね。
(´・ω・`)
   追加された「利用可能なサウンドフォント」から、使いたいサウンドフォントを右側の
   「使用するサウンドフォント」に移動させ、画像のように「Default.sf2」の上に重ねよう
   そして「OK」を押すと……どうだい、音がまるっきり見違えるようだろう?
( ´∀`)
   おおっ! これなら盛り上がるシーンで、普通に盛り上がれそうだ!
(´・ω・`)
   フリーで配布されているMIDI音源(サウンドフォント)は、他にもたくさんあるんだ。
   何より「mid」音楽ファイルごとの相性もある、色々試してみるのも楽しいかもしれないね。

 
サウンドフォントダウンロード解説
084.0mg all in one
gm v1.1 bank fix
2017/08/10更新
MEGA
ミラー配布
VIPWirth新避難所のID:uxgW0h6U氏がpublic domainのサウンドフォントを
修正して公開したもの。クッキリした生っぽい音で、なかなかオススメ。
(配布環境が不安定ということなので、要望を受けてミラー配布しています。)
TimGM_A320_Mix
2017/07/27更新
BitbucketCardWirthPyのフォークエンジン「CardWirthPyLite」の製作者氏
「CWでよく使われる曲が大体無難に鳴る」ことを目標に、TimGM6mbベースで
A320Uと合成・調整したサウンドフォント。多くの音で無難に使える。
(TimGM6mb.sf2及びA320U.sf2は、GNU GPL v2ライセンスです。)
 
その他オススメのセット音源
 

音源を重ねる Edit

( ´∀`)
   そう言えば、ダウンロードしたサウンドフォントを「Default.sf2」の上に重ねていたけど
   「Default.sf2」は削除したり、「利用可能なサウンドフォント」の方に避けておかなくていいの?
(´・ω・`)
   MIDI音源の質の違いを、幼稚園の鼓笛隊とプロのオーケストラに例えて説明したけど
   幼稚園の鼓笛隊にはプロのオーケストラに無いものがあるんだ、分かるかな?
( ´∀`)
   えっなに、ロリ幼女?
(´・ω・`)
   「鍵盤ハーモニカ」や「リコーダー」だよ、そしてそれはサウンドフォントにも言えるんだ。
   要するに、一部の楽器が入っていない場合がある。そして、もし楽譜にその楽器が指定されていたら。
( ´∀`)
   あっ、エラーを吐いてしまう……?
(´・ω・`)
   CardWirthのオーディオ設定は、上の方にあるサウンドフォントから順番に「その楽器の音源」を探して
   見つかったらそれを使うというやり方なんだ。見つからなかったら、次段のサウンドフォントから探す。
   優先的に使って欲しいサウンドフォントは、より上の方に重ねておくことで反映されやすい。
( ´∀`)
   そうか、だから「Default.sf2」も、下のほうに入れておくと良いんだね。
(´・ω・`)
   そのとおり、「Default.sf2」は音質はともかく、CardWirthに必要な音源がひと通り入っている。
   「使用するサウンドフォント」の一番下に入れておけば、何がしか音を出してくれてエラーも出ないってわけ。
( ´∀`)
   なるほど……でもオールインワンとは限らないって、MIDI音源って面倒なんだね。
(´・ω・`)
   裏を返せば、それを利用して「音源を重ねる」ってことも出来たりするよ。
   ギターしか入ってないけど、絶世のギタリストの演奏で作られたギター音源が手に入ったなら
   「ギター音源」→「適当なセット音源」→「Default.sf2」の順番で重ねておけば
   ギターは絶世の演奏で、その他の楽器もセット音源でそれなり、「Default.sf2」でエラーも出ない。
( ´∀`)
   そんな使い方もあるんだ。
(´・ω・`)
   一部の楽器だけのMIDI音源(サウンドフォント)も、フリーで多く配布されている。
   これらを組み合わせて、オーケストラ顔負けの演奏をさせるのも、面白いかもしれないね。

 
サウンドフォントダウンロード解説
KDrum.sf2
他多数
A-1 DRIVE
WebArchive
「昔のコンテンツ→SoundFont→SFライブラリ.sf2」から
ダウンロードできる。「KDrum.sf2」は、ドラムの弱い
GeneralUser GS」の上に重ねてやると、なかなか良い感じに。
「dion」「auone」は、2017年10月31日で終了予定
Florestan String
Quartet 他多数
Nando Florestanページ中程の「Florestan’s Free Orchestral SoundFonts」
の項目から、バイオリン・ホルン・オーボエなどの楽器音源が手に入る。
040 Florestan String Quartet」は、四種類の弦楽器が一纏めに
なった音源で、弦楽器の弱いセット音源の上に重ねると良い感じ。
 
その他オススメの楽器別音源
ごちゃ混ぜでよく分からない音源たち
 

GSとGMとXG Edit

( ´∀`)
   そういえば、ちょっと気になってたんだけど……セット音源に
   ときどき「GM」とか「GS」って付いているのは、これって何なの?
(´・ω・`)
   良いところに気づいたね、それはセット音源の規格を表しているんだ。
( ´∀`)
   セット音源の規格?
(´・ω・`)
   もともとMIDI音源(サウンドフォント)の規格は、電子楽器を販売する各社でバラバラだったんだよ。
   そうだね、DVDの規格争いを思い出すと分かりやすいかな。今でこそMP3も軽々持ち歩ける時代だけど
   かつての保存媒体は精々フロッピーディスク。だから.midファイルという楽譜だけを持ち帰り
   MIDI音源という手持ちの楽団に演奏させる、MIDI形式が音楽ファイルの主流だったんだ。
( ´∀`)
   つまり当時の音楽ファイル市場で、我こそデファクトスタンダード、って争いの名残なわけか……。
(´・ω・`)
   そんな中で一歩抜け出したのがローランド社、こんな名前だけど日本の会社だよ。
   ローランド社は高性能で廉価なDTM(電子作曲・演奏)マシンに、「GS」規格の音源を載せて発売。
   これとその後継機が爆発的に売れて、「GS」規格が一躍MIDI音源の主流へと躍り出たんだ。
( ´∀`)
   最初はGS音源が主流だったんだね。
(´・ω・`)
   しかし他社もなかなか折れず、複数の規格が混在する、ユーザーに不利益な状況が長く続いた。
   かくして遅れ馳せながら、MIDIの共通規格が作られることになったんだ、そして生まれたのが「GM」さ。
   「GM」は『General MIDI』の略称で、まさにMIDIの共通規格としての名称でもあるんだ。
( ´∀`)
   ふむふむ。
(´・ω・`)
   この「GM」規格は、ローランド社のGS規格の、他社と共有できる部分を抜粋して制定した規格だ。
   当時すでにローランド社のGS規格は、事実上のMIDI音源のスタンダードとなっていたのさ。
   だからそれに折り合いをつける形で共通規格も作られた、という流れなんだね。
( ´∀`)
   ローランド社の判定勝ち、ってところかな。
(´・ω・`)
   そうだね、見ての通り実際は逆なんだけど、GSはGMの上位互換のように扱える。
   またそれまでの普及度からも、GS優勢の流れは続いていく事になった。
( ´∀`)
   だからセット音源にも、GS規格のものが多いんだね。
(´・ω・`)
   ところがそれが面白くないのは、ライバル企業のヤマハだ、超有名な楽器メーカーだね。
   GM規格は制定されたけどGSの一部抜粋じゃGSには勝てない、かと言ってそのGSをOEM契約で使っていても
   永久にローランド社には勝てない。勝利の道は一つ、ヤマハ独自のGM上位互換規格を作り出すこと!
( ´∀`)
   それが第三の規格ってことだね。
(´・ω・`)
   そう、ヤマハの「XG」規格が、第三の規格だ。後発の利点を活かし、互換性・適応性・拡張性の
   三点を売りに展開し、大勢が決まりかけていたMIDI市場の一部に食い込むことに成功したってわけさ。
( ´∀`)
   なるほど……それで重要なんだけど、CardWirthで使うとき、気をつけることはある?
(´・ω・`)
   まず基本的に、多くの.midファイルは共通規格の「GM」で作られているはずだ。
   これならGMのMIDI音源で再生できるだけでなく、上位互換である「GS」「XG」の音源でも再生できる。
   そしてGSやXGの規格で作成された.midファイルなら、それで再生するようReadMe.txtに一筆あるはずだね。
( ´∀`)
   まあそれが、共通規格の存在意義だよね。じゃあ気にしなくて良いのかな?
(´・ω・`)
   シナリオ作者が素材のReadMe.txtを読まず、うっかり混ぜてしまっても、テストプレイで気付くからね。
   ……と言いたいところだけど、実はたった一つだけ、誤って混入してしまうパターンがあるんだ。
( ´∀`)
   ええっ?
(´・ω・`)
   まずCardWirthが1.50になる前……1.28以前の時代は、上記のように「CardWirthに内蔵された
   MIDI音源を使用する」のではなくて、「パソコン内部に搭載されたMIDI音源を使用する」形式だった。
   それというものWindows標準でMIDI音源が付いてたから、これを利用する前提だったんだ。
( ´∀`)
   ちょっと聞いたことがあるね、WindowsVistaでWindows標準のMIDI音源が廃止されて
   それがCardWirthに不具合を起こし、1.28から1.50へのバージョンアップに繋がったって話だっけ。
(´・ω・`)
   そうだね。ところでこのWindows標準のMIDI音源、「Microsoft GS Wavetable SW Synth」っていうんだ。
( ´∀`)
   ……GS?
(´・ω・`)
   だってGSのほうが、世に出たのが先だもん。それに主流といえるほど広まってたし。
( ´∀`)
   あっ……。
(´・ω・`)
   だからCardWirthが1.28以前の時代に作成されたシナリオだと、GS規格の.midがそうと気付かれず
   混入している場合がわずかながら存在する。それを1.50以降のCardWirth本体で、GM規格のMIDI音源しか
   登録していない状態でそのシナリオを遊ぼうとすると、引っかることがあるかもしれないって話さ。
( ´∀`)
   それじゃあCardWirthに元から入ってる「Default.sf2」は、どの形式の音源なの?
(´・ω・`)
   実はよくわからない、この辺の話によると「005.6mg Aspirin Stereo v1.2 Bank」
   というサウンドフォントらしいんだけど、MIDI音源としての規格が何かはサッパリ。
( ´∀`)
   ええー……。
(´・ω・`)
   だけど古いシナリオをプレイ中にエラーが出て、どうもそれが.midファイルが原因らしい
   というときには、この話を思い出してくれると、もしかしたら解決の一助になるかもしれないね。
( ´∀`)
   と言うか紹介されたサウンドフォントも、GMだかGSだか良く分かんない物が大半なんですが!
(´・ω・`)
   だから音源を重ねる時は、念のため一番下に「Default.sf2」を置いておこうって話なのさ。
   今のところ、MIDI演奏で「Default.sf2」がエラーを吐いた報告は聞かないからね。


何がしかの報告があった場合は、修正をお願いします(by 執筆者)