VS4Uの内部処理と周波数表の仕組みUTAU向けエンジン「VS4U」の内部処理と周波数表の仕組みについて解説します。伸縮器(resampler)とは伸縮器(resampler)は原音・周波数表を読み込み、パラメータに従い音声ファイルを出力します。伸縮器は主に以下の処理を行います。フォルマントの変更(gフラグの適用)ピッチの変更(音階、tフラグ、モジュレーション、ピッチベンドの適用)タイムストレッチ(長さ、子音速度、オフセット、子音部、ブランクの適用)その他(音量、フィルタ等)※処理内容はエンジンによって異なります。VS4Uの内部処理VS4Uの内部処理は、以下の5つに分けられます。時間方向に波形を伸縮します。このとき波の周期も変化するため、ピッチが変化します。倍音の周期にも影響があるため、フォルマントが変化します。処理2:1波長単位での再配置1波長単位に分割し、間隔を変えて配置します。間隔の変更に応じて長さ(再生時間)が変化します。フォルマントはあまり変化しません。波の数が変わるため、長さ(再生時間)が変化します。波の周期は変わらないため、ピッチ、フォルマントは変化しません。上記処理1〜3を組み合わせることで、ピッチ、フォルマント、長さを自由に変更できます。変更する対象が3種類、独立な操作が3種類あるため、各操作における変更量が自動的に決まります。(要するにTD-PSOLAです。フォルマントを修正します。音量や周波数特性が変化します。ピッチ、長さ(再生時間)への影響はありません。フィルタによってはフォルマントが多少変化することがあります。上記のピッチシフト・タイムストレッチの処理によって、原音に含まれる各周波数成分がどのように変化するかを見てみます。波長が分割サイズとほぼ同じ場合(基音の場合)ピッチシフト処理によって波の数が変わらず、波長が変化するため、正常にピッチシフトを行うことができます。タイムストレッチ処理を行っても波形が崩れません。波長が分割サイズよりも短い場合(基音よりも周波数が高い場合)ピッチシフト処理によって波長があまり変化せず、波の数を増減させることでピッチシフトの影響を吸収します。タイムストレッチ処理を行っても波形が崩れません。波長が分割サイズよりも長い場合(基音よりも周波数が低い場合)ピッチシフト処理がされているように見えますが、タイムストレッチ処理によって波形が崩れてしまいます。以上より、以下の3点が言えます。基音(赤)は正常にピッチシフト、タイムストレッチの処理が行われる。倍音(黄色)はピッチシフトの影響を受けにくく、フォルマントが維持される。正常にタイムストレッチの処理が行われる。基音未満(青)は不定。タイムストレッチの影響を受けやすい。周波数表とはVS4Uは「処理1:波形の伸縮」および「処理2:1波長単位での再配置」で1波長分の波形の切り出しのために、原音の基本周波数を使用しています。(周波数表の周波数から分割サイズを算出します。基本周波数の解析には非常に多くの計算量が必要であるため、時間がかかりますが、一度解析しておけば原音が変わらない限り再度解析する必要はありません。このため、初回に解析結果を周波数表に保存しておき、次回以降は解析処理を省くことで処理を高速化します。※周波数表に保存されている情報はエンジンによって異なります。ピッチマーク、音声の周期成分/非周期成分を保存しているエンジンもあります。基本周波数の推定1オクターブ下や1オクターブ上に誤推定されることがあります。長くなるので推定方法に関する説明は省略します。周波数表の周波数が本来の周波数よりも低い場合、本来の周波数(=ピッチシフトしたい周波数)がフォルマントが維持される領域に入ってしまいます。このため、ピッチを変更できなくなります。タイムストレッチは可能です。A4のサイン波の周波数表をA2に書き換え、A3に配置すると以下のようになります。ピッチをA2からA3に1オクターブあげていますが、A4はフォルマントが維持される領域であるため、ピッチが変更されずA4に聞こえます。ピッチシフトしたうえで誤推定がないか確認する必要があります。タイムストレッチもピッチシフトもできない領域に入ってしまいます。A4のサイン波の周波数表をA6に書き換えA6に配置し、時間方向に引き伸ばすと以下のようになります。タイムストレッチ処理により本来存在しない周波数成分が発生します。自動的にビブラートをかけられるようにするなどの目的で意図的にずらすと正常にピッチシフト、タイムストレッチできなくなります。周波数表は原音に忠実であるべきです。息音素について周波数表を非常に低い周波数に書き換えることで、息音素に含まれるほとんどの成分をフォルマント維持領域に入れることができます。ピッチシフトはできませんが、ノイズ等が発生せず生成できるようになります。タイムストレッチにもある程度対応できるようになります。VS4Uには、息音素用にWフラグが用意されています。息音素の劣化を抑えることができます。2014/08/31。