TiMidity++ 設定ファイル詳解

DESCRIPTION

timidity.cfgTiMidity++の設定ファイルであり、 音色データの置き場所、音色そのものなどについて設定することができます。 起動時、コマンドラインオプションを見る前にtimidity.cfgを探します。 このファイルが見つからない場合、また、ライブラリパスが コマンドラインオプション-Lによって変更されている場合は、 全てのオプションを見た後に、新しいライブラリパスに従ってデフォルトファイルを再探索します。 (ただし、-cオプションで別の設定ファイルが指定されている場合をのぞく) 複数のファイルが指定された場合には、後に読み込まれた設定によって前の設定が上書きされます。

FORMAT

基本命令

dir dir
TiMidity++のサーチパスdirを追加します。 コマンドラインオプション-Lと同義で、 dirにはアーカイブファイルを指定することもできます。
例:
dir /usr/local/lib/timidity/inst/foo.zip#
1 baz.pat
2 zoo.pat
0 bar.pat
dirの末尾に'#'を付けると dirをアーカイブファイル名であるとみなし、そのアーカイブ内のファイルをサーチ対象に加えます。 例では、foo.zipに含まれるbar.patbaz.patzoo.patが音色として使用されるわけです。
source file
現在位置にfileの内容を挿入します。
bank number
バンクnumberを選択します。 次のbankdrumsetが現れるまで、 音色のマッピングなどはこのバンクに対して行われることになります。
drumset number
ドラムセットnumberを選択します。 次のbankdrumsetが現れるまで、 音色のマッピングなどはこのドラムセットに対して行われることになります。
progbase number
音色番号の範囲をnumber〜number+127に設定します。 progbase 1とした場合、 音色番号は1〜128となります。
map MapID1 from-drumset from-keynote to-drumset to-keynote
GS/XG各マップのドラム音色として既存のドラム音色を割り当てます。 MapID1にはsc55drum sc88drum sc88prodrum xgdrum xgsfx126が指定できます。
map MapID2 from-bank from-prog to-bank to-prog
GS/XG各マップのトーン音色として既存のトーン音色を割り当てます。 MapID2にはsc55 sc88 sc88pro xg xgsfx64が指定できます。
number file [options]
現在のバンク(もしくはドラムセット)のnumber番に GUSパッチfileを割り当てます。また、以下のオプションが使用可能となっています。
amp=amplification
音量をamplification%に増幅します。 指定しなければ自動で計算されます。
pan=panning
標準のパンをpanningに設定します。 panningleftrightcenter、 および-100〜100の整数で指定でき、 -100で左端、100で右端となります。 指定しなければ、パッチファイルの標準値が利用されます。 MIDIファイルでパンが制御されると、この値は無視されることになりますのでご注意下さい。
note=note
再生時に鳴らすノートをnoteに固定します。 note0とすると、 最初にノート・オンイベントが発生した時点でのノートを使用します。 パーカッション音色でnoteが指定されない場合、 パッチファイルの標準値が利用されます。
keep={loop|env}
通常、パーカッション音色のループとエンベロープは破棄され、 一般の音色でも不正なエンベロープは取り除かれます。 keep=を使うと、こういった ループやエンベロープを強制的に維持することができます。
strip={loop|env|tail}
パッチファイルのループやエンベロープの情報を強制的に破棄することができます。 またstrip=tailを指定すると、 ループの後が除去されます。これは主にクリック・ノイズ対策に利用されるものです。
tune=[+-]number
パッチファイルの音程を調整します。例えば、"0 piano.pat tune=+1"とすれば1半音上がります。 [+-]numberには小数が利用可能なので、"0 piano.pat tune=+0.2"などの微調整も可能です。
rate=attack:decay:sustain:release1:release2:release3
パッチファイルのADSR変化速度を設定するオプションです。0〜255の値が指定できます。 サステインレートだけを補正したい場合など、"6 GUS/hrpschrd.pat rate=::60"のような狙い撃ち設定も可能です。 また、アタックタイムを速くしたいだけであれば、"6 GUS/hrpschrd.pat rate=255"という書き方ができます。
offset=attack:decay:sustain:release1:release2:release3
パッチファイルのADSRオフセットを設定するオプションです。0〜255の値が指定できます。 書式についてはほぼrate=と同様です。
tremolo=sweep_increment:phase_increment:depth
トレモロを設定するオプションです。0〜255の値が指定できます。 rate=同様狙い撃ち設定や不要部分の省略が可能です。 sweep_incrementは発音してからトレモロが掛かり始めるまでの時間、 phase_incrementは振幅 / 周波数が変化する速さ、 depthは振幅 / 周波数が変化する深さです。
vibrato=sweep_increment:phase_increment:depth
ビブラートを設定するオプションです。0〜255の値が指定できます。 書式についてはほぼtremolo=と同様です。

サウンドフォント拡張命令

number %font file bank preset [keynote] [options]
現在のバンク(もしくはドラムセット)のプログラム番号numberに サウンドフォントfileからサンプルを割り当てます。 bankは使いたいサンプルのバンク番号、 presetはプログラム番号です。 keynoteを指定すると、再生時のノートをkeynoteに固定します。 また、以下のオプションが使用可能となっています。
amp=amplification
音量をamplification%に増幅します。省略時は自動計算されます。 (省略時、amp=100となるわけではありません)
pan=panning
標準のパンをpanningに設定します。詳細はGUSパッチと同様です。
tune=[+-]number
パッチファイルの音程を調整します。詳細はGUSパッチと同様です。
rate=attack:decay:sustain:release1:release2:release3
パッチファイルのADSR変化速度を設定するオプションです。詳細はGUSパッチと同様です。
offset=attack:decay:sustain:release1:release2:release3
パッチファイルのADSRオフセットを設定するオプションです。詳細はGUSパッチと同様です。
tremolo=sweep_increment:phase_increment:depth
トレモロを設定するオプションです。詳細はGUSパッチと同様です。
vibrato=sweep_increment:phase_increment:depth
ビブラートを設定するオプションです。詳細はGUSパッチと同様です。
number %font file 128 preset keynote [options]
現在のバンク(もしくはドラムセット)のプログラム番号numberに サウンドフォントfileからドラムサンプルを割り当てます。 presetは使いたいドラムサンプルのドラムセット番号、 keynoteはキー番号です。 また、以下のオプションが使用可能となっています。
amp=amplification
音量をamplification%に増幅します。省略時は自動計算されます。 (省略時、amp=100となるわけではありません)
pan=panning
標準のパンをpanningに設定します。詳細はGUSパッチと同様です。
tune=[+-]number
パッチファイルの音程を調整します。詳細はGUSパッチと同様です。
rate=attack:decay:sustain:release1:release2:release3
パッチファイルのADSR変化速度を設定するオプションです。詳細はGUSパッチと同様です。
offset=attack:decay:sustain:release1:release2:release3
パッチファイルのADSRオフセットを設定するオプションです。詳細はGUSパッチと同様です。
tremolo=sweep_increment:phase_increment:depth
トレモロを設定するオプションです。詳細はGUSパッチと同様です。
vibrato=sweep_increment:phase_increment:depth
ビブラートを設定するオプションです。詳細はGUSパッチと同様です。
soundfont file [order=number] [options]
サウンドフォントfile全体を音色として読み込みます。 orderパラメータは、音色データを探す順番を設定します。 order=0のときは、まずサウンドフォントを読み込んで、 その後に足りないサンプルに付いてはGUSパッチから探します。 order=1のときは、GUSパッチを読んだ後にサウンドフォントを読み込みます。 また、以下のオプションが使用可能となっています。
amp=amplification
音量をamplification%に増幅します。 指定しなければ自動的に決定されます。
cutoff=digit
ローパスフィルタの設定を行います。 digit0以外の整数ならば有効となります。
reso=digit
レゾナンスの設定を行います。 digit0以外の整数ならば有効となります。
font exclude bank [preset [keynote]]
サンプルの検索についての動作を設定します。 サウンドフォント内のあるサンプルを使いたくないときに、それを指定すれば除去されます。 bankは、使いたくないサンプルのバンク番号です。 presetはそのサンプルのプログラム番号です。 ドラムサンプルについては、128をバンク番号に指定した上で ドラムセットをpresetに、 任意のドラムサンプルのキー番号をkeynoteに指定してください。 presetおよびkeynoteは省略可能です。
font order number bank [preset [keynote]]
任意のサンプル(あるいはバンク)について、検索順序を変えることができます。 最初のパラメータは変更したいオーダー番号(0または1)です。 それ以降の数値列は、font excludeと同様です。

TiMidity++ 拡張命令

#extension altassign prog1 prog2 ...
現在のドラムセットについて、オルタネートアサインを設定します。
例:
drumset 0
#extension altassign 42 44 46
と書くと、ドラムセット042/44/46が同時に鳴らなくなります。
概念としてはMIDI音源のアサイングループと同じようなものといえるでしょう。
ドラムセット0で定義されたオルタネートアサインはデフォルトで使用されます。
また、以下のように記述することも可能です。
#extension altassign clear (すべてのアサイングループを破棄)
#extension altassign - (note 0からnote 127までをアサイングループに)
#extension altassign -n (note 0からnote nまでをアサイングループに)
#extension altassign n- (note nからnote 127までをアサイングループに)
#extension altassign m-n (note mからnote nまでをアサイングループに)
#extension comm prog comment
プログラム番号progにコメントcommentを指定します。 ここで設定したcomment-int-iTt オプションで起動した時に、インジケータラインに表示されます。
#extension timeout prog msec
プログラム番号progmsecミリ秒以上 サステイン状態が続いた場合、音を止めるようにします。
#extension copydrumset drumset
ドラムセット番号drumsetのすべてを現在のドラムセットにコピーします。
#extension copybank bank
バンク番号bankのすべてを現在のバンクにコピーします。
#extension HTTPproxy hostname:port
HTTPプロクシを設定します。プロクシのホスト名をhostnameに、 ポート番号をportに指定します。
#extension FTPproxy hostname:port
FTPプロクシを設定します。プロクシのホスト名をhostnameに、 ポート番号をportに指定します。
#extension mailaddr mail-address
ユーザのメールアドレスをmail-addressに指定します。 このメールアドレスは、FTP接続をプロクシを介さずにダイレクトに行う場合に使用されます。
#extension opt [-]{option} [optarg]
起動時のコマンドラインオプションを指定します。
#extension undef prog
現在のバンクのプログラム番号progを未定義にします。