TiMidity++ 設定ファイル詳解

INDEX

DESCRIPTION
VARIABLE
FORMAT
TiMidity++ 拡張構文
基本命令
サウンドフォント拡張命令 (TiMidity++ 拡張)
サンプリング拡張命令 (TiMidity++ 拡張)
内蔵シンセ拡張命令 (TiMidity++ 拡張)
TiMidity++ 拡張命令
DATA
TiMidity++ 資料
COPYRIGHT

DESCRIPTION

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

VARIABLE

TiMidity++ 拡張変数

変数
ドル記号 `$' に続けて英数字やアンダースコア `_' が続いている場合,その文字列は変数と見なされ,設定ファイルを処理する際に別の文字列に置き換えられます。この変数名は,後続の文字と区別するために,中括弧付きで表記することもできます。
例:
$variable
${variable} # $variable と同義

変数を新たに定義する命令は,今のところ用意されていません。未定義の変数は,空文字に置き換えられます。
規定の変数として定義されている変数は,次の 1 つだけです。
$basedir
設定ファイルが存在するディレクトリを表します。主にパスを指定する命令で,設定ファイルからの相対パスを指定する目的で使います。
初回読み込み、sourcetrysourceで変数は更新され、文字列の終端は必ずパス区切りを含まない状態で保持されます。
$basedir に空白が含まれるかも知れない場合は,"" で括る必要があります。
例:
/usr/local/share/timidity/timidity.cfg 内で
dir $basedir/inst/ # dir /usr/local/share/timidity/inst/ と解釈される
例:
C:\Program Files\TiMidity\timidity.cfg 内で
dir "$basedir/inst/" # dir "C:\Program Files\TiMidity/inst/" と解釈される

FORMAT

TiMidity++ 拡張構文

#extension
行頭が"#extension"で始まる場合に限り、これを読み飛ばして構文解析を続けます。 行頭にスペースやタブが含まれると、ただのコメント行として認識されます。
例:
#extension trysource timidityplusplus.cfg
と書くと、TiMidity++はこの行を"trysource timidityplusplus.cfg"と解釈します。
これに対し、古いTiMidity及び互換ソフトウェアは行頭の'#'を見てコメント行と認識し、読み飛ばします。
古いTiMidityとTiMidity++で共通の設定ファイルを使うために用意された構文です。

基本命令

dir 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が音色として使用されるわけです。
サポートするアーカイブはZIP(deflate,shrunk,reduced1-4,imploded,store), LZH, TAR, TAR.GZ, TGZ(tar+gzip)形式です。

また、dirを複数記述した場合、最後に追加されたパスから優先されます。
例:
dir /usr/local/lib/timidity/inst/xg/
dir /usr/local/lib/timidity/inst/gs/
soundfont foo.sf2
例では、.../xg/.../gs/の順に追加して、foo.sf2.../gs/.../xg/の順からサーチします。

複数指定でまとめてサーチ対象に加える事も可能です。
例:
dir /usr/local/lib/timidity/inst/gs/ /usr/local/lib/timidity/inst/xg/
例では、.../gs/.../xg/の順でまとめてサーチ対象に加えます。

dirに空白が含まれる場合は,"" で括る必要があります。
例:
dir "C:\Program Files\TiMidity\inst\"
source file [file ...]
現在位置にfileの内容を挿入します。 sourceのネストは50段まで可能です。 TiMidity++ 拡張命令trysourceも用意されています。 fileの存在場所のヒントにdirのサーチ対象を利用します。
例:
dir /usr/local/lib/timidity/
source bar.cfg
例では、bar.cfg/usr/local/lib/timidity/から探されます。

例:
source foo.cfg bar.cfg baz.cfg qux.cfg
例では、foo.cfg, bar.cfg, baz.cfg, qux.cfgの順でまとめて挿入します。

