※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。


TiMidity++ Windows 版で MIDI を聴く はてなブックマークに登録

Goemon's timidity patchkit 等追記[2007-10-20]
Timidity222 追記[2007-10-17] リンク追加・修正[2007-10-15]
WyWiki より転記[2007-01-16] 修正[2006-05-7] [2004-05-22]


GUS(Gravis UlstarSound) 互換の patch を音源にして MIDI をエミュレートする
Software MIDI シンセサイザー
MIDIファイルも音源Patchもコンフィグファイル(.cfg)もアーカイブに対応。
MIDI音源を使わずに、Waveの周波数を調整してMIDI作者さん使用音源にできるだけ
音を近づけたり、好みの音色で演奏する、ってことでいいのかなあ。。。

音源に Patch を使う

●準備するもの
 Player本体+音源Patch +(コンフィグファイル(cfg))

●セット毎の設定方法

(1)Eawpatches+Riuさんのcfgファイル


■TiMidity++
 +
■Eawpatches(現在サイトが行方不明)
 +
■RiuさんのEawpatch用にブラッシュアップされたcfgファイル(SC-88対応)
 http://users.hoops.ne.jp/ookuniriu/midi/index.html

1) TiMidity++本体(timw32g.exe)があるディレクトリにEawpatchesフォルダを置く。
2) Eawpatches用のブラッシュアップされたcfgファイルを使う場合は、11個の
  cfgファイルをEawpatchesの入ったフォルダに上書き保存。
3) timw32g.exeがあるディレクトリに、空のtimidity.cfgファイルを作成。
4) Eawpatchesフォルダにあるtimidity.cfgをテキストエディタで編集。
  30行目 dir TiMidity++本体のあるフォルダの絶対パス
  61行目 dir Eawpatchesフォルダの絶対パス
5) TiMidity++の「設定」で、4)のtimidity.cfgを設定ファイルに指定。

(2)出雲パッチ+SYUUHOUさんのConfigファイル



1) 23個に分割された出雲パッチファイル guspat-20000706-aa.tar.gz~
  guspat-20000706-aw.tar.gz を展開し、中にある instフォルダをひとつにまとめて、
  TiMidity++本体(timw32g.exe)があるディレクトリにおく。
  注:aa.tar.gz に含まれる13個のファイルもinstフォルダに入れる。
2) SYUUHOUの30MBパッチ用Configファイルを使う場合は、cfgファイルを instフォルダに
  上書き保存。
3) timw32g.exeがあるディレクトリに、空のtimidity.cfgファイルを作成。
4) instフォルダにあるtimidity.cfgをテキストエディタで編集。
  14,15,16行目のコメント#を外す。
  15行目 dir instフォルダの絶対パス
  16行目 dir TiMidity++本体のあるフォルダの絶対パス
  ReadMe_j.txt に従って、
  38行目source tune.cfg と 40行目source adsrmod.cfg のコメントを外す。
5) TiMidity++の「設定」で、4)のtimidity.cfgを設定ファイルに指定。

(3)出雲パッチ+Eawpatches+田向さんのコンフィグセット


TiMidity++ (Experimental version)
 +
■出雲パッチ
 + →まとめたもの Eawpatches GUS/patchセット
■Eawpatches
 +
■田向 正一さんの追加の GUS/patch Set(eawplus-12.1.tar.gz)
 Eawpatches 12をベースに修正を加えて、SYUUHOUさんの88proS-6.4.1を取り込んだもの。

1) (1)の 1)と(2)の 1)の手順で Eawpatch と 出雲パッチ をインストール。
2) 田向さんの追加patchとcfgファイルを、instフォルダに上書き保存。
  (2)のtimidity.cfgも使いたい場合は、リネームしておく。
3) timw32g.exeがあるディレクトリに、空のtimidity.cfgファイルを作成。
4) instフォルダにあるtimidity.cfgをテキストエディタで編集。
  30行目 dir TiMidity++本体のあるフォルダの絶対パス
  61行目 dir Eawpatchesフォルダの絶対パス
