書式: waveflt2 [オプション] input.wav out.wav


[-cfg "file"] : 設定ファイル読み込み

設定を設定ファイルから読み込みます。file に設定ファイルを指定して下さい。 例えば config.txt に

# config.txt
# 先頭に「#}を付けるとその行はコメントになります
-iir_bpf 100 16000
# 終わり

と書いて保存し

waveflt2 -cfg "config.txt" input.wav out.wav

の様に使用します。

また設定ファイルは複数指定をしたり、-cfg 以外の オプションと併用できます。例えば

waveflt2 -cfg config1.txt -silent -cfg config2.txt -pipeout "foo.exe" input.wav stdout

の様に使用できます。


[-info] : ファイル情報表示

ファイルサイズ、再生時間、音量値などの情報を表示します。 出力ファイルを指定する必要ありません。

(例) waveflt2 -info input.wav


[-tstamp ] : タイムスタンプを入力ファイルに合わせる

出力ファイルのタイムスタンプを入力ファイルのタイムスタンプに合わせます。 -nosound-split など、処理中に出力先を切り替える処理を行う場合は切り替えた時間をセットします。 入力が stdin の場合は waveflt2 が起動した時間がセットされます。


[-silent ] : 経過表示をしない

変換時の経過を表示しません。


[-buf n ] : バッファサイズ

バッファサイズを設定します。 範囲は 1 <= n <= 50 で数字が大きいほどバッファを多く取ります。 デフォルトは 10 です。


[-headofs byte] : ヘッダの読み飛ばし

指定したバイトだけ入力ファイルの先頭のデータを読み飛ばします。

-format でWave フォーマットを明示的に指定する必要があります。


[-format sec freq chn bit tag]: 無音ファイル設定

-headofs指定時、又は入力ファイル名に nosignal を指定したときのフォーマットを指定します。

sec が再生秒、freq がサンプリング周波数、chn がチャンネル、bit がビット数、 tag がフォーマットタグ ( 1: PCM , 3: IEEE float)です。

フォーマットを指定しない場合は、 sec = 180, freq = 44100, chn = 2, bit = 16, tag = 1 がディフォルト値としてセットされます。

(例) -format 100 11050 1 16 1


[-nowavehdr] : WAVE ヘッダ出力なし

出力時に WAVE ヘッダを出力しません。出力は生の wave データのみになります。


[-noextrahdr] : 拡張 WAVE ヘッダ出力なし

拡張した WAVE ヘッダを出力せずに従来の WAVE ヘッダを出力します。

WAVEFLT2 は 4G 以上のファイルを扱うために独自に拡張した RIFF ヘッダを使用しているため、 WAVEFLT で編集したデータは他のツールで使用できない場合があります。その場合は このオプションを指定してください。 なおデータサイズが 4G 未満の場合は拡張ヘッダを出力せずに従来の RIFF ヘッダを出力します。

またこのオプションを指定して作成した 4G 以上のファイルを WAVEFLT2 で編集する場合は -endlessオプションを 指定する必要があります。

(WAVEFLT2 の拡張 RIFF フォーマットの仕様)

・fmt_ と data チャンクの間に wflt チャンク(20 byte)を新設

'wflt'        : 4byte
チャンクサイズ: (DWORD) 4byte  (= 12)
データサイズ  : (int64) 8byte  (wave データのサイズ)
(リザーブ)    : (DWORD) 4byte


[-endless] : エンドレスモード

入力 Wave ファイルのヘッダに記載されているデータサイズを無視して 入力がある限り処理を続けます。入力ファイルに stdin を指定した場合は 自動的にエンドレスモードになります。


[-del] : フィルタ処理後に入力ファイル削除

フィルタ処理終了後に入力ファイルを削除します。


[-nochkhdd] : ハードディスク空き容量チェック省略

ハードディスクの空き容量チェックを省略します。 出力先が stdout の場合はこのオプションが無くても空き容量を チェックしません。


[-nosse2] : SSE2 を使用しない

SSE2 を使用しないで演算します。


[-lockon hwd] : ロック音のウィンドウハンドル指定

Win32 用の録音ツール「ロック音・ミレニアム」のウインドウハンドルを 指定します。 hwnd に 32bit の DWORD 値を指定してください。


[-vol n ] : ボリューム調整

音量を n 倍します。範囲は 0.0001 <= n <= 100.0 です。


[-balance l r ] : 左右バランス調整