fileに空白が含まれる場合は,"" で括る必要があります。
例:
source "foo bar.cfg"
bank [map] number
バンクnumberを選択します。 次のbankdrumsetが現れるまで、 音色のマッピングなどはこのバンクに対して行われることになります。 トーン系マップmapは省略可能で、指定することで特定の音源モードのみ対象にできます。
drumset [map] number
ドラムセットnumberを選択します。 次のbankdrumsetが現れるまで、 音色のマッピングなどはこのドラムセットに対して行われることになります。 ドラム系マップmapは省略可能で、指定することで特定の音源モードのみ対象にできます。
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 gm2drum xgsfx126などドラム系マップが指定できます。
map MapID2 from-bank from-prog to-bank to-prog
GS/XG等の各マップのトーン音色として既存のトーン音色を現在のバンクに割り当てます。 MapID2にはsc55 sc88 sc88pro xg gm2 xgsfx64などトーン系マップが指定できます。
number file [options]
現在のバンク(もしくはドラムセット)のnumber番にGUSパッチfileを割り当てます。 fileの存在場所のヒントにdirのサーチ対象を利用します。 また、以下のオプションが使用可能となっています。
amp=amplification
音量をamplification%に増幅します。 0から800まで指定可能です。 省略時は自動計算(ノーマライズ)されます。(100指定と同義ではありません。この挙動はGUSパッチ限定です)
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=と同様です。
sclnote=note[,...]
インスツルメントのスケールチューニングの基準とするノートを設定するオプションです。 例えば,"sclnote=60" とすれば,真ん中のドを中心にスケールチューニングが行われます。 二つ目以降の引数は,音域別に複数のサンプルデータが含まれている場合に,それぞれ別の値を指定できます。
scltune=tune[,...]
インスツルメントのスケールチューニングの度合いを cent 単位で設定するオプションです。 例えば,"scltune=50" とすれば,ノート間隔が 50 cent になります。 二つ目以降の引数は,音域別に複数のサンプルデータが含まれている場合に,それぞれ別の値を指定できます。
comm=comment
コメントを設定するオプションです。commと同じ効果です。 インターフェースによってはインスツルメントの音色名として使用されます。
modrate=attack:decay:sustain:release1:release2:release3[,...]
modoffset=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープの変化の仕方を設定するオプションです。 設定方法や値は,基本的にボリューム・エンベロープと同じです。 一部のSoundFontを除けば,このオプションだけを指定しても何も起こりません。
envkeyf=attack:decay:sustain:release1:release2:release3[,...]
ボリューム・エンベロープ・キーフォローを設定するオプションです。 note=60を基準として,ノートに従いエンベロープ・タイムを変化させます。 単位は+-cent/keyです。 例えばenvkeyf=100と指定すると,1オクターブ上がるたびにアタック・タイムが2倍になります。 rate=同様,複数のサンプルに対する設定が可能です。 一部のSoundFontでは,decayとsustainのパラメータが予め設定されている場合があります。
envvelf=attack:decay:sustain:release1:release2:release3[,...]
ボリューム・エンベロープ・ベロシティフォローを設定するオプションです。 velocity=64を基準として,ベロシティに従いエンベロープ・タイムを変化させます。 単位は+-cent/velocityです。 例えばenvvelf=100と指定すると,velocity=127でアタック・タイムが約38倍になります。 rate=同様,複数のサンプルに対する設定が可能です。 このオプションは,近い将来仕様変更される可能性があります。
modkeyf=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープ・キーフォローを設定するオプションです。 note=60を基準として,ノートに従いエンベロープ・タイムを変化させます。 単位は+-cent/keyです。 例えばmodkeyf=100と指定すると,1オクターブ上がるたびにアタック・タイムが2倍になります。 rate=同様,複数のサンプルに対する設定が可能です。 一部のSoundFontでは,decayとsustainのパラメータが予め設定されている場合があります。
modvelf=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープ・ベロシティフォローを設定するオプションです。 velocity=64を基準として,ベロシティに従いエンベロープ・タイムを変化させます。 単位は+-cent/velocityです。 例えばmodvelf=100と指定すると,velocity=127でアタック・タイムが約38倍になります。 rate=同様,複数のサンプルに対する設定が可能です。 このオプションは,近い将来仕様変更される可能性があります。
trempitch=num[,...]
トレモロに従って,ピッチを変化させる深度を設定するオプションです。 効果そのものはビブラートと一緒ですが,別系統で動作させたいときに利用します。 単位は+-centです。 rate=と同様,複数のサンプルに対する設定が可能です。
tremfc=num[,...]
トレモロに従って,フィルタ・カットオフ周波数を変化させる深度を設定するオプションです。 いわゆる「グロウル効果」を表現できます。 単位その他はtrempitch=と同様です。
modpitch=num[,...]
モジュレーション・エンベロープに従って,ピッチを変化させる深度を設定するオプションです。 アタック時だけ一時的に音程が上がるなどの表現が可能です。 単位その他はtrempitch=と同様です。
modfc=num[,...]
モジュレーション・エンベロープに従って,フィルタ・カットオフ周波数を変化させる深度を設定するオプションです。 単位その他はtrempitch=と同様です。
fc=num[,...]
フィルタ・カットオフ周波数の基準値を設定するオプションです。 単位はHzです。 rate=と同様,複数のサンプルに対する設定が可能です。
q=num[,...]
フィルターのQ(レゾナンス)を設定するオプションです。 単位はcBです。 rate=と同様,複数のサンプルに対する設定が可能です。
fckeyf=num
フィルタ・キーフォローを設定するオプションです。 note=60を基準として,ノートに従いカットオフ周波数を変化させます。 単位は+-cent/keyで,例えば100を指定すれば,音程と同じだけ変化します。
fcvelf=num
フィルタ・ベロシティフォローを設定するオプションです。 velocity=127を基準として,ベロシティに従いカットオフ周波数を変化させます。 単位は+-centで,SoundFontでは-2400が固有値として設定されています。
qvelf=num
レゾナンス・ベロシティフォローを設定するオプションです。 velocity=0を基準として,ベロシティに従いレゾナンスを変化させます。 単位は+-cBです。
lpf=num
ローパス・フィルターを設定するオプションです。
lpf=-1の時、-EFvlpf=numの設定を流用します。
lpf=0の時、LPFを無効化します。
lpf=1の時、Chamberlin resonant LPF (12dB/oct)を適用します。
lpf=2の時、Moog resonant lowpass VCF (24dB/oct)を適用します。
lpf=3の時、ButterworthFilter resonant lowpass (butterworth)を適用します。
lpf=4の時、Resonant IIR lowpass VCF (12dB/oct)-2を適用します。
lpf=5の時、amSynth resonant lowpass VCF (24dB/oct)-2を適用します。
lpf=6の時、1 pole 6db/oct resonant lowpass VCF (6dB/oct)を適用します。
lpf=7の時、resonant 3 pole lowpass VCF (18dB/oct)を適用します。
lpf=8の時、two first order lowpass VCFを適用します。
lpf=9の時、HPF ButterworthFilter VCF (butterworth)を適用します。
lpf=10の時、BPF ButterworthFilter VCF (butterworth)を適用します。
省略時は-1を指定していると解釈します。
-EFvlpfの初期値はバイナリコンパイル時に決定されています。
hpf=filter:freq:reso
ハイパス・フィルターを設定するオプションです。 filterはフィルタタイプ、 freqは初期カットオフ周波数、 resoは初期レゾナンスです。
hpf=0の時、OFFと解釈します。
hpf=1の時、HPF ButterworthFilter VCF (butterworth)を適用します。
vfx=type[:param1[:param2[:...]]]
ボイスエフェクトを設定するオプションです。
perc={0|1}
パーカッションを設定するオプションです。 perc=1を指定すれば,ノートオフでリリースしないようになります。
sample_pan=panning
サンプルパンを設定するオプションです。