5) TiMidity++の「設定」で、4)のtimidity.cfgを設定ファイルに指定。

(4) Timidi95で(2)で設定した出雲パッチを使う場合



1) timidi95 をフォルダに解凍する
2) 以下を記述した 4timidi95.cfg ファイルを作成、TiMidity++本体(timw32g.exe)
  があるディレクトリにおく。
  Timidi95のディレクトリに置くなら、source 部分は絶対パスで指定。
4timidi95.cfg
# timidi95を解凍したフォルダにあるtimidi95の設定ファイルを指定
source path\TIMIDI95.CFG
# TiMidity++ 用のPatch等のあるフォルダを指定
dir \inst\GUSフォルダの絶対パス
dir \inst\GUS/powerフォルダの絶対パス
dir \instフォルダの絶対パス
dir TiMidity++本体のあるフォルダの絶対パス
dir \gus_patフォルダの絶対パス
# TiMidity++ 用の音色設定ファイルを読み込む
source default.cfg
source gsdrum.cfg
source gsdrum25.cfg
source sfx.cfg
source mt32.cfg
source power.cfg
source release.cfg

3) Timidi95の「設定」で、2)の 4timidi95.cfgを設定ファイルに指定。

その他のパッチを使ってみる

追記[2007-10-20]

1.goemon.tgz 内の goemon フォルダと goemon.cfg を TiMidity++ 本体のある
  フォルダに解凍し、goemon.cfg をテキストエディタで開いて goemon フォルダ
  へのパスを絶対パスに書き換える。
  9行目
dir "path\to\geomon"
2.TiMidity++ の [メニュー] → [設定] → [詳細設定] → [プレイヤ]タブ
  「設定ファイル」に goemon.cfg を指定して読み込ませる。

音源にサウンドフォントを使う

修正[2006-05-07][2004-05-24]
もう少しだけ分かりやすくしたつもりの導入法はこちら


●準備するもの
 サウンドフォントパック解凍ツール
  拡張子 .sfArk - sfArk
  拡張子 .sfpack - SFPack( SaitoさんのTiMidity++のページ →設定ファイル)
 Player本体+サウンドフォント+(コンフィグファイル(.cfg))

●設定例
■FluidR3 (サウンドフォント 140MB)
 +
 The Atomic Sound Font V1.0 Bank(サウンドフォント37MB)
 +
 Saitoさんのコンフィグファイル(cfg) fluid3.zip

1) サウンドフォントを置くフォルダとコンフィグファイルを置くフォルダを
  それぞれ作成。
2) FluidR3は sfArk で、The Atomic Sound Fontは SFPack で 1)で作った
  サウンドフォント用フォルダに解凍。→ 拡張子 .sf2 のファイルができる。
  コンフィグファイル(.cfg)はコンフィグファイル用フォルダに解凍。
3) サウンドフォントのcfgファイル(fluid3gm.cfgなど)をテキストエディタ
  で開き、サウンドフォントファイル名が書かれているところと、実際の
  ファイル名とを合わせる。
  ex. 0 %font FluidR3GM.SF2 0 0 amp=30 pan=0
        ~
4) timw32g.exeがあるディレクトリに、空のtimidity.cfgファイルを作成。
5) コンフィグファイル用のディレクトリに timidity.cfg ファイルを作成、
  timidity_fluid3.cfg を参考に、ファイルパスと読み込む cfgファイルを指定。

timidity.cfg
dir c:/timidity/# timidity本体のある場所
dir c:/timidity/cfg# cfgのある場所
dir c:/timidity/sf2# Soundfontのある場所
#dir c:/timidity/pat# patchのある場所

source fluid3gm.cfg
source fluid3gs.cfg
source fluid3atomic.cfg

source altassign.cfg
 上記以外のサウンドファイルや cfgファイルも使用する場合も、同様に書き加えて
 いけば良い。但し、下に書かれた cfgファイルの内容が、上の cfgファイルを
 上書きするので、優先したい設定ほど下に書く。
source strings_cadenza.cfg # Violin 40 Viola 41 Cello 42 

6) TiMidity++の「設定」で、5)のtimidity.cfgを設定ファイルに指定。

サウンドフォントの設定をしてみる

修正[2006-05-07][2004-05-30]


■サウンドフォントの音色設定例(音色の入れ替え、音量等の調整)
 割り当てるバンク番号
 何番に割り当てるか/サウンドフォントファイル名/バンク番号/
 プログラム番号/(キー番号)/オプション #コメント
bank 0
25 %font StEeLgUiTaR2.SF2 0 25 amp=90 pan=0 # Steel Guitar
bank 1
36 %font CONCERTGM093B.sf2 0 36 amp=152 pan=0 # Slap Baas 1
drumset 0
24 %font "SGM150 v1.40.sf2" 0 24 amp=159 pan=0 # Ambient Snare 1

色々バランスや音量が気になるし、いくつかの楽器のサウンドフォントを入れ
替えたりなど、TiMidty.cfgに書いて調整。
後から書いた設定が前に書いた設定を上書きするのだが、使わない設定は
コメントアウトして読み込まないようにしておいた方がいいかも。
けど、Tracer見て、サウンドフォントのコンフィグファイル見て、書き換えて、
強制再読込して、音聞いて・・・ってやるのは、けっこう手間かかる。

■設定済みサウンドフォント用 cfg
Saitoさんち
Timidity++ 用 CFG 詰め合せセット(「TiMidity++だけを語り尽くすスレ」内)
timidity最適化CFG

■起動時の設定をコンフィグファイル(cfg)に書く例 (詳細設定に優先する)
 #extension:拡張命令における接頭辞 (TiMidty時代のもの。TiMidity++では無視。)
 起動時のオプション指定/オプション
#extension opt -m3500
        # サステインしたノートがディケイされるまでの最大時間(msec)
#extension opt -U             # 演奏ごとにメモリを解放
#extension opt -A70,85        # 音量% (全体,ドラム)
#extension opt -EFresamp=g    # 補完方式
#extension opt -EFreverb=n,32 # リバーブの種類,レベル
#extension opt -EFchorus=s,6  # コーラスの種類,レベル

Timidity222 - とりあえずサウンドフォントで聞いてみたい

[2007-10-17] 追記
Timidity222 (要 sign up)
 GUI版・DOS版本体、各設定ファイル(cfg・ini)、サウンドフォント(4gmgsmt.sf2)
 午後のコーダ、lame、サンプルの MIDI、バッチファイル、MidiYork・・・
 と必要(になりそう)なものがすべてパッケージされてる。

 とりあえず、同梱 timidity.cfg のサウンドフォントのディレクトリを
 テキストエディタで絶対パスに書き換えて
 timidity.cfg(例)
# Comment lines start with "#"

#------ Add path to soundfont files ------
#dir ./sf2
dir "D:\Timidity222(展開したフォルダ)\sf2"

#------ Put your sf2 file here ------
soundfont 4gmgsmt.sf2
#sounfont 別のサウンドフォント.sf2(コメントを入れ替える)

 timw32g.exe を実行して TiMidity++ を起動、MIDI ファイルを開けば
 4gmgsmt.sf2 のきれいな音で演奏を聴くことができます。

 TiMidity++ の醍醐味は、好みのサウンドフォントやプリセット等を組み合わせて
 cfg ファイルを brush up していくことにありますが、とりあえずセットものの
 sf2 を手に入れて聞き比べてみるのもいいんじゃなかな。
 timidity.cfg の書き方や使い分けはその後でも^^

便利ツール

cfg 作成

■サウンドフォント用のコンフィグファイル(cfg)作成
 Cfg For SoundFont(cfgforsf003.zip / cfgforsf004.zip)
  TiMidity Page → 「TiMidity++ for Win32」 → 「入手法」から。
 (2007-10-15 リンク修正。トコロさま、情報ありがとうございました。)
  ミラーリング
 サウンドフォントの持っている音色を cfg 形式で出力
 sf2 ファイルと出力する cfg ファイル名を指定する。
cfgforsf -c- "soundfont.sf2" "soundfont.cfg"
 -c- : コメントを出力しないオプション

Preset Finder & SF2 Batch Builder
 複数のサウンドフォントから、指定した名前を持つプリセットを検索、
 コンフィグファイル(cfg)に出力するツール。
 出力されたコンフィグファイル(cfg)をもとに、楽器別のサウンドフォントを作成
 することができる優れもの。コンソール版。
 音質を比較して好みの設定を書くときに重宝。

 1.指定フォルダ内のサウンドフォントに含まれるプリセットのインデックス
   ファイル(sf2hash.idx)を作成
sf2hash path\to\sf2

 2.キーワードを指定してプリセットを検索、cfg ファイルに書き出す
sf2find -f "(guitar | gtr | Nylon | Clean | (Muted !trumpet))" > gtr.cfg
   -f : ファイル名も検索対象に含める
   & and, | or, ! not

 3.書き出した cfg ファイルを元にサウンドフォントを作成
sf2make input.cfg outputsoundfont.sf2
   cfgforsf で作成した cfg なども利用しよう。

SoundFontの編集ツール

修正[2006-05-07][2004-06-03]
ハードが無くても使えるもの

SoundFont Librarian (E-mu Systems) (free)(2007-10-19 リンク修正)
 プリセットの切り張り、切り出し、ID,プリセット名の変更、など

 プリセット名が分かれば、Preset Finder & SF2 Batch Builder のバッチファイルを
 作って一気に.sf2 にする手もある。

Awave Studio (shareware)

Alive* (shareware)

SF2Comp v1.0 (free)
 サウンドフォントファイルに含まれるWAVファイルを抽出、同時に出力される
 テキストファイル(編集可)の情報を元に、WAV編集後に新たなサウンドフォントを
 作成できるコマンドラインツール。switche が豊富

:指定ディレクトリにWAV出力
sf2comp d -agl flute.SF2 D:\Application\midi\sf2cmp\flute
:sf2書き戻し
sf2comp c -i flute.txt D:\Application\midi\sf2\flute_new.sf2

.sf2 processor v0.9 (free)
 サウンドフォントに含まれるプリセット名の整理をするコマンドラインツール。

:プリセットのリスト出力
 SF2PROC alpha.sf2 -l > list.txt
:プリセット名のソート
 SF2PROC alpha.sf2 -as -m
:プリセット全てのバンクナンバーを一括で変更
 SF2PROC alpha.sf2 -sb 127 -m
:バンクナンバーの入れ替え
 SF2PROC alpha.sf2 -rb 8 127 -m:8→127
:全てのプリセット名を大文字/小文字に
 SF2PROC alpha.sf2 -uc -m:大文字
 SF2PROC alpha.sf2 -lc -m:小文字
:全てのプリセット名から指定のsubstringを削除
 SF2PROC alpha.sf2 -ds "GM bank" -m
:全てのプリセット名の先頭/末尾から指定文字数削除
 SF2PROC alpha.sf2 -df 3 -m:先頭
 SF2PROC alpha.sf2 -df 1 -m:末尾
: Clicked (non-zero) startしている波形をリストに出力
 SF2PROC alpha.sf2 -c > list.txt
:zero-levelから始まっていない波形の最初の4サンプルをフェードイン
 SF2PROC alpha.sf2 -cr -m

Viena version 0.510 (free)
 サウンドフォントに含まれるプリセットやサンプルの切り張り、WAVEデータの編集
 お気に入りのプリセットの管理にも使えるかな。

サウンドフォントのデータ管理


Sample Catalog v.1.2.4 (free)
 サウンドサンプルをカテゴリで分類するツールだが、拡張子やカテゴリを
 追加登録すれば、.sf2、.sfArk、.sfpack、(VST).dll など何でも分類可能。
 WAVはワンクリックでプレビューできる。

KbMedia Player + kbtim.kpi + TiMidity++ はてなブックマークに登録

KbMedia Player Version 2.38beta2 以降 + kbtim.kpi Version 0.19
TiMidity++ の MIDI 演奏ルーチンを KbMedia Player のプラグインとして使用する。
1) TiMidity++ フォルダにある timpp32g.ini を kbtim.ini にリネームし、kbtim.kpi
  と同じフォルダ(Pluguins)に置く。
2) テンプレートを作成すれば、複数コンフィグファイルの併用が可能。
  「ツール」→「環境設定」→「プラグイン」タブで kbtim.kpi を選択 →「設定」
3) 「ツール」→「MIDI Device」よりテンプレートを選択。

foobar2000 v.0.8.3 + foo_tim.dll はてなブックマークに登録



1.Wrapper for KbMedia Player(foo_kmp_041118.zip) に同梱の foo_tim.dll を
  foobar2000 の components フォルダにコピー
2.foobar2000 Preferances → Components → Input → TiMidity++ MIDI Decoder を選択
  [Plugin path] に KbMedia Player の \Plugins フォルダに置いてある Kbtim.kpi を指定

その他のサウンドフォント対応プレイヤー はてなブックマークに登録

SynthFont (donat-ware)

RIGHT:修正[2006-05-08][2004-07-11]]
  • ハード無しでMIDファイルをサウンドフォントを音源にして演奏。
  • MIDIファイル個々に、チャンネルごとに、(一つのチャンネルに複数のプログ
 ラムが設定されている場合はプルダウンメニューから選択して)異なるサウンド
 フォントを割り当てたり、プリセットを変更する事ができる。
 サウンドフォントの聞き比べに便利。
  • .sfArk、.wav などもOK。
  • VST Efect/Instrument 対応。
  • ヴォリュームやヴェロシティ、使用サウンドフォントやVST、波形など編集を
 加えた情報は、MIDIファイルと同名の別ファイル (*.sfarr) に保存される。
 レイヤーやスプリット等のエフェクトを編集した場合は、サウンドフォントを
 書き換えることができる。
  • サウンドフォントに含まれるプリセットの音をスプリットごとにプレビュー
 できたり、チャンネルごとにWAVに出力できたり、等々機能豊富。

CPU使用率がステータスバーに表示されるのだが、VST無しで数%、エフェクト
かけると数十%以上、やっぱり・・・。

 * VST = Virtual Studio Technology

XMPlay


音飛びする時は はてなブックマークに登録

修正[2006-05-08][2004-07-05]
●エフェクトを見直す
●動作設定を見直す
 ■補間方式を変える
 TiMidity++ ではいくつかのサンプルをまとめて計算し、後から補完をかける。
 (軽い順)
#extension opt -EFresamp=d # 補間なし
#extension opt -EFresamp=l # 線形(一次)補間
#extension opt -EFresamp=c # 3次スプライン補間
#extension opt -EFresamp=L # ラグランジュ補間
#extension opt -EFresamp=g # ガウス補間(デフォルト)
#extension opt -EFresamp=n # ニュートン補間

  kbtim.kpi は常に一次補間だけを使用
  TiMidity++起動時のコマンドライン引数や、cfgの記述は無視される。
  (KbMediaPlayer 掲示板より)

 ■DEFAULT_CACHE_DATA_SIZE(リサンプリングのバッファサイズ)変更
 TiMidity++ ではMIDIイベントを演奏前にスキャンして,一部の音をあらかじめ
 リサンプリングする。
#extension opt -S 2m
 デフォルトは 2*1024*1024=2097152バイト

●evil モード
 TiMidity++ のスレッドプライオリティを上げる。
#extension opt -e


-
この日記のはてなブックマーク数