v2 での新機能、および v1 からの変更点: * 発音数の自動削減 リアルタイムに演奏が困難な状況になると、自動的に発音中の音の一部を削除し、 処理の軽減を図ります。 * オーディオバッファリング 途中で音が途切れないようにするために、WAVE データをバッファリングします。 * Windows GUI をサポート * Sherry WRD をサポート * NAS (Network Audio System) 出力をサポート * EsounD 出力をサポート * ストリーム形式の MIDI を演奏できる。 現在は TiMidity サーバ (-ir) として、実装されている。 * SoundFont の一部を GUS パッチと同じように定義することができる。 例:bank 0 prog 48 に 2MBGMGS.SF2 の bank 0 preset 18 を割り当てる。 bank 0 47 %font /usr/local/lib/timidity/sf/2MBGMGS.SF2 0 18 "%font" というのが特殊なキーワードになっています。一般形は %font [] という形式をしています。ドラムセットの場合は に 128 を指定します。 (SoundFont ではドラムセットは bank 128 に割り当てられている) * トレースモードでの CPU load average が下がった。 * リバーブ、コーラスエフェクトをデフォルトで有効。 * timidity.h:DEFAULT_VOICES を 32 から 64 に変更。 * リバーブに関する実装の変更。(アルゴリズムは変更していない) * オリジナルの TiMidity で使われていた sun_a.c を再利用。 * 演奏途中でサンプルレートが変更できるようになった。現在では ncurses インターフェースのみで実装されている。 * bank 0 に定義したオルタネートアサインは、全てのバンクのデフォルトとして機能。 * エフェクトオプション用に -EF を追加。 -EFns=level ノイズシャーピングフィルタ (level 0:無 1〜4:次元数) 8 bit リニア PCM で出力するときのみ有効。このフィルタは、量子化ノイズ をガウスノイズにすることで、小さな音が歪むのを防ぐフィルタです。 -EFchorus=0 コーラスコントロール命令を無効化 -EFchorus=1 コーラスコントロール命令を有効化 -EFchorus=2 Eric さん考案のサラウンドコーラスモード -EFreverb=0 リバーブコントロール命令を無効化 -EFreverb=1 リバーブコントロール命令を有効化 -EFreverb=2 全体にリバーブをかける。 -EFdelay=mode ディレイエフェクト mode l:左delay r:右delay c:真ん中 (ディレイエフェクトはかからない) b:左右を時々入れ換える。 ヘッドホンなどで聞いているときに、-EFdelay=b としておくと、 音像が頭の中心ではなく、どこか外にあるように定位します。 音源によっては本当に外から聞こえてくると錯覚するほどなので、 心臓に良くないときもあります。 * ポルタメントがほぼ完璧に機能するようになった。(v1.3.9 と同様) * プレイリストファイルを展開 拡張子が .m3u, .pls, .asx のファイルは、その中に記述されている MIDI ファイル のリストを展開します。また、ファイル名の先頭に「@」を付けると、その ファイルをプレイリストファイルとして展開します。(MS-DOS のように) * WIN32 を W32 と置換。 `WIN' という語は、ハッカーの間で賞賛を意味する語なのですが、 私は M$ を賞賛したいとは思わないので、W32 としました。 なお、Windows 上で UNIX ライクな環境を(フリーで)提供してくれる CYGWIN は 賞賛にあたいするので、そのまま CYGWIN としています。 * Module MIDI ファイルをサポート。