TiMidity(1) TiMidity(1) NAME TiMidity - MIDI to WAVE converter and player SYNOPSIS timidity [-options] filename [filenames ...] DESCRIPTION TiMidity は MIDI から WAVE へのコンバータである。 General MIDI ファイルからデジタルオーディオデータを生成するため に Gravis Ulstarsound-互 換 の patch ファイルを使う。データ は、加工するためにファイルに格納したり、オーディオデバイス を使ってリアルタイムに演奏したりできる。 OPTIONS TiMidity version 0.2i では次のコマンドラインオプションが使 用可能: -o filename filename に出力する。filename はファイルでもデバ イ スでも HP-UX のオーディオサーバでもかまわない。出力 モードは -O オプションで決まる。 filename を ``-'' にすると標準出力に出力される。 -O mode mode は出力モード識別子のうち対応しているものを表す 文字で始まらなければならない。 TiMidity を -h オ プ ショ ン付きで起動すれば、対応している出力モード識別 子のリストが表示される。全てのバージョンで次の識 別 子が使用可能: -Or raw waveform データを生成する。全てのフォー マットオプションに対応。一般的なフォーマット オプションは次のとおり: -OrU uLaw -Or1sl 16-bit signed linear PCM -Or8ul 8-bit unsigned linear PCM -Ow RIFF WAVE フォーマットで出力する。出力がシー クできないファイルだったり、 TiMidity がファ イルを閉じる前に中断されたりすると、ファイル ヘッダには RIFF とデータブロック長フィールド に 0xFFFFFFFF が入る。ポピュラーなサウンドコ ンバートユーティリティである sox はこのよ う な奇妙なファイルを読むことができるので、 sox にパイプでデータを直接流しこんで他の フォ ー マットにコンバートすることが可能。 8 Sep 1995 1 TiMidity(1) TiMidity(1) Format options モード識別子の直後に出力フォーマットを変える オプション文字を付けることができる。次のオプ ション文字が使用可能: 8 8-bit sample width 1 16-bit sample width l Linear encoding U uLaw (8-bit) encoding M Monophonic S Stereo s Signed output u Unsigned output x Byte-swapped output 一 部のモードでは効果がないオプションがあるので注意 すること。例えば、byte-swap した RIFF WAVE ファイル は作れず、 uLaw 出力は Linux PCM デバイスには使えな い。 -s frequency 再生周波数を設定する。全てのデバイスが全ての周波 数 に 対応しているとは限らない。実装に応じて、最も近い 周波数が選択される。 -a アンチエイリアシングを有効にする。サンプルは再生 の 前 にローパスフィルターに通される。これによって再生 周波数が低い場合にエイリアシングノイズを減らす。 -f ファーストエンベロープのトグルです。音符のディケ イ レ ートを遲くしたほうが良く聞こえる MIDI ファイルが ある。これを有効にすると、リバーブのような効果が 得 ら れ る。 (TiMidity はまだリバーブには対応していな い)。 -e TiMidity を悪者にする。 Win32 のバージョンでは、 タ ス クプライオリティを上げる。再生の精度は上がるが、 他のタスクの速度が落ちる。 -p voices ポリフォニー(同時発生音数)を voices に設定する。 -A amplification マスターボリュームを amplification% にする。 8 Sep 1995 2 TiMidity(1) TiMidity(1) -C ratio サンプリング間隔やコントロール頻度を設定する。こ れ は エンベロープの再計算の頻度を決定する。小さな値を 設定すると音質が上がるが、CPU に負担がかかる。 -L directory ライブラリパスに directory を追加。 patch ファ イ ル、設定ファイル、MIDI ファイルのはこのパスに従って 探索される。最後に加えられたディレクトリは最初に 探 索 される。ライブラリパスに関係なく、カレントディレ クトリがいつも最初に探索されるので注意すること。 -c file 別の設定ファイルも読む。 -I number デフォルトの楽器としてプログラム number 番を使 う。 MIDI ファイルのプログラムチェンジイベントはこのオプ ションで上書きされる。 -P file ドラム以外のプログラムに file (patch) を使う。プ ロ グラムチェンジイベントは無視される。新しい patch を 試す時に便利。 -D channel channel をドラムチャンネルに設定する。 channel に負 の 値を与えると、 -channel をインスツルメントチャン ネルに設定する。 channl に 0 を与えると、全てのチャ ンネルがインスツルメントチャンネルになる。 -Q channel channel を鳴らさなくする。 channel に負の値を与える と、-channl を鳴らすようにする。 channl に 0 を与え ると、全てのチャンネルが鳴るようになる。 -F 既に演奏されている音符にパンニング修正をしたい MIDI 情報に対して、ファーストパンニングを有効にする。 左 右 にすばやくバランスを動かすようなファイルに対して は、パンニング修正をしないほうがよい。 -F フラグ を 使うと、このようなファイルでは悪影響が出る。 -U 別 の MIDI ファイルに演奏を切り替える際に、全てのイ ンスツルメントとメモリからアンロードする。 多 く の ファ イ ル を連続して演奏する時にはメモリの節約にな る。 -i interface コンパイル時に組込まれているインターフェースのう ち 一 つ を選択する。 interface は対応しているインター フェースのうちの一つから始まらなければならない。 -h オ プション付きで TiMidity を起動すればそのリストが 出る。次の識別子が利用可能: 8 Sep 1995 3 TiMidity(1) TiMidity(1) -id dumb インターフェース -- ファイルを順番に 演 奏 し、 verbosity レベルに従ってメッセージを 画面に出力する。トレースモードでは、トータル の演奏時間と現在までの演奏時間を表示する。 -im Motif インターフェース -- X Window の対話的 インターフェース -ik The Tcl/Tk interface -- X Window interactive interface. Tcl/Tk イ ン ターフェース -- X Window の対話的インターフェース -in 対話的制御をする ncurses フルスクリーンイ ン ターフェース -is 対話的制御をする S-Lang フルスクリーンインタ ーフェース Interface options インターフェース識別子の直後には、オプション 文字を付けることができる。次のオプションが有 効: v verbosity を上げる。このオプションは 重ねることができる。 q verbosity を下げる。このオプションは 重ねることができる。 t トレースモードのトグル。トレースモー ド では、TiMidity はリアルタイムに現 在の状態を表示する。 Linux サウン ド ドライバに対しては、DMA バッファフラ グメントを小さく取る。 DMA バッ ファ フラグメントの大きさは -B オプション で変更できる。 -B fragments Linux サウンドドライバを使っている場合、インタラ ク ティ ブ モ ードでもバッファフラグメントの数を設定す る。フラグメントの数を大きくすると、たくさんのプ ロ セ スが動いている時の音切れが減る。これによって早送 り、巻き戻し、ボリューム制御などに対す る TiMidity の 反応は遲くなる。また、状態表示も同期が取れなくな る。 fragments を 0 にすると、できるだけ大きなフ ラ グメントの値を取る。 FILES TiMidity は起動時に、オプションを見る前に timidity.cfg と いう設定ファイルを探索する。このファイルにアクセスできない 場合、また、ライブラリパスがコマンドラインで -L オプション 8 Sep 1995 4 TiMidity(1) TiMidity(1) によって変更されている場合、全てのオプションを見た後に、新 し い ラ イブラリパスに従ってデフォルトファイルを (-c オプ ションで別の設定ファイルが指定されていないならば) 再探索す る。 設定ファイルでは MIDI プログラムとインスツルメントファイル のマッピングが定義されている。複数のファイルが指定された場 合、後に読み込まれた設定によって前の設定は上書きされる。設 定ファイル中には次の文が使用可能: dir directory directory を探索パスに加える。加えかたは-L オプショ ンと同様。 source file 他の設定ファイルをその場所に挿入し、続行する。 bank number 変 更するトーンバンクを選択する。この文以後の patch のマッピングは、指定されたトーンバンクに対して行 わ れる。 drumset number 変 更するドラムセットを選択する。この文以後の patch のマッピングは、指定されたドラムセットに対して行 わ れる。 number file [options] 現 在のトーンバンクやドラムセットの MIDI プログラム number 番で鳴らす patch file を指定す る。 options は次のものが使用可能: amp=amplification インスツルメントのボリュームを amplification % にする。もし値が指定されない場合、インスツ ル メ ントが読み込まれる時に自動的に設定され る。 note=note インスツルメントを演奏する時に決まった MIDI ノート(音階) を使う。 note を 0 にすると、最 初に Note On イベントが発生した時点でのノ ー トを使う。パーカッションインスツルメントに対 しては、もし設定ファイルで値が設定されていな け れ ば、 patch ファイルに入っている値を使 う。 pan=panning インスツルメントのデフォルトのパンニングを設 定 す る。 panning は left、right、center、 -100 から 100 までの整数値を取ることが で き る。-100 は左、100 は右である。値が与えられ ていない場合には、patch ファイルに入っている 値を使う。 MIDI ファイルにあるパンニングコン 8 Sep 1995 5 TiMidity(1) TiMidity(1) トロールの方が優先されることに注意。 keep={loop|env} パーカッションインスツルメントでは、デフォル ト で ループ情報とエンベロープ情報が破棄され る。メロディーインスツルメントの異常なエンベ ロープも自動的に破棄される。 keep はエンベロ ープ情報やループ情報が破棄されるのを防ぐ。例 えば、Short、Long Whistle パーカッションイン スツルメント (General MIDI の 71、72 番) に 対 し て は、 設 定 ファ イ ルで ``keep=loop keep=env'' としておく必要がある。 strip={loop|env|tail} インスツルメントにある全ての patch のルー プ 情 報やエンベロープ情報やテール(ループの後に あるデータ)を強制的に破棄する。サー ド パ ー ティーのインスツルメントにはループの後にゴミ が付いているものがあり、インスツルメントを演 奏する度にクリッキングノイズが入ってしまう。 その場合、strip=tail オプションを指定すれ ば 音質が改善される。 注意: ファイル名が .gz や .sht などコンパイル時に定義され た圧縮識別子で終わっている場合、 TiMidity は指定された展開 コマンドにファイルをパイプで流しこむ。 MIDI ファイルは非常 に圧縮率が高い場合が多いので、圧縮ファイルを扱えるのは便利 である。 特 殊ファイル名 ``-'' を使って MIDI ファイルを標準入力から 流しこむことができる。 COPYRIGHT Copyright (C) 1995 Tuukka Toivonen. TiMidity is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. TiMidity はフリーソフトウェアです; Free Software Founda- tion によって発行されている GNU General Public License に 従う限り、これを再配布したり変更したりすることができます: ライセンスの第 2 版や、それ以降のライセンスに従います。 TiMidity is distributed in the hope that it will be use- ful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. 8 Sep 1995 6 TiMidity(1) TiMidity(1) TiMidity は便利だと思いますので配布しますが、*どのような責 任も持ちません*;商業目的や特殊な目的に合致するという保 証 はできません。詳細は GNU General Public License を見てくだ さい。 AVAILABILITY The latest release is available on the TiMidity Home Page, URL http://www.clinet.fi/~toivonen/timidity/. 最 新版は TiMidity のホームページ (URL http://www.clinet.fi/~toivo- nen/timidity/.) で手に入ります。 [訳注:distribution につ いては、訳者 が http://www.i.h.kyoto-u.ac.jp/~shom/timid- ity/ にてできるだけミラーします。] BUGS 8-bit と低レートでの出力が思ったより良くない。 小さな CPU-time-eating 獣よりも CPU time を喰う。 [訳注:和訳のバグも多数潜んでいるでしょう…] AUTHORS Tuukka Toivonen HP-UX オーディオコード、X-Motif インターフェース、アンチエ イリアシングフィルターは Vincent Pagel Tcl/Tk イ ン タ ー フェ ー ス は Takashi Iwai Windows 95/NT オ ー ディ オ コ ー ド は Davide Moretti DEC オ ー ディ オ コ ー ド は Chi Ming HUNG S-Lang ユ ーザインターフェースは Riccardo Facchetti [和 訳 は 松 本 庄 司(MATSUMOTO Shoji )。 この和訳は正確かどうかは保証できません。あなた がこの和訳の使用でいかなる損害を受けても責任は 持 ち ま せ ん。] 8 Sep 1995 7