左チャンネルの音量を l 倍、右チャンネルを r 倍してバランス調整を します。範囲は 0 <= l,r <= 100.0 です。

(例) -balance 0.5 0.8


[-cut t1 t2 ] : ファイル切り出し

指定した時間でファイルの切り出しを行います。t1 は開始時間、 t2 は 終了時間で、秒、または 時:分:秒 の表記で指定します。例えば

-cut 62 70.5
又は
-cut 0:1:2 0:1:10.5

で input.wav の 62-70.5 秒間を切り出します。

(注意) 他の切り出し系のオプションと同時には使用できません。


[-cuttail t1 t2 ] : ファイル切り出し(後部分削除)

指定した時間でファイルの切り出しを行います。-cut との違いは t2 がファイルの後ろから削除する時間を指定することです。t1 は開始時間です。例えば input.wav の再生時間が 120 秒のとき、

-cuttail 70.5 10
又は
-cuttail 0:1:10.5 0:0:10

で input.wav の 70.5-110 秒間を切り出します。

(注意) 他の切り出し系のオプションと同時には使用できません。


[-cutm n t11 t12 t21 t22 … tn1 tn2] : 多重切り出し

指定した範囲のデータを切り出して連結します。n は切り出すプロックの数、 ti1 ,ti2 は i 番目のブロックの開始時間(秒)、終了時間(秒)です。

(例) -cutm 3 1 10,5 20 25 0:1:0 0:1:10

ファイルの(1 秒,10.5 秒),(20 秒,25 秒),(60 秒,70 秒) 区間を切り出して連結します。

(注意) 他の切り出し系のオプションと同時には使用できません。


[-shift msec ] : 出力のシフト

出力を msec (ミリ秒) シフトします。 リサンプリングや FIR フィルタなどの遅延が生じるフィルタ処理を行って 出力の先頭に無音部やノイズが入るときに使用します。 リサンプリングと併用した場合は出力ファイルの再生時間が 計算精度の問題で数ミリ秒ほど短くなります。

(例) 4095 tap の FIR フィルタは入力が 44.1kHz の場合、 46.42 msec の遅延が生じるので -shift 46.42


[-ofs left right ] : DC オフセット手動補正

DC オフセット(直流成分)のずれの手動補正をします。 left、 right は修正値で、デシベルではなくリニア値で指定してください。

(例) -ofs 423.78 -1114.14

(注意) -autoofs が指定されている場合はこのオプションは無効です。


[-autoofs sec ] : DC オフセット自動補正

DC オフセット(直流成分)ずれを学習して自動修正します。sec (>=5) は学習時間(秒) です。


[-mix level ] : 左右ミキシング

ステレオ形式ファイルの左右の音声をミキシングしてモノラルファイルにします。level は左チャンネル の合成レベルで、範囲は 0.0 <= level <= 1.0 です。


[-mixfile l1 l2 t1 t2 "file" ] : ファイルミキシング

2 つのファイルをミキシングして一つのファイルにします。l1,l2 は合成レベルで 入力ファイルを l1 倍、ミキシングするファイルを l2 倍します。

t1,t2 はミキシング開始時間で、入力ファイルの t1 秒(または 時:分:秒指定) 目から、ミキシングファイルは t2 秒(または 時:分:秒指定)目から合成を開始します。

(例1) waveflt2 -mixfile 1.2 0.3 12 18 "mix.wav" input.wav out.wav
(例2) waveflt2 -mixfile 1.2 0.3 0:0:12 0:0:18 "mix.wav" input.wav out.wav


[-fin sec ] : フェードイン

ファイルの最初の部分をフェードイン処理します。sec はフェードインの時間(秒)で 範囲は 0.1 <= sec <= 10.0 です。


[-fout sec ] : フェードアウト

ファイルの最後の部分をフェードアウト処理します。sec はフェードアウトの時 間(秒)で範囲は 0.1 <= sec <= 10.0 です。


[-adp level ] : 適応フィルタ

FIR 型適応フィルタを作動させて周期性ノイズを削除します(LMS 学習)。 level で学習の強度を指定します。範囲は 0 <= level <= 1.0 です。


[-adp_detail level tap delay train db ] : 適応フィルタ詳細設定版

FIR 型適応フィルタの詳細設定版です。

level で学習の強度を指定します。範囲は 0 <= level <= 1.0 です。

tap で 適応フィルタのフィルタ長を指定します。範囲は 3 <= tap <= 1023 でかつ奇数 にして下さい。デフォルト値は 127 です。tap が大きくなるにつれて性能が良 くなりますが計算量が増えて遅くなります。ファイルにあわせて最適になるよ うに設定して下さい。

delay で適応フィルタの遅延時間(ミリ秒)の設定をします。ファイルにあわせて最適になるように 設定して下さい。範囲は 1 <= delay <= 5000 でデフォルトは 50 です。

train で適応フィルタのフィルタ係数の初期学習時間(秒)を指定します。 適応フィルタは最初の数秒間は学習モードとしてノイズの除去機能が働かないため train で指定した時間の間フィルタ係数の学習を行い、それからファイルをはじめに 巻き戻して実際の変換を行います。標準入力モードの時はこのオプションは無効です。 範囲は 1 <= train <= 60 でデフォルトは 0 です。

db でフィルタの阻止域での減衰量を指定します。デフォルトは -100 です。

(例) -adp_detail 0.02 127 50 10 -100


[-adpchr ] : 適応フィルタ特性出力

フィルタ処理後に適応フィルタのインパルス応答と周波数特性をカレントフォルダにテキスト 出力します。ファイル名はそれぞれ "adp_imp_?.txt","adp_chr_?.txt"で、? の 所に左チャンネルの場合は l、右の場合は r が入ります。


[-fir_lpf f ] : Low Pass Filter (f : 遮断周波数)
[-fir_hpf f ] : High Pass Filter
[-fir_bpf f1 f2 ] : Band Pass Filter (f1,f2 : 遮断周波数(低),(高))
[-fir_bsf f1 f2 ] : Band Stop Filter

FIR フィルタを作動させます。窓関数は keiser 窓を使用しています。


[-firln tap ] : FIR フィルタ長

FIR フィルタのフィルタ長を指定します。範囲は 3 <= tap <= 8191 でかつ奇数 にして下さい。デフォルト値は 63 です。tap が大きくなるにつれて遮断性能が 良くなりますが計算量が増えて遅延時間が大きくなります。


[-firdb db ] : 阻止域での減衰量(db)

FIR フィルタの阻止域での減衰量を指定します。デフォルトは -100 です。


[-firchr ] : FIR フィルタ特性出力

FIR フィルタのインパルス応答と周波数特性をカレントフォルダにテキスト出 力します。ファイル名はそれでれ "fir_imp.txt","fir_chr.txt" です。


[-fir_eq3 l1 l2 l3 : 3 バンド FIR-イコライザ

3 バンド FIR 型イコライザを作動して帯域ごとに利得を調整します。 l1,l2,l3 (-24 〜 24 dB)は各帯域の利得です。 フィルタ特性を見る場合は -firchr を使用してください。


[-fir_eq_detail tap db q l1 l2 l3 : 3 バンド FIR-イコライザ詳細設定版

3 バンド FIR 型イコライザを作動して帯域ごとに利得を調整します。 1023 <= tap <= 8191 はフィルタ長、db (デシベル)は各 BPF の減衰量、q は Q 値、 l1,l2, l3 (-24 〜 24 dB)は各帯域の利得です。 デフォルト値は tap = 255, db = -60.00, q = 0.643 です。 フィルタ特性を見る場合は -firchr を使用してください。

(例) -fir_eq3_detail 255 -70 0.64 6 1 -1


[-fir_eq l1 l2 l3 .. l10] : 10 バンド FIR-イコライザ

10 バンド FIR 型イコライザを作動して帯域ごとにレベルを調整します。 l1,l2, .. , l10 (-24 〜 24 dB)は各帯域のレベルです。 フィルタ特性を見る場合は -firchr を使用してください。


[-fir_eq_detail tap db q l1 l2 ... l10] : 10 バンド FIR-イコライザ詳細設定版

10 バンド FIR 型イコライザを作動して帯域ごとにレベルを調整します。 1023 <= tap <= 8191 はフィルタ長、db (デシベル)は各 BPF の減衰量、q は Q 値、 l1,l2, .. , l10 (-24 〜 24 dB)は各帯域のレベルです。 デフォルト値は tap = 1023, db = -60, q = 1.5 です。 フィルタ特性を見る場合は -firchr を使用してください。

(例) -fir_eq_detail 2047 -70 1.5 2 10 6 3 1 0 0 0 -1 -2


[-iir_lpf f ] : Low Pass Filter (f : 遮断周波数)
[-iir_hpf f ] : High Pass Filter (f : 遮断周波数)
[-iir_bpf f1 f2 ] : Band Pass Filter (f1,f2 : 遮断周波数)

IIR 型のフィルタを作動させます。 バタワース特性 2 次(BPF は 4 次) IIR フィルタを使用しています(-6*2 dB/oct)。


[-iirchr ] : IIR フィルタ特性出力

IIR フィルタのインパルス応答と周波数特性をカレントフォルダにテキスト出 力します。ファイル名はそれでれ "iir_imp.txt","iir_chr.txt" です。


[-demp] : ディエンファシス

50/15μs のディエンファシス(1 次IIR, -6db/oct)をかけます。 特性をみるには -iirchr オプションを使用してください。 -emp と同時に使用できません。


[-emp] : エンファシス

50/15μs のエンファシス(1 次IIR, +6db/oct)をかけます。 特性をみるには -iirchr オプションを使用してください。 -demp と同時に使用できません。


[-sveq_l freq db] : シェルビング EQ low

シェルビング EQ をかけます(low, 1 次IIR, +-6db/oct)。 freq が周波数、 db (デシベル)が利得です。 特性をみるには -iirchr オプションを使用してください。

(例) -sveq_l 200 6


[-sveq_h freq db] : シェルビング EQ high

シェルビング EQ をかけます(high, 1 次IIR, +-6db/oct)。 freq が周波数、 db (デシベル)が利得です。 特性をみるには -iirchr オプションを使用してください。


[-pkeq freq db Q] : ピーキング EQ

ピーキング EQ をかけます(2 次IIR, +-6db/oct)。 freq が周波数、 db (デシベル)が利得、Q は Q 値です。 特性をみるには -iirchr オプションを使用してください。

(例) -pkeq 1000 6 1.5


[-dither amp] : ディザ + ノイズシェイパ

ディザ(TPDF)+ノイズシェイパ(24次FIR)処理を行います。 amp はディザの強さで、0 以下の数値を設定した時はデフォルト値(amp = 0.5)を 設定します。16bit出力時でも14khzまでは聴感上で20bit程度のダイナミックレンジ を得ることが出来ます。出力が 24 bit 以上の場合は実行しません。

(例) -dither 0


[-rsmp] : リサンプリング

リサンプリングをします。現在のところ 48000 hz-> 44100 hz の変換のみに対応しています。 リサンプリングするときは必ず-ditherも 同時に指定してください。

(例) -rsmp -dither 0


[-rsmp_detail tap db f] : リサンプリング詳細設定版

(注) このオプションの仕様は将来的に 変更される可能性があります。

リサンプリングをします。 アップサンプリングをしたあとに 長さ tap 、遮断周波数 f (Hz), 減衰量 db (dB) の FIR ローパスフィルタに通してダウンサンプリングします。 リサンプリングするときは必ず-ditherも 同時に指定してください。

-rsmp のみを指定した時のディフォルト値は tap = 32767, db = -150, f = 21200 です。

(例) -rsmp_detail 24575 -100 21200 -dither 0


[-rsmpchr ] : リサンプリング特性出力

リサンプリングで使用される FIR フィルタの周波数特性をカレントフォルダにテキスト 出力します。ファイル名は "rsmp_chr.txt" です。


[-bit8] : 8bit 出力
[-bit16] : 16bit 出力
[-bit24] : 24bit 出力
[-bit32long] : 32bit 出力 (long)
[-bit32float] : 32bit 出力(float)
[-bit64] : 64bit 出力(double)

出力ビット数を設定します。補間処理はしないので他のフィルタオプションを付けずに 単に出力ビット数だけを上げても量子化雑音の低減は出来ません。


[-phinv] : 位相回転

入力と出力の位相を回転(180度)します。


[-normal db ] : ピークノーマライザ

全体のピーク値を検索して音量を正規化します。db は正規化レベル(デシベル)で、 db の範囲は -192.0 <= db <= 0.0 です。 標準入力モード時はこのオプションは無効です。


[-normal_avg db] : アベレージノーマライザ

全体の音量の平均値が指定した平均値になるように音量を正規化します。 db は 平均(デシベル)で、範囲は -192.0 <= db <= 0.0 です。

標準入力モード時はこのオプションは無効です。


[-normal_rms db] : RMS ノーマライザ

全体の音量の RMS値が指定した RMS 値になるように音量を正規化します。 db (デシベル)の範囲は -192.0 <= db <= 0.0 です。

標準入力モード時はこのオプションは無効です。


[-normal_comp ratio th atk rel rms] : ノーマライズ後のコンプレッサ設定

RMS, アベレージノーマライズ後に通すコンプレッサ(リミッタ)の設定を行います。 ratio th atk rel rms はそれぞれレシオ、スレショルド(dB)、アタック(msec)、リリース(msec) RMS フレーム長です。 -normal_avg オプション指定時はディフォルト値として ratio = 100, th = -2, atk = 5, rel = 100, rms = 0 がセットされています。


[-normal_nolink] : ステレオリンクしない

ノーマライズ時にステレオリンクせずに左右チャンネルごとに別々にノーマライズをかけます。


[-comp ratio th atk rel rms ] コンプレッサ

コンプレッサ(ステレオリンク)を作動します。 ratio th atk rel rms はそれぞれレシオ、スレショルド(dB)、アタック(msec)、リリース(msec)、 RMS フレーム長で、範囲は 1 <= ratio <= 1000, -192 <= th <= 0, 0 <= atk,rel <= 5000, 0<= rms <= 10000 です。 rms = 0 のときはピークコンプレッサになります。


[-ngate_sb th atk rel rms ] サブバンド・ノイズゲート

(注) このオプションは実験中です。 将来的に大幅に仕様が変更される可能性があります。

サブバンド分割(32 bands)を行い、各バンド別にノイズゲートに通します。 th atk rel rms はそれぞれ スレショルド(dB)、アタック(msec)、リリース(msec)、 RMS フレーム長で、範囲は -192 <= th <= 0, 0 <= atk,rel <= 5000, 0<= rms <= 1000 です。

(例) -ngate_sb -60 10 100 5


[-outfile "file"] : 出力ファイル名設定

-nosound-split など、処理中に出力先を切り替える場合の出力ファイル名を設定します。 "file" は設定ファイルです。

例えば outfile.txt に

c:\AAA\a.wav
c:\BBB\b.wav
c:\CCC\c.wav

と設定し、

waveflt2 -outfile "outfile.txt" -split 100 input.wav output.wav

を実行すると c:\AAA\a.wav, c:\BBB\b.wav, c:\CCC\c.wav と順次 ファイルを出力していきます。これ以降は output-003.wav, output-004.wav , ... にデータを出力していきます。


[-headcutting db] : 先頭の無音部カット

データの先頭から db (デシベル)以下の入力が続く限り無音とみなして無音部をカットします。 db は有音レベルで -192 <= db <= 0 の範囲で指定してください。


[-nosound msec db ] : 無音部検知分割

データ中に無音部分を検知すると現在のファイルをクローズして新しいファイルに保存先を切り替えて データを分割します。出力するファイルの名前は指定した出力ファイル名の後ろに分割番号が付いた名前と なります。詳しくは下の-nosound_detail オプションの 項を参照して下さい。

msec は無音時間(msec)で、1 <= msec <= 10000 の間で指定してください。 db で指定したレベルよりも小さい音が msec ミリ秒続いたらファイルを切り替えます。

db (デシベル)は無音レベルで、-192 <= db <= 0 の範囲で指定してください。

DC オフセットずれがひどくてうまくいかない場合は -autoofs オブションと併用してください。 パイロット信号などでうまくいかない場合は -nosound_firと併用してください。

(例)-nosound 3000 -60


[-nosound_detail mode msec db1 db2 ] : 無音部検知分割詳細設定版

データ中に無音部分を検知すると現在のファイルをクローズして新しいファイルに保存先を切り替えて データを分割します。

-nosound msec db は -nosound_detail 1 msec db db と同じ意味になります。

DC オフセットのずれが大きくて分割がうまくいかない場合は -autoofs オブションと併用してください。 パイロット信号などでうまくいかない場合は -nosound_firと併用してください。

msec は無音時間(msec)で、指定した時間の間 db2 で指定した無音レベルよりも小さい 音が続いた場合に無音部と判定してファイルを切り替えます。 1 <= msec <= 10000 の間で指定してください。

db1 、db2 (デシベル)はそれぞれ有音レベル、無音レベルで -192 から 0 までの範囲で指定してください。

mode = 0,1,2 は分割モードの指定です。

(各モードの動作)

モード 0: db2 より小さい音が msec 続いたら強制的に分割。

モード 1: db2 より小さい音が msec 続いたら分割。 db1 以上の部分(有音部)が現れるまでは再分割しない(-nosound オプションのディフォルト値)

モード 2: db2 より小さい音が msec 続いたら分割。 db1 以上の部分(有音部)が現れるまでその前の部分(無音部)はカット。

出力するファイルの名前は指定した出力ファイル名の後ろに番号が付いた名前となり ます。例えば出力ファイルに output.wav を指定すると順に output-000.wav , output-001.wav , output-002.wav,... に分割出力していきます。

(注意) この機能を指定した場合はフェードアウト,ノーマライザは無効になります。 出力ファイルが waveout, stdout(pipeout は除く) の場合はこのオプションは 無効になります。

(使用例) -nosound_detail 1 3000 -60 -66


[-nosound_detail2 mode msec db1 db2 tt1 tt2 tt3] : 無音部検知分割詳細版 2

(注) このオプションの仕様は将来的に 大幅に変更される可能性があります。バージョンアップにより動作しなくなった場合は このオプションの仕様に変更がないか確認してください。

データ中に無音部分を検知すると現在のファイルをクローズして新しいファイルに保存先を切り替えて データを分割します。-nosound_detail より更に詳細に設定可能です。

パラメータ mode msec db1 db2 は -nosound_detail と同じなのでそちらを参照してください。

tt1 は無音部分の判定を開始するまでのサスペンド時間(msec)で 0 <= tt1 <= 14400000 の間で指定します。 分割モードが 0 の場合は分割された瞬間から、モードが 1 と 2 の場合は有音部分が 現れてから tt1 ミリ秒経過するまでは無音部分の判定を開始しません。 -nosound_detail の場合は tt1 = 500 になります。

分割モードが 1 の時に tt2 ミリ秒間無音部分が続いた場合にモード 2 に切り替えて 有音部分が現れるまで無音部を削除します。有音部分が現れたらモード 1 に戻ります。 0 <= tt2 <= 14400000 の範囲で指定します。 -nosound_detail の場合は tt2 = 14400000 になります。 モードが 1 以外の場合はこの値は無視します。

Win32 用録音ツール「ロック音・ミレニアム」から標準入力経由で データを入力している時に tt3 ミリ秒の間無音部分が続くと ロック音の録音を停止します。0 <= tt3 <= 14400000 の範囲で指定します。 -nosound_detail の場合は tt3 = 14400000 になります。 なお-lockonオプションで ロック音のウィンドウハンドルを指定する必要があります。

(例1) ロック音のパイプの設定に

waveflt2 -lockon %L -nosound_detail2 1 3000 -60 -60 5000 10000 20000 stdin "%a"

(例2) 設定ファイル内で-nosound_detail2 を使用している場合はロック音のパイプの設定に

waveflt2 -lockon %L -cfg "config.txt" stdin "%a"


[-nosound_stop msec db] : 無音録音停止

Win32 用録音ツール「ロック音・ミレニアム」から標準入力経由で データを入力している時に msec ミリ秒の間 db デシベル以下の音が続くと ロック音の録音を停止します。0 <= msec <= 14400000、-192 <= db <= 0 の範囲で指定します。 なお -lockonオプションで ロック音のウィンドウハンドルを指定する必要があります。 ウィンドウハンドルが指定されていない場合は無効です。

(例1) ロック音のパイプの設定に

waveflt2 -lockon %L -nosound_stop 10000 -60 stdin "%a"

(例2) 設定ファイル内で-nosnd_stop を使用している場合はロック音のパイプの設定に

waveflt2 -lockon %L -cfg "config.txt" stdin "%a"


[-nosound_fir type low high tap db] : 無音分割前に FIR フィルタを作動

パイロット信号などで無音分割がうまくいかない場合などに無音分割処理の 前にあらかじめ FIR フィルタを作動させます。

type は フィルタタイプで 1 = LPF, 2 = HPF, 3 = BPF, 4 = BSF です。 low,high,tap,db はそれぞれ遮断周波数(低高),フィルタ長、減衰量です。 フィルタ長は奇数の必要があります。

(例) -nosound_fir 1 18000 18000 133 -100 -nosound_detail 2 500 -60 -60


[-split t] :時間指定ファイル分割

指定した時間分のデータを出力すると現在のファイルをクローズして新しいファイルに保存先を切り替えて データを分割します。 t は秒、又は 時:分:秒 の時間表記で指定します。 t の最大値は 72000 秒(20 時間) で、最低値はバッファサイズ(-buf)によって 変化します。例えば

waveflt2 -split 100 input.wav output.wav
又は
waveflt2 -split 0:1:40 input.wav output.wav

を実行すると初めは output-000.wav にデータを出力し、 100 秒(1 分 40 秒)分のデータを出力したあと output-001.wav に出力を切り替えます。続いて output-002.wav,output-003.wav , ... にデータを分割して 出力していきます。

また、-outfileオプションと組み合わせると 任意の出力ファイル名を指定する事ができます。 なお -nosound 系列のオプションと同時に使用できません。


[-split2 n t1 t2 ... tn] :時間指定ファイル分割詳細指定版

指定した時間分のデータを出力すると現在のファイルを クローズして新しいファイルに保存先を切り替えて データを分割します。

n は分割数(1 〜 64)で、時間は t1,t2,.. で指定します。各 t の最大値は 72000 (20 時間) で、最低値はバッファサイズ(-buf)によって 変化します。例えば

waveflt2 -split2 3 100 200 300 input.wav output.wav
又は
waveflt2 -split2 3 0:1:40 0:3:20 0:5:0 input.wav output.wav

を実行すると初めは output-000.wav にデータを出力し、 100 秒分のデータを出力したあと output-001.wav に出力を切り替えます。 続いて 200 秒分のデータを出力したあとに output-002.wav に切り替え、300 秒分のデータを出力したあとに output-003.wav にファイルを切り替えていきます。これ以降は 300 秒毎にファイルを切り替えます。

また、-outfileオプションと組み合わせると 任意の出力ファイル名を指定する事ができます。 なお -nosound 系列のオプションと同時に使用できません。


[-split3 n t1 t2 ... tn] :時間指定ファイル分割(入力時間指定)

指定した時間分のデータを出力すると現在のファイルを クローズして新しいファイルに保存先を切り替えて データを分割します。n は分割数(1 〜 64)で、t1,t2,.. は時間です。 -split2 との違いは時間を出力ファイルの再生時間ではなくて、 入力ファイルの時間の区切りで指定することです。例えば

waveflt2 -split3 3 100 200 300 input.wav output.wav
又は
waveflt2 -split3 3 0:1:40 0:3:20 0:5:0 input.wav output.wav

を実行すると、input.wav は

0 〜 1:40 (0 〜100 秒)区間 -> output-000.wav
〜 3:20 (〜200 秒) 区間 -> output-001.wav
〜 5:00 (〜300 秒) 区間 -> output-002.wav

に順次分割されます。これ以降は 100 (= 300 - 200) 秒毎にファイルが 分割されます。また、-outfileオプションと組み合わせると 任意の出力ファイル名を指定する事ができます。


[-splitkbyte n] :出力データサイズ指定ファイル分割

指定したサイズ(k バイト単位)のデータを出力すると現在のファイルをクローズして新しいファイルに保存先を切り替えて データを分割します。例えば

waveflt2 -splitkbyte 1024 input.wav output.wav

を実行すると初めは output-000.wav にデータを出力し、 1024k byte (1 M) 分のデータを出力したあと output-001.wav に出力を切り替えます。続いて output-002.wav,output-003.wav , ... にデータを分割して 出力していきます。


[-addspc t1 t2] : 無音部付加

データの先頭部と後部にそれぞれ t1, t2 で指定した時間(秒)の無音部分を付け加えます。 指定可能範囲は 0=< t1,t2 <= 5 です。


[-addsin n f1 d1 p1 f2 d2 p2 ...] : サイン波合成

サイン波を合成します。n は合成するサイン波の数(1 <= n <= 16)、 f は周波数(Hz)、d は音量(デシベル: -192.0 <= d <= 0)、p は位相(度: 0 <= p <= 360) です。

(例)

2000 hz,-12 db, 10度 のサイン波と 4000 hz, -6 db, 90 度のサイン波の合成音声を作成

waveflt2 -addsin 2 2000 -12 10 4000 -6 90 -format 10 44100 2 16 1 nosignal out.wav


[-exec "コマンド"] フィルタ処理後実行コマンド (Windows 版のみ)

フィルタ処理後に実行するコマンドを指定します。 フィルタ処理終了時、又は出力ファイル切り替え時に別ウィンドウが開いて実行されます。 pipeout オプションと同様に置換文字列も 使用できます。

(例) waveflt2 -nosound 500 -90 -exec "waveflt2 -normal -.1 -del %^%a%^ %^%a%^" input.wav output.wav


[-exec_nowin "コマンド"] フィルタ処理後実行コマンド (Windows 版のみ)

フィルタ処理後に実行するコマンドを指定します。 -exec と異なりウィンドウを別に開きません。 pipeout オプションと同様に置換文字列も 使用できます。


[-pipeout "コマンド"] パイプ出力コマンド (Windows 版のみ)

標準出力モードでパイプで接続するコマンドを指定します。このオプションを 有効にすると出力ファイル名によらず自動的に標準出力モードになります。詳 しくは下のstdoutの項を参照して下さい。

(例) waveflt2 -silent -fir_lpf 5000 -bit32float -pipeout "oggenc.exe - -o %^%a%^" imput.wav output.ogg


[-pipebuf n ] : パイプバッファサイズ

パイプのバッファサイズを設定します。 範囲は 1 <= n <= 50 で数字が大きいほどバッファを多く取ります。 デフォルトは 20 です。


[-udef1 "文字列"] ユーザー定義文字列 1 (%1)
[-udef2 "文字列"] ユーザー定義文字列 2 (%2)
[-udef3 "文字列"] ユーザー定義文字列 3 (%3)

-pipeout-exec-exec_nowin、 オプションで指定するコマンド内の置換文字列を 定義します。詳しくは 置換規則一覧 & 置換例を参照してください。


[-device n ] : 再生サウンドデバイス(Windows 版のみ)

音声の再生を行うサウンドデバイスを指定します。詳しくは waveoutの項を参照して下さい。


[-text] : テキスト出力

出力音声データを数値化してテキストファイルに出力します。 出力が 64 bit の場合は無効です。

(例) waveflt2 -text input.wav output.txt


[input.wav] : 入力ファイル(標準入力 stdin、無音ファイル作成 nosignal)

入力ファイルを指定します。

stdin を指定すると標準入力からデータを読み込みます。 stdin を指定した場合は自動的に エンドレスモードになります。

nosignal を指定すると無音ファイルを作成します。フォーマットは-format オプションで指定します。

例えば 44100 hz, 2 チャンネル、16 bit 、10 秒の無音ファイルを作成するには 次のように指定します。

waveflt2 -format 10 44100 2 16 1 nosignal out.wav


[out.wav] : 出力ファイル(標準出力 stdout , サウンドデバイス出力 waveout, NULL 出力 null)

出力ファイルを指定します。

出力ファイルに waveoutを指定するとサウンドデバイスにデータを出力します(Windows 版のみ)。

再生デバイスは -device オプションで指定します。 -device オプションを指定しなければ標準の再生デバイスを用いて再生します。 例えば 2 番目のデバイスで再生を行う場合は次のように指定します。

waveflt2 -device 1 input.wav waveout

null を指定すると実際には出力せずにフィルタ処理だけを行います。

また stdout を指定すると標準出力にデータを出力します。 なお、Win9x の DOS 窓のパイプは疑似パイプであり中間ファイルを作るため stdout は 指定せずに -pipeout オプションを使用して下さい。

Windows 版は "-pipeout" オプションによって直接データを渡すコマンドを設定できま す。-pipeout "コマンド" によって指定して下さい。-pipeout オプションを付けると 自動的に標準出力モードに変わります。

ここで"コマンド" のところで出力ファイル名を置換して引数に渡すことが出来ます。 置換に関して詳しくは 置換規則一覧 & 置換例を参照してください。 例えば

waveflt2 -pipeout "foo.exe %^%a%^" input.wav out.wav

waveflt2 input.wav stdout | foo.exe out.wav

と同じ動作になります。さらに

# config.txt
-pipeout "foo.exe %^%a%^"
と設定ファイル(config.txt)に書いて

waveflt2 -cfg "config.txt" input.wav out.wav

としても上と同じ動作になります。この様に設定ファイルを利用すると見かけ上 waveflt2 が input.wav をフィルタに通して out.wav を出力している感じになるので 分かりやすくなります。従って-pipeout オプションを使う場合は出来るだけ 設定ファイルを使用する事をお勧めします。