サウンドフォント拡張命令 (TiMidity++ 拡張)

number {%font|%sf2} file bank preset [keynote] [options]
現在のバンク(もしくはドラムセット)のプログラム番号numberにサウンドフォントfile (SBK, SF2) からサンプルを割り当てます。 bankは使いたいサンプルのバンク番号、 presetはプログラム番号です。 keynoteを指定すると、再生時のノートをkeynoteに固定します。 fileの存在場所のヒントにdirのサーチ対象を利用します。
例:
0 %font piano.sf2 0 0 # piano.sf2に格納された000:000をプログラム番号0に割り当て
29 %font gsset.sf2 1 29 # gsset.sf2に格納された001:029をプログラム番号29に割り当て
56 %font tpset.sf2 0 7 # tpset.sf2に格納された000:007をプログラム番号56に割り当て
また、以下のオプションが使用可能となっています。
amp=amplification
音量をamplification%に増幅します。 0から800まで指定可能です。 省略時は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パッチと同様です。
sclnote=note[,...]
インスツルメントのスケールチューニングの基準とするノートを設定するオプションです。詳細はGUSパッチと同様です。
scltune=tune[,...]
インスツルメントのスケールチューニングの度合いを cent 単位で設定するオプションです。詳細はGUSパッチと同様です。
comm=comment
コメントを設定するオプションです。詳細はGUSパッチと同様です。
modrate=attack:decay:sustain:release1:release2:release3[,...]
modoffset=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープの変化の仕方を設定するオプションです。詳細はGUSパッチと同様です。
envkeyf=attack:decay:sustain:release1:release2:release3[,...]
ボリューム・エンベロープ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
envvelf=attack:decay:sustain:release1:release2:release3[,...]
ボリューム・エンベロープ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
modkeyf=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
modvelf=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
trempitch=num[,...]
トレモロに従って,ピッチを変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
tremfc=num[,...]
トレモロに従って,フィルタ・カットオフ周波数を変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
modpitch=num[,...]
モジュレーション・エンベロープに従って,ピッチを変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
modfc=num[,...]
モジュレーション・エンベロープに従って,フィルタ・カットオフ周波数を変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
fc=num[,...]
フィルタ・カットオフ周波数の基準値を設定するオプションです。詳細はGUSパッチと同様です。
q=num[,...]
フィルターのQ(レゾナンス)を設定するオプションです。詳細はGUSパッチと同様です。
fckeyf=num
フィルタ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
fcvelf=num
フィルタ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
qvelf=num
レゾナンス・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
lpf=num
ローパス・フィルタを設定するオプションです。詳細はGUSパッチと同様です。
hpf=filter:freq:reso
ハイパス・フィルターを設定するオプションです。詳細はGUSパッチと同様です。
vfx=type[:param1[:param2[:...]]]
ボイスエフェクトを設定するオプションです。詳細はGUSパッチと同様です。
perc={0|1}
パーカッションを設定するオプションです。詳細はGUSパッチと同様です。
sample_pan=panning
サンプルパンを設定するオプションです。詳細はGUSパッチと同様です。
number {%font|%sf2} file 128 preset keynote [options]
現在のバンク(もしくはドラムセット)のプログラム番号numberにサウンドフォントfile (SBK, SF2) からドラムサンプルを割り当てます。 presetは使いたいドラムサンプルのドラムセット番号、 keynoteはキー番号です。 fileの存在場所のヒントにdirのサーチ対象を利用します。
例:
38 %font gmdrum.sf2 128 0 38 # gmdrum.sf2に格納された128:000の038をプログラム番号38に割り当て
57 %font gsdrum.sf2 128 16 49 # gsdrum.sf2に格納された128:016の049をプログラム番号57に割り当て
70 %font gsdrum.sf2 128 25 70 # gsdrum.sf2に格納された128:025の070をプログラム番号70に割り当て
また、以下のオプションが使用可能となっています。
amp=amplification
音量をamplification%に増幅します。 0から800まで指定可能です。 省略時は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パッチと同様です。
sclnote=note[,...]
インスツルメントのスケールチューニングの基準とするノートを設定するオプションです。詳細はGUSパッチと同様です。
scltune=tune[,...]
インスツルメントのスケールチューニングの度合いを cent 単位で設定するオプションです。詳細はGUSパッチと同様です。
comm=comment
コメントを設定するオプションです。詳細はGUSパッチと同様です。
modrate=attack:decay:sustain:release1:release2:release3[,...]
modoffset=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープの変化の仕方を設定するオプションです。詳細はGUSパッチと同様です。
envkeyf=attack:decay:sustain:release1:release2:release3[,...]
ボリューム・エンベロープ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
envvelf=attack:decay:sustain:release1:release2:release3[,...]
ボリューム・エンベロープ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
modkeyf=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
modvelf=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
trempitch=num[,...]
トレモロに従って,ピッチを変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
tremfc=num[,...]
トレモロに従って,フィルタ・カットオフ周波数を変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
modpitch=num[,...]
モジュレーション・エンベロープに従って,ピッチを変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
modfc=num[,...]
モジュレーション・エンベロープに従って,フィルタ・カットオフ周波数を変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
fc=num[,...]
フィルタ・カットオフ周波数の基準値を設定するオプションです。詳細はGUSパッチと同様です。
q=num[,...]
フィルターのQ(レゾナンス)を設定するオプションです。詳細はGUSパッチと同様です。
fckeyf=num
フィルタ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
fcvelf=num
フィルタ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
qvelf=num
レゾナンス・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
lpf=num
ローパス・フィルタを設定するオプションです。詳細はGUSパッチと同様です。
hpf=filter:freq:reso
ハイパス・フィルターを設定するオプションです。詳細はGUSパッチと同様です。
vfx=type[:param1[:param2[:...]]]
ボイスエフェクトを設定するオプションです。詳細はGUSパッチと同様です。
perc={0|1}
パーカッションを設定するオプションです。詳細はGUSパッチと同様です。
sample_pan=panning
サンプルパンを設定するオプションです。詳細はGUSパッチと同様です。
soundfont file [order=number] [options]
サウンドフォントfile全体を音色として読み込みます。 orderパラメータは、音色データを探す順番を設定します。 order=0のときは、まずサウンドフォントを読み込んで、 その後に足りないサンプルに付いてはGUSパッチから探します。 order=1のときは、GUSパッチを読んだ後にサウンドフォントを読み込みます。 fileの存在場所のヒントにdirのサーチ対象を利用します。 また、以下のオプションが使用可能となっています。
amp=amplification
音量をamplification%に増幅します。 省略時は100指定と同義です。
cutoff=digit
ローパスフィルタの設定を行います。 digit0以外の整数ならば有効となります。初期状態は有効です。
reso=digit
レゾナンスの設定を行います。 digit0以外の整数ならば有効となります。初期状態は有効です。
soundfont file remove
それまで構築した全バンクから、指定されたサウンドフォントを除去します。
font exclude bank [preset [keynote]]
サンプルの検索についての動作を設定します。 サウンドフォント内のあるサンプルを使いたくないときに、それを指定すれば除去されます。 bankは、使いたくないサンプルのバンク番号です。 presetはそのサンプルのプログラム番号です。 ドラムサンプルについては、128をバンク番号に指定した上で ドラムセットをpresetに、 任意のドラムサンプルのキー番号をkeynoteに指定してください。 presetおよびkeynoteは省略可能です。
font order number bank [preset [keynote]]
任意のサンプル(あるいはバンク)について、検索順序を変えることができます。 最初のパラメータは変更したいオーダー番号(0または1)です。 それ以降の数値列は、font excludeと同様です。

サンプリング拡張命令 (TiMidity++ 拡張)

number %sample file [options]
現在のバンク(もしくはドラムセット)のプログラム番号numberにサンプルfile (WAV, AIFF) からサンプルを割り当てます。 fileの存在場所のヒントにdirのサーチ対象を利用します。
例:
0 %sample piano_c4.wav # piano_c4.wavをプログラム番号0に割り当て
74 %sample recorder_a4.wav note=69 # recorder_a4.wavをノート69(音階A4)基準でプログラム番号74に割り当て
また、以下のオプションが使用可能となっています。
amp=amplification
音量をamplification%に増幅します。 0から800まで指定可能です。 省略時は100指定と同義です。
pan=panning
標準のパンをpanningに設定します。詳細はGUSパッチと同様です。
note=note
再生時に鳴らすノートをnoteに固定します。 note69とすると、 真ん中のラ(音階A4)を中心にチューニングが行われます。 省略時は60指定(音階C4)と同義です。
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パッチと同様です。
sclnote=note[,...]
インスツルメントのスケールチューニングの基準とするノートを設定するオプションです。詳細はGUSパッチと同様です。
scltune=tune[,...]
インスツルメントのスケールチューニングの度合いを cent 単位で設定するオプションです。詳細はGUSパッチと同様です。
comm=comment
コメントを設定するオプションです。詳細はGUSパッチと同様です。
modrate=attack:decay:sustain:release1:release2:release3[,...]
modoffset=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープの変化の仕方を設定するオプションです。詳細はGUSパッチと同様です。
envkeyf=attack:decay:sustain:release1:release2:release3[,...]
ボリューム・エンベロープ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
envvelf=attack:decay:sustain:release1:release2:release3[,...]
ボリューム・エンベロープ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
modkeyf=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
modvelf=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
trempitch=num[,...]
トレモロに従って,ピッチを変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
tremfc=num[,...]
トレモロに従って,フィルタ・カットオフ周波数を変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
modpitch=num[,...]
モジュレーション・エンベロープに従って,ピッチを変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
modfc=num[,...]
モジュレーション・エンベロープに従って,フィルタ・カットオフ周波数を変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
fc=num[,...]
フィルタ・カットオフ周波数の基準値を設定するオプションです。詳細はGUSパッチと同様です。
q=num[,...]
フィルターのQ(レゾナンス)を設定するオプションです。詳細はGUSパッチと同様です。
fckeyf=num
フィルタ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
fcvelf=num
フィルタ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
qvelf=num
レゾナンス・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
lpf=num
ローパス・フィルタを設定するオプションです。詳細はGUSパッチと同様です。
hpf=filter:freq:reso
ハイパス・フィルターを設定するオプションです。詳細はGUSパッチと同様です。
vfx=type[:param1[:param2[:...]]]
ボイスエフェクトを設定するオプションです。詳細はGUSパッチと同様です。
perc={0|1}
パーカッションを設定するオプションです。詳細はGUSパッチと同様です。
sample_pan=panning
サンプルパンを設定するオプションです。詳細はGUSパッチと同様です。

内蔵シンセ拡張命令 (TiMidity++ 拡張)

number %mms mms_preset_number [options]
amp=amplification
音量をamplification%に増幅します。 0から800まで指定可能です。 省略時は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パッチと同様です。
sclnote=note[,...]
インスツルメントのスケールチューニングの基準とするノートを設定するオプションです。詳細はGUSパッチと同様です。
scltune=tune[,...]
インスツルメントのスケールチューニングの度合いを cent 単位で設定するオプションです。詳細はGUSパッチと同様です。
comm=comment
コメントを設定するオプションです。詳細はGUSパッチと同様です。
modrate=attack:decay:sustain:release1:release2:release3[,...]
modoffset=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープの変化の仕方を設定するオプションです。詳細はGUSパッチと同様です。
envkeyf=attack:decay:sustain:release1:release2:release3[,...]
ボリューム・エンベロープ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
envvelf=attack:decay:sustain:release1:release2:release3[,...]
ボリューム・エンベロープ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
modkeyf=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
modvelf=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
trempitch=num[,...]
トレモロに従って,ピッチを変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
tremfc=num[,...]
トレモロに従って,フィルタ・カットオフ周波数を変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
modpitch=num[,...]
モジュレーション・エンベロープに従って,ピッチを変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
modfc=num[,...]
モジュレーション・エンベロープに従って,フィルタ・カットオフ周波数を変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
fc=num[,...]
フィルタ・カットオフ周波数の基準値を設定するオプションです。詳細はGUSパッチと同様です。
q=num[,...]
フィルターのQ(レゾナンス)を設定するオプションです。詳細はGUSパッチと同様です。
fckeyf=num
フィルタ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
fcvelf=num
フィルタ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
qvelf=num
レゾナンス・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
lpf=num
ローパス・フィルタを設定するオプションです。詳細はGUSパッチと同様です。
hpf=filter:freq:reso
ハイパス・フィルターを設定するオプションです。詳細はGUSパッチと同様です。
vfx=type[:param1[:param2[:...]]]
ボイスエフェクトを設定するオプションです。詳細はGUSパッチと同様です。
perc={0|1}
パーカッションを設定するオプションです。詳細はGUSパッチと同様です。
sample_pan=panning
サンプルパンを設定するオプションです。詳細はGUSパッチと同様です。
number %scc scc_preset_number [options]
amp=amplification
音量をamplification%に増幅します。 0から800まで指定可能です。 省略時は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パッチと同様です。
sclnote=note[,...]
インスツルメントのスケールチューニングの基準とするノートを設定するオプションです。詳細はGUSパッチと同様です。
scltune=tune[,...]
インスツルメントのスケールチューニングの度合いを cent 単位で設定するオプションです。詳細はGUSパッチと同様です。
comm=comment
コメントを設定するオプションです。詳細はGUSパッチと同様です。
modrate=attack:decay:sustain:release1:release2:release3[,...]
modoffset=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープの変化の仕方を設定するオプションです。詳細はGUSパッチと同様です。
envkeyf=attack:decay:sustain:release1:release2:release3[,...]
ボリューム・エンベロープ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
envvelf=attack:decay:sustain:release1:release2:release3[,...]
ボリューム・エンベロープ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
modkeyf=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
modvelf=attack:decay:sustain:release1:release2:release3[,...]
モジュレーション・エンベロープ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
trempitch=num[,...]
トレモロに従って,ピッチを変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
tremfc=num[,...]
トレモロに従って,フィルタ・カットオフ周波数を変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
modpitch=num[,...]
モジュレーション・エンベロープに従って,ピッチを変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
modfc=num[,...]
モジュレーション・エンベロープに従って,フィルタ・カットオフ周波数を変化させる深度を設定するオプションです。詳細はGUSパッチと同様です。
fc=num[,...]
フィルタ・カットオフ周波数の基準値を設定するオプションです。詳細はGUSパッチと同様です。
q=num[,...]
フィルターのQ(レゾナンス)を設定するオプションです。詳細はGUSパッチと同様です。
fckeyf=num
フィルタ・キーフォローを設定するオプションです。詳細はGUSパッチと同様です。
fcvelf=num
フィルタ・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
qvelf=num
レゾナンス・ベロシティフォローを設定するオプションです。詳細はGUSパッチと同様です。
lpf=num
ローパス・フィルタを設定するオプションです。詳細はGUSパッチと同様です。
hpf=filter:freq:reso
ハイパス・フィルターを設定するオプションです。詳細はGUSパッチと同様です。
vfx=type[:param1[:param2[:...]]]
ボイスエフェクトを設定するオプションです。詳細はGUSパッチと同様です。
perc={0|1}
パーカッションを設定するオプションです。詳細はGUSパッチと同様です。
sample_pan=panning
サンプルパンを設定するオプションです。詳細はGUSパッチと同様です。

TiMidity++ 拡張命令

trysource file [file ...]
基本命令のsourceと同等ですが、最終的にファイルが見つからない場合でもエラーを返しません。
default file
他のどこにも設定がないような音に出合った場合,GUSパッチfileが代理として発音されます。
altassign prog1 prog2 ...
現在のドラムセットについて、オルタネートアサインを設定します。
例:
drumset 0
altassign 42 44 46
と書くと、ドラムセット042/44/46が同時に鳴らなくなります。
概念としてはMIDI音源のアサイングループと同じようなものといえるでしょう。
ドラムセット0で定義されたオルタネートアサインはデフォルトで使用されます。
また、以下のように記述することも可能です。
altassign clear (すべてのアサイングループを破棄)
altassign - (note 0からnote 127までをアサイングループに)
altassign -n (note 0からnote nまでをアサイングループに)
altassign n- (note nからnote 127までをアサイングループに)
altassign m-n (note mからnote nまでをアサイングループに)
comm prog comment
プログラム番号progにコメントcommentを指定します。 ここで設定したcomment-int-iTt オプションで起動した時に、インジケータラインに表示されます。
例:
bank 0
comm 1 Bright,Piano
と書くと、バンク0トーン1のコメントに"Bright Piano"を設定したことになります。
そのままでは空白を記述できないため、文中のカンマが空白に置換されます。
例:
drumset 2
comm 0 Standard,Kit,3
と書くと、ドラムセット2のコメントに"Standard Kit 3"を設定したことになります。
ドラムセットはprog0のみ有効です。
そのままでは空白を記述できないため、文中のカンマが空白に置換されます。
timeout prog msec
プログラム番号progmsecミリ秒以上 サステイン状態が続いた場合、音を止めるようにします。
copydrumset drumset
ドラムセット番号drumsetのすべてを現在のドラムセットにコピーします。
例:
drumset 1
copydrumset 0
と書くと、その時点のドラムセット0の内容をドラムセット1へコピーしたことになります。
copybank bank
バンク番号bankのすべてを現在のバンクにコピーします。
例:
bank 1
copybank 0
と書くと、その時点のバンク0の内容をバンク1へコピーしたことになります。
copymap to-MapID from-MapID
マップfrom-MapIDのすべてをマップto-MapIDにコピーします。
例:
copymap sc88 sc55
と書くと、その時点のマップsc55の内容をマップsc88へコピーしたことになります。
HTTPproxy hostname:port
HTTPプロクシを設定します。プロクシのホスト名をhostnameに、 ポート番号をportに指定します。
FTPproxy hostname:port
FTPプロクシを設定します。プロクシのホスト名をhostnameに、 ポート番号をportに指定します。
mailaddr mail-address
ユーザのメールアドレスをmail-addressに指定します。 このメールアドレスは、FTP接続をプロクシを介さずにダイレクトに行う場合に使用されます。
opt [-]{option} [optarg]
起動時のコマンドラインオプションを指定します。
例:
opt -a
opt -V 2.0
opt --anti-alias
opt --volume-curve=2.0
undef prog
現在のバンクのプログラム番号progを未定義にします。
legato progno num
level progno tva_level
damper progno num
playnote progno note
delaysend progno level
chorussend progno level
reverbsend progno level
rnddelay progno msec
add number ...
add number file [options]
add number {%font|%sf2} file bank preset [keynote] [options]
add number {%font|%sf2} file 128 preset keynote [options]
add number %sample file [options]
add number {%mms|%scc} preset_number [options]
例:
bank 0
0 %scc 0 amp=25 lpf=0 # プログラム番号0に割り当て
add 0 %scc 0 amp=25 lpf=4 # プログラム番号0に追加設定(1)
0 %scc 1 amp=25 lpf=0 # 前の割り当てと追加設定を解除して、新たにプログラム番号0に割り当て
add 0 %mms 0 amp=25 lpf=3 # プログラム番号0に追加設定(1)
add 0 %mms 0 amp=25 lpf=5 # プログラム番号0に追加設定(2)

DATA

TiMidity++ 資料

トーン系バンク
基本命令bankmapなどで使用するマップ名。 以下のように文字列で指定する。
例:
bank xg 0
指定可能なマップ名は以下の通り。
gm2
sc55
sc88
sc8850
sc88pro
xg
xgsfx64
cm32l
cm32p
k05rw000
k05rw056
k05rw057
mt32
nx5r000
nx5r001
nx5r002
nx5r003
nx5r004
nx5r005
nx5r006
nx5r007
nx5r008
nx5r009
nx5r010
nx5r011
nx5r016
nx5r017
nx5r018
nx5r019
nx5r024
nx5r025
nx5r026
nx5r032
nx5r033
nx5r040
nx5r056
nx5r057
nx5r064
nx5r080
nx5r081
nx5r082
nx5r083
nx5r088
nx5r089
nx5r090
nx5r091
nx5r125
sd080
sd081
sd087
sd096
sd097
sd098
sd099
sn01
sn02
sn03
sn04
sn05
sn06
sn07
sn08
sn09
sn11
sn12
sn13
sn14
sn15
xgexclusive48
xgsampling16

一部のマップは--moduleによる音源モード指定や特定のリセットSysEx等の条件を満たす事で使用できるようになります。
ドラム系バンク
基本命令drumsetmapなどで使用するマップ名。 以下のように文字列で指定する。
例:
drumset xgdrum 0
指定可能なマップ名は以下の通り。
gm2drum
sc55drum
sc8850drum
sc88drum
sc88prodrum
xgdrum
xgsfx126
cm32drum
k05rwdrum062
mt32drum
nx5rdrum061
nx5rdrum062
nx5rdrum126
nx5rdrum127
sddrum104
sddrum105
sddrum106
sddrum107
sddrum86
sn02drum
sn10drum
xgsampling126

一部のマップは--moduleによる音源モード指定や特定のリセットSysEx等の条件を満たす事で使用できるようになります。

COPYRIGHT

出典
オリジナル版へのリンク - TiMidity++ (Experimental version)

BW版設定ファイル文法詳細へのリンク - 羽根のあるところ

timidity.cfg.5.man.html - clg35kmh