初音ミク:ベンドの深さと自動ベンド
投稿日:2007-11-21 Wed
散々既出だと思いますが、VOCALOID2の自動ベンドについて調べてみようと思います。自動ベンドというのは、音程上昇・下降時にVOCALOID2が勝手にベンドをかけてしまうことです。(私が勝手にそう呼んでいるだけなのですが)
調査方法は次のとおりです。
・VOCALOID2でWAVEファイルを出力
・WaveTone 1.3(フリーソフト)でWAVEファイルを入力
・倍音除去(単音用)コマンドを実行する。
するとこんな感じで音程を確認することができます。

■全体的な傾向はどうなの?
全体的な傾向をざっくり調べたところ、次のことが分かりました。
(1)ベンドの深さを大きくすると、ベンドの幅が大きくなる。
(2)ベンドの深さを0%にしても、自動ベンドは無くならない。
(3)テンポが変わってもベンドの幅(時間、ms)は一定。
(4)ノートが長いほど、ベンドの幅は大きくなる。
(5)ノート間の音程差が大きいほど、ベンドの幅は大きくなる。
(6)VELの変化はベンドの幅に影響しない。
(7)DYNの変化はベンドの幅に影響しない。
(8)PORを変えると、ベンドの開始時間を制御できる。
64->0 ベンドの開始が早くなる。
64->127 ベンドの開始が遅くなる。
■もう少し詳しく調べてみよう
以上のことが分かったところで、本格的な調査を進めてみます。
自動的なベンドの何が悪いかというと、ベンドの存在により、本来の音程での発声が
短く、またはなくなることで、音痴になってしまうことです。
ですから、各種パラメータを変化させ、ベンドがノート中のどれくらいの割合を占めているかを調査するのが良いと考えました。
先の調査で、ベンドの幅に影響するパラメータはベンドの深さ、ノートの長さ、ノート間の音程
の3つと分かっていますので
・ベンドの深さ(0%/4%/6%/8%/10%)
・ノートの長さ(1分/2分/4分/8分/16分/32分)
・ノート間の音程(+1~+12/+24)
のパラメータを組み合わせ、ベンド幅の変化を測定します。
VOCALOID2でのデータ作成では、VEL64、ビブラート無し、コントロールパラメータは全て初期値の状態とします。発音記号は a[a] のみとします。
WaveToneでの解析結果の測定ですが、自動ベンド発生時には下図のような形状になることが分かっているので、
・先行ノートの先頭ベンド幅
・先行ノートの末尾ベンド幅
・後続ノートの先頭ベンド幅
の3つを測定することにします。

WaveToneの解析オプションは次のとおりとします。この設定で12.5msの精度が確保できます。
・1秒あたりのブロック数:80
・半音あたりのブロック数:1(半音)
・音程の範囲:1~7
・サンプル数:20
・解析の精度:高精度(低速)
■測定結果
測定結果から綺麗な計算式でも算出できればいいなと企んでいたのですが、値にムラが多く、とても無理そうです。
ですので、とりあえず今回の測定結果をベースに、ベンド幅がノートを占める割合を計算するツール(エクセル形式)として仕上げてみました。測定結果もこの中に入っています。
スクリーンショット:

ダウンロードはこちら:自動ベンド率計算機 Ver0.1
テンポを入力すると、そのテンポにおける各音符のベンド率を計算し、そのパーセンテージで◎/○/△/×を表示します。パーセンテージ判定の閾値もシート上で変更できます。
△ PAGE UP