※但し YAMAHA 又は ROLAND のソフトシンセ/ハードシンセを持ってる方には必要が無いと思われます。
※ただ、cfgやsoundfontなどの組み合わせによっては、SC-88/SC-88Pro以上の音が出せると思います。
というわけで、ここはTiMidityの初心者用の導入ページです。
TiMidityは多くの方々によって、開発されています。
ここでは、その中でもsaito氏の本体を使用したとして進めていきます。
まず、TiMidity++ (Experimental version)へ行き
本体配布と進んでください。
ここで最新版と安定版がありますが、この解説を見てる人は最新版でもいいと思います。
安定版はインストール版もあり、解説もついてきます。
ここからは最新版をダウンロードして、使用する場合を例にとって進めていきます。
落としたファイルをLhaPlusなどで解凍するとtimw32g.exe、twsyng.exe、twsynsrv.exe
がでてきます。このファイルをできるだけわかりやすい場所におくことをお勧めます。
とりあえず説明の都合上CドライブにTiMidityというフォルダを作成し、そこに置くことにします。
これでTiMidityの設置は終わりました。
次にSoundfont(楽器)とコンフィグファイルを落として音を鳴らせて見ましょう。
音を鳴らすには導入編の最後に書いたSoundfont(サウンドフォント)とコンフィグファイルが必要です。
別の方法でGUS/patchを用いる方法もありますが、そちらの方法は結構紹介しているところが多いので、説明は省略します。
今回はsaito氏の自動生成されたコンフィグファイルを使用します。
まず、TiMidity++ (Experimental version)へ行き
設定ファイル→自動生成CFG詰め合わせへ飛びます。
すると大量のコンフィグファイルが並んでいますが、その中でもAnotherGS Soundfontv2.0を使うとして話を進めていきます。
まず、anothergsv20.cfgをダウンロードし、c:\TiMidityに置きます。
次にAnotherGS Soundfont v2.0.をクリック→AnotherGS Soundfont→DownLoad
AnotherGSをダウンロードします。落としたAnotherGSを展開するとbennetng_AnotherGS_v2-0.sf2がでてきます。
※AnotherGS 公開サイトが移転したようです。現在はこちらのようです。
c:\TiMidityにsoundfontというフォルダを作りその中に先ほど展開して出てきたbennetng_AnotherGS_v2-0.sf2を入れます。
するとこんな感じになります。
ここまで来たらもう少しです。
次にanothergsv20.cfgをテキストで開き(テキストエディタを起動させてcfgファイルを放り込んでください)
dir c:\TiMidity
dir c:\TiMidity\soundfont
と一番上に記入します。
意味はc:\TiMidityはTiMidity本体がある場所です。
c:\TiMidity\soundfontはsoundfontがある場所になります。
記入すると↓見たいな感じになります。
これで準備は完了です。早速TiMidityを起動させて見ましょう。
本体はtimw32g.exeです。
なにやら英語で質問が出ますがOKを選んでください。
Config→Preference→LangueageをJapaneseにします。
RestartTryって聞かれるので「はい」を
設定→詳細設定→設定ファイルで先ほどのanothergsv20.cfgを読み込み
OKを押しTiMidityを再起動させます。
これで音がなれば成功です。
※Soundfontの圧縮形式はsfpackとsfarkがあります。
sfpackはsaito氏の設定ファイルのところにひっそりとあります。
SfArkは"SfArk"
とグーグルなどで検索をかければすぐ引っかかります。
TiMidityのConfigファイルを開くと
のようになってると思います。
以下解説です。
用語 | 意味 |
検索パス | cfg, soundfontなどがある場所を正確に "絶対パス"(c:\timidityなどのように)で指定します。 注意点 スペースなどがパスやファイル名に含まれている場合は、""で囲ってください。 例:C:\Program Files\Timidityをdirで指定する場合は dir "C:\Program Files\Timidity" という風に記述してください |
サウンドフォント | サウンドフォントのファイル名です。 注意点 スペースなどがパスやファイル名に含まれている場合は、""で囲ってください。 例:SoundFont Name.sf2を指定する場合は "SoundFont Name.sf2" という風に記述してください |
MIDIファイルのBank | TiMidityのTracerで確認できます。 ※ここの部分を少し書き換えることで、音源ごとにbankを設定することが可能です。 参考→FAQ |
MIDIファイルのProg | TiMidityのTracerで確認できます |
SoundfontのProg | Creative製のサウンドカードをお持ちなら
Vienna(検索で探せば見つかります)で確認できます。 それ以外の場合は Soundfont Librarianなどで確認できます。 |
SoundfontのBank | Creative製のサウンドカードをお持ちなら
Vienna(検索で探せば見つかります)で確認できます。 それ以外の場合は Soundfont Librarianなどで確認できます。 |
音量 | 音色の音量を記述します。 amp=?の行を書かない場合TiMidityが自動的に音量を決めます。 |
パン | 音色のパン(スピーカ左右の割り振り)を決めます。 記述を省いた場合はSoundfontの設定値に従います。 |
これをデフォルトのMIDIシンセとして使うのはかなりキツいので、多少音質は落ちますが軽くしてみましょう
まず、TiMidityを起動させます。
設定→詳細設定→エフェクト
オプション | パフォーマンス重視 | 音質重視 |
リバーヴ | 標準リバーブ / なし | 標準リバーブ / 新リバーブ |
コーラス | 標準コーラス / なし | 標準コーラス / サラウンドコーラス |
ディレイ | 標準ディレイ / なし | 標準ディレイ |
ローパスフィルタ | LPF12db / なし | LPF12db / LPF24db |
あまりお勧めはしませんが、EQ、インサーションエフェクト(EFX)、モジュレーション・エンベロープを切ると更に軽くなります。
モジュレーションホイール、ポルタメント、汎用コントローラ、NRPNビブラート、アタック・ディケイ・リリースタイムのチェックはいれておきましょう。
同音連打は現在バグがあるので、チェックいれないほうがいいです。
サラウンド・テキストメタイベントは今ひとつ謎なので、チェックは入れなくていいと思います。
設定→詳細設定→その他
演奏毎に音色破棄のチェックは出来るだけ入れましょう。
キャッシュの値は出来るだけ大きくとりましょう。
単位はByteで33554432(32M Byte)程度は取ったほうがいいかもしれません。
メモリーに余裕がある方はキャッシュサイズを0にすることをお勧めします。
設定→詳細設定→出力
サンプルレートは高いほど音質が上がりますが、負荷が高いようなら22050KHzに下げたほうがいいかもしれません。
サウンドカードによっては高いほうがいい場合があります。
次にGUIでは設定できない部分を設定しましょう。手順は2通りあります
cfgにコマンドラインオプションを書いて読み込ませる
ここでは後者のcfgにコマンドラインオプションを書いて読み込ませる方法について説明します。便利なので。
まず、TiMidityで読み込んでるコンフィグファイルを開きます。
開いたらdirとbank 0の間くらいに以下の内容を書き込みます。
#extension opt -V 2
#extension opt -EFresamp=L
#extension opt -q2.5/100
#extension opt -R 600
# ここまで
-V 2 でGS互換
-V 1.661で理想
-V 1で線型
-EFresamp=d | #なし(最も軽い) | |
-EFresamp=l | #線型(軽い) | |
-EFresamp=c | #Cスプライン(軽い) | |
-EFresamp=L | #ラグランジュ(ちょっと軽い) | |
-EFresamp=g | #ガウス(重い) | |
-EFresamp=n | #ニュートン(死ぬほど重い) |
2.5より小さい値にすれば負荷が軽くなりますが、低くしすぎると音とびが発生するかもしれません。
デフォルトは-q5.0/100です。
プチノイズ防止対策のため600に設定してます。
デフォルトは800です。
以上で、詳細設定は終わりです。
また、上のオプションで音質に不満があり、動作が余裕な方は下のオプションにしてみましょう。
デフォルト設定のままが一番音質がいいはずですが…。
#extension opt -V 2
#extension opt -EFresamp=n
#extension opt -Ncspline
#extension opt -q5.0/100
#extension opt -R 600
# ここまで
XXXXXX.SF2: No such file or directory
Can't open soundfont file XXXXXX.SF2
がログに表示されたのですが
- コンフィグのdirがちゃんとサウンドフォントが置いてあるパスになっているか
- スペースが含まれているファイルやパスはダブルクォテーションで囲ってあるか
1: SoundFont Name.sf2なら"SoundFont Name.sf2"のように書いているか。
2: スペースを含むパスをちゃんとダブルクォテーション("")で囲ってあるか。
dir C:\Program Files\Timidityと書いていた場合は
dir "C:\Program Files\Timidity"
という風に""で囲ってください
- ファイル名や、ディレクトリ名が間違ってないか
って表示されたんだけどコレは何?
この場合はbank 0のprogram 49が代理音として鳴ります。
※代理音として使用されるbankはtimidity上で変えられるみたいです。
bank sc55 0 #SC55
bank sc88 0 #SC88
bank sc88pro 0 #SC88PRO
bank xg 0 #XG
bank xgsfx64 0 #XG(SFX64)
こんな感じで書くことにより、MIDIの音源情報によって使用するbankを切り替えることが出来ます。
drumsetの場合は
drumset sc55drum 0 #SC55_DRUM
drumset sc88drum 0 #SC88_DRUM
drumset sc88prodrum 0 #SC88PRO_DRUM
drumset xgdrum 0 #XG_DRUM
のような感じで記述します。
おかしくなる音色の %font FONT_NAME XX XX ... の後に
modpitch=0
を加えれば直る可能性があります。
例:0 %font GS_Sound_Set 0 0 pan=0 amp=100 modpitch=0
音色にノイズが走ったり、破裂したような音が出る場合は、
fc=8000 q=25
みたいなのを加えれば直ると思います。
例:0 %font GS_Sound_Set 0 0 pan=0 amp=100 fc=8000 q=25
opt -q5.0/100
opt -U
opt -R500
opt --noise-shaping=4
opt --voice-lpf=1
opt --control-ratio=15
opt --volume-curve=2
opt -Ewpvsetoz
opt --chorus=n
opt --reverb=n
opt -A100,100
opt --module=4
opt --rtsyn-latency=0.0
opt -EFresamp=L