音楽とかソフトとか

setParam ver.2.0-b120813を上げました→ダウンロード

<主な変更点>

【単独音パラメータ自動推定について】
- (追加) 推定に必要な各パラメータ値をwav毎に自動設定できるようにした。
- (追加) 特定の音の先行発声を求める際にはハイパスまたはローパスフィルタをかけて求めるようにした。
- (変更) 設定窓で「パワー抽出間隔」を削除し、「推定間隔」にした。
この値に合わせてF0とパワーを抽出するので、基本的には値が小さい方が高精度になる。
- (修正) 子音部が無声区間(F0値の無い区間)より左にいかないようにした。
- (修正) wavがステレオだった場合に対応した。
- (修正) 自動推定を一度実行し、設定値を変更して再実行した場合に先行発声がずれるバグを修正した。

【その他】
- (修正) 詳細設定でパワーやF0の設定値を変更し「OK」「適用」を押した直後に、変更が一部反映されないバグを修正した。




今回の更新の大部分は単独音パラメータ自動推定に関するものです。

まず以前のバージョンでは、設定窓で、推定のためのパラメータを沢山指定する必要がありましたが、今回それらのパラメータをwav毎に自動設定するようにしてみました(これでようやく完全「自動」推定と言えそうです)。

設定窓は以下のようになっています。
単独音パラメータ自動推定の設定窓

ほとんどの欄はデフォルトで無効になりました。欄を有効にしたい場合(以前のバージョンの動きに戻したい場合)は、「以下の各パラメータをwav毎に自動設定」のチェックを外して下さい。


次にハイパス・ローパスフィルタについてですが、以前の自動推定では「な」行や「ま」行など、子音の音量が大きくかつ子音にF0値のあるような音の先行発声をうまく推定出来ませんでした。

「な」「ま」行の子音は周波数の低い音(スペクトルで見ると下の方が黒く上の方は白い)です。そこでハイパスフィルタを通せば、子音の音が弱まり母音開始地点(先行発声)を求められるのではないかと考えました。

いくつかの音源で試した所、「な」「ま」行は概ねうまく動いているようです。「ら」行も良くなったように思います。「が」「ざ」「だ」行辺りは音源次第でうまくいったりいかなかったり、、といった具合でした。いずれにせよ以前のバージョンより悪くなっているというケースは無さそうでした。


今回作った設定窓の挙動や推定の仕方などには、また変更を加えるかもしれません。
スポンサーサイト

PageTop

コメント


管理者にだけ表示を許可する
 

エラーログが出てきます

連続音のパラメーター推定の時、途中で下記のエラーログが出てきます

can't read "paramU(7,6)": no such element in array
can't read "paramU(7,6)": no such element in array
while executing
"split $paramU($ftmp,6) " ""
(procedure "autoAdjustRen2" line 33)
invoked from within
"autoAdjustRen2 [expr $paramUsize - [llength $morae]] [expr $paramUsize - 1]"
(procedure "doGenParam" line 105)
invoked from within
"doGenParam"
invoked from within
".genParam.f(6).bs invoke"
("uplevel" body line 1)
invoked from within
"uplevel #0 [list $w invoke]"
(procedure "tk::ButtonUp" line 24)
invoked from within
"tk::ButtonUp .genParam.f(6).bs"
(command bound to event)

こういうのってどう対処すればいいのでしょうか…(´・ω・`)

ヤミカゼ | URL | 2012年08月19日(Sun)18:54 [EDIT]


Re: エラーログが出てきます

エラーログありがとうございます。
取り急ぎエラーを回避するには、推定の際に「自動推定2」のチェックを外して実行して下さい。

なおエラーの出た原因は頂いたログを見た限りでは特定できませんが、wavファイル名の分解に失敗したのではないかと思います。

nwp8861 (耳ロボP) | URL | 2012年08月19日(Sun)20:07 [EDIT]