リンがアイマスキャラのモノマネに挑戦するまで

この文書は,動画「リンがアイマスキャラのモノマネに挑戦」の解説です。

今回は突然の思ひつきにより,ボーカロイドの「喋らせてみた」に初挑戦してみましたので,その過程を記しておきます。

ボーカロイドを喋らせるのは難しいと公式のヘルプにありますが,きちんと手順を踏んで行けば,かなり滑らかに喋ってくれます。この解説が,ボーカロイドを喋らせるのに挑戦する方の手助けになれば幸ひです。

作業工程

[作業の流れ図](流れ図のSVG版)

蒼い鳥のレポートと同様に,作業の流れ図から記しておきます。動画が完成するまでの作業は,音声・画像・動画合成の大きく3つに分れますが,今回は主に音声作業について解説します。

1. 音声作業

今回の音声は,MA06のボーナストラックに収録されている,亜美真美のモノマネをなぞる形で作成しました。その方法を簡単に言へば,「人力ぼかりす」です。ぼかりす(Vocalistener)は,音声ファイルから音長・音高・音量を自動的に推定し,ボーカロイド用打ち込みファイル(VSQ)を作ってくれるものですが,この推定する部分を手動でやってやらうといふ魂胆です。

[WallToneの描写]

具体的には,WaveToneで元となる音声ファイル(お手本)の音高・音量を解析し,その結果をWallToneを使ってボーカロイドエディタに重ねて描写し,これをなぞる様に手動で音符を配置して行きます。これは言葉で表すより,図を見ていただいた方が早いかと。

この方法は,お手本となる音声ファイルがあればどんな喋りにも応用できますので,素材が無ければSofTalkの合成音声を使ってみたり,自分で声を収録したものを使ったりしても良いでせう。自分の声でやったら本当に「ぼかりす」っぽい作業になりますが。

1.1 打ち込みの手順

ボーカロイド打ち込み作業は,詳しくは次の様な手順で行ひました。

A. 音高・タイミング・ビブラート
まづテンポを決定し,以降動かさない様にします。私の様に,クオンタイズを切らないで音符を配置するなら,タイミングを細かく調整できる様に,適度に速くしておけば良いかと思ひます。
今回はテンポM.M.=210としました。この場合,音符間を3/32拍まで離しても音は繋がりますので,これより短い無音部分を表現したい場合,後にDYNで調整します。
そして先に説明した様に,音符をなぞる様に配置してゆきます。ビブラートは基本的に切っておきますが,音符を分割できないほど声が細かく震へる所では,NormalやExtreme,又はFastを長さ100%にして掛けてゐます。
B. ベンドの深さ・ベンドの長さ・ミキサー
大体打ち込み終ったら,デフォルト歌唱スタイルをトラック全体に設定し,全体を通して一番良く聞こえる歌唱スタイルを探します。(音符ごとの微調整は後でやります。この辺はすっぴん調教に通じるものがあります)
今回の方法はピッチベンド(PIT)を弄らないので,音高が滑らかに変化する様に,ベンドは少し強めにし,ポルタメントはオンにするのが良い様です。今回はベンドの深さ=8%,長さ=10%,ディケイ=アクセント=50%とし,ポルタメントは上行・下行形ともオンにしておきます。
リンact2は大人しい音源なので,ミキサーは基本的に最大出力の+5.5dBにしておきます(マスタートラック・各トラックのどちらも)。その状態でWaveに書き出して,音割れの無いことを確認してゐます。これは最初に値を決めたら,以降動かさない様にします。
ちなみに,ここまでで作成したVSQは,他のボーカロイドにも或る程度共通で使へます。この後の調整は,どちらかと言ふと各ボーカロイドに特化したものになります。
C. 発音記号・音符分割・VEL
デフォルトの歌詞入力では上手く発声してくれない部分のみ,これらを調整します。詳しくは次節「打ち込みの工夫」で述べます。
D. DYN・ディケイ・アクセント
実はここまでの手順を踏むと,ダイナミクス(DYN)を調整しなくても,かなり自然な喋りに聞えます。そのため質より速さを優先する場合,すっぴん調教の様に,語尾のみDYNを絞る調整で済ませても,十分に行けると思ひます。
とは言ってもDYNを調整すれば,その分より良いものができますので,今回はぼかりす方式で調整してゐます。ただ,ぼかりすの様に細かい調整ではなく,直線的にしか調整してゐませんが,普通にはこれで十分です。
[RadioLineでの音量比較図]
具体的には,まづボーカロイドのWave書き出ししたファイルとお手本のファイルを,RadioLineで並べて配置します。それらを目で見て・聞き比べて,元のファイルの音量に近づく様にDYNを調整して,又Wave書き出しして…を,自分の納得行くまで繰り返します。慣れるまでは,DYNをどれだけ調整すれば音量がどれだけ変るのかが解らずに苦労しますが,やはり調整したほうがより自然に聞えます。
アクセントは今回あまり弄らなくても十分でしたが,微調整程度に使ってゐます。但し90%以上等の極端な値を使ふと,却って不自然になります。
ディケイは,今回の方法では各音符が短く,あまり効きませんので,デフォルトの設定から弄ってゐません。
E. GEN
本来は最初にジェンダーファクター(GEN)を決めてから音量調整等をやるべきなのですが,今回私が「各キャラごとに似合ったGENに変へて行ったら面白さう」と思ひついたのが遅かったので,GEN調整が最後になってゐます。
[GEN vs. AGE 領域図](GEN-AGEマップのSVG版)
これは「そのキャラに合った声か」だけで決めるしかありません。基本的に幼いほど低いGENが似合ひますが,極端な話,真などの例外はあります。調整範囲はデフォルト値の64に対して32〜96位が適当で,これを超えると人の声としては不自然になります。
因みに春香がデフォルトの64なのは,勿論「普通」だからです。寧ろ春香を基準にして,他のキャラクタのGENを決めました。

尚,ここに記さなかったコントロールパラメータ(BRE,BRI,CLE,OPE,PIT,PBS)は一切弄ってゐません。実は私がPITを弄る方法が苦手で,何故かボーカロイドが必ず音痴になってしまふので,今回は音符の配置だけでどうにかそれらしく作ってゐます。

1.2 打ち込みの工夫

「あい」を滑らかにする
リンレンが「あい」を滑らかに発音できないのは有名なネタですが,リンレンact2の発音を確かめた動画でも触れた通り,発音記号を[a j i]にすれば,滑らかな「あい」を実現できます。([a h\ i]にする方法もあります)
[滑らかな「あい」]
一般には,「あ」+「い」を「あい」用の音符+「い」に分割し直し,「あい」用の音符の発音記号を[a j i]にすれば良く,今回も全篇に亙ってその方法を採用してゐます。「い」が短い場合は,「あい」全体を1音符に纏めて[a j i]としてもOKです。(正直に言ふと,こんな小細工をしなくとも,デフォルトで滑らかな発声をして欲しいのですが)
実はリンact2には「い」+「い」が滑らかに繋がらない短所もある(レンact2は大丈夫)のですが,これはどうやら発音記号では解決できさうに無く,今回は対処せずに通してゐます。そのため,美希の「ハニー」や,亜美真美の「にいちゃん」の「い」がブツブツしてゐるのが解ると思ひます。
「いい」の発音問題にまともに対処するなら,「い」の分割をできるだけ少なくする(発音が連続するギリギリまで音符の間隔を空ける)か,「い」を単音にしてPITで音高を調整する方法が考へられます。
ちなみに,「えい」も同様に[e j i]+[i]としてゐる所があります(やよい)。
語尾を弱く伸す
[あい[a j i]+(ふ)[p\]]
「あい」や「へ」を伸すのに,「ー」ではアクセントが強すぎる場合,語尾に短く[p\]を添へる方法があります。今回は真の「へっへーん」や,伊織の「へんたーい」で使ってゐます。リンact2のみ有効な方法の様です。
詰った発音を滑らかにする
リンact2はサ行の滑舌がact1より良くなった代りに,サ行の前の音が少し短く,詰って発音されます。レンact2ではこの傾向が顕著です。これは,サ行の発音の前にタメを作り,子音を長く発音しようとするからだと思はれます。
この詰った発音が気になる場合,発音が短くなってゐる音符を分割する方法があります。分割する時は,後ろの音符を短くします。例えば「プロデューサー」の「デュー」なら,音符を「デュ」+「ー」に分割し,一番後ろの「ー」を2/32拍程度にしておきます。
[音符分割方法3種類]
論より證據で,適当に打ち込んだ比較用ファイルの発音(APE)を聞いてみてください(VSQも置いておきます)。分割無し,後ろを1/32拍に分割,2/32拍に分割,の順です。但し,テンポM.M.=210とします。
1/32拍に分割した場合,サ行の前の音は確かに長くなりますが,逆にサ行が聞き取り辛くなってゐます。この場合は2/32拍に分割するのが良い様ですが,いつもその長さが良いとは限らないので,試行錯誤が必要です。
因みに何故これで上手く行くのかといふと,ボーカロイドは音符を分割されると,できるだけ分割された音符を等しく発音しようと頑張るので,分割前には詰って無音になってゐた部分に音符が来ることで,違った発音ができるのだと思ひます。
適当ビブラート
先の節でも述べましたが,ビブラートは基本的に無しで,要所でのみ使ってゐます。極端な例では,か細く震へる雪歩の声にはFastのビブラートを多用してゐます。
その他,音符分割では追ひつけないほど声が速く震へる部分で,ビブラートを適当に掛けてゐます。本当に適当なので,使ったビブラートの種類もバラバラです。
んっふっふー
亜美真美の得意科白「んっふっふー」の「ふ」は,長音で伸す(「ふ」+「ー」)のではなく,「ん」で伸してゐます(「ふ」+「ん」)。鼻に掛けて発音するといふか,ハミングを伸す様な意識です。
ブレスの使ひ分け
ブレスは歌詞が直感的でなく,又音量も小さいので,打ち込みに苦労します。そこで,はっきり聞えるブレスだけを入力するのが効果的でせう。今回は馬鹿正直にできるだけ打ち込みましたが。
ブレスは,音符が長いほど発音の出だしが遅れることに注意が必要です。これは無声化した「す」でも同じ傾向でしたので,ボーカロイドにとっては子音のみ発音してゐる扱ひなのかも知れません。
次にリンのブレスについて,簡単なメモを記しておきます。ブレスはact1・2で共通です。[br5]は今回未使用です。
[br1]: 少しハッキリした息継ぎ。汎用。
[br2]: 息継ぎと言ふよりは,言葉と共に静かに漏れる息。美希の「あふぅ」等。
[br3]: 勢い良く吸ふ音。伊織・亜美真美で使用。
[br4]: 噴き出し笑ひの様な声(あずさ)。鼻を啜る声(雪歩)。
「す」の無声化
日本語では時たま「す」が無声化して母音が脱落しますが,これは発音記号を[s M]から[s]とすると再現できます。但し,発音のタイミングが少し後ろにずれて短くなるので,音符の頭を少し手前に伸して来ると良いでせう。
ボーカロイドにとって楽な発声を心掛ける
音符が連続する場合,各音符の末尾を少し短くして,音符と音符の間を少し離すのがポイントです。あまりキチキチに音符を配置すると,ボーカロイドができるだけその音高を保ったままギリギリの長さまで発声しようとして,音符間の繋がりが不自然になります。逆に言へば,音符間に少し隙間があると,その間の発音はボーカロイドが自由に決められますから,より楽で自然な発声になります。
これを裏返せば,急に(無理に)変化する声を作りたい場合は,音符の間を詰めるのもアリです。
また,アクセントはデフォルトの50%が一番自然な発声になるらしく,0〜10%にすると弱い声を何とか出さうとして,逆に音量が凸凹した声になります。長音はアクセントが低いほうが良いかと思ってゐたのですが,あまり考慮しなくて良かった様です。

1.3 音響加工

ボーカロイドからの音声出力が納得できるものになったら,音響効果を加へます。と言っても,今回はSoundEngine Freeの1ポイントイコライザーを2回掛けただけです。

具体的には,9870Hzを+4.4dB,249Hzを-1.0dBとしてゐます。いづれも幅は-0.5です。要は,リンact2の籠り声を改善するのに高周波成分を持ち上げ,低周波成分を抑へてゐます。

前はCLEを0から32程度に上げる方法も併用してゐたのですが,イコライザで高周波成分を持ち上げるだけにした方が,どうも耳障りなノイズが少なさうなので,今回はCLE=0のままです。

尚,SoundEngine Freeでは「幅」に指定する数値が小さいほど,イコライザが効く周波数の範囲は広がることに要注意です。「幅」=「鋭さ」と考へれば腑に落ちるでせう。

2. 画像作業

音声はこれまでの作業で良いとして,動画を作るには画像のことも考へなくてはなりません。LipSyncの口パクを利用することは直ぐに決めましたが,これだけでは寂しいので,サムネイル用の画を別に用意しようと思ひ,亜美真美のポーズをMikuMikuDanceで再現することを思ひつきました。

MikuMikuDanceを弄るのはほぼ初めてだったので,試行錯誤しながら静止画を出力しました。方法としては,たまたま手元に有ったアイドルマスターツインズのパッケージ絵をMikuMikuDanceの背景に表示し,半透明表示を駆使しながら,亜美真美のポーズをリンでなぞりました。

標準モデルのリンではウインクで右目しか閉ぢられないことが判明したので,元画像通りに左目を閉ぢてウインクできるモデルを探した所,「リン ver1.5 あにまさモデル 柊ゲオルク改変バージョン」に辿り着きました。

モデル決定後は,足のIKの機能が良く解らなかったので切っておき,ひたすらボーンを動かして,ポーズを再現しました。最後に光源の位置を調整し,縁を少し細くして見た目を柔らかくして,完成としてゐます。

今回MikuMikuDanceを弄ってみて,静止画を出力するためにこれだけ手間が掛るのなら,動画出力まで辿り着くのは気の遠くなる様な作業だなと感じました。

3. 動画合成作業

動画作業ではLipSyncによる口パクが大活躍です。口パク用キャラクタだけでなく,背景のフェードイン・アウト機能まであるので,今回の動画作成には必要十分でした。

口パクでは,nagamonさんの「鏡音リン口パク素材 ver.1.0」が表情多彩で,動画に華やかさを出せました。真のω口もバッチリ再現。

字幕泣いてキス(英訳α版)の物を流用し,出来上がった音声ファイルをSoundEngine Freeで見ながらタイミングを測り,手動でassファイルを打って行きました。因みにGEN-AGEマップは,AAの要領で,等幅の文字を何行か積んで表現してゐます。

字幕をVirtualDubModで焼き付けたら,最後にFLVエンコードを行ふのですが,今回はほぼ静止画であり,また音声もモノラルなので,エコノミーモードを回避できる低いビットレートを設定しても,十分な品質の動画が出来上がりました。

参考までに,映像=VP6,2pass,180frames/keyframe(=6秒ごとのキーフレーム@30fps),音声=LAME, AVR, monoの指定で,ビットレート指定を映像360kbps,音声128kbpsとした所,完成品のビットレートは映像208kbps,音声87kbpsとなりました。

4. 完成版とオマケ

以上の様に音声と画像を合成し,完成した動画がこちらです。

オマケとして,VSQ,APE素材,MMF着メロ等,先の流れ図で★を附したファイルを纏めて置いておきます。これらのファイルについて,私が権利を主張する積りは一切ありませんので,元ネタに敬意を払ひながら,良識の範囲内で御使ひください。

着メロはauの方なら普通に設定できると思ひますし(SDカードの\PRIVATE\AU_INOUTフォルダに入れた後,携帯電話のメニューで自動振り分けする),実際私も自分の携帯電話に入れてニヤニヤしてゐますが,他のキャリアでも行けるかも知れません。

附記

使用ソフトウェア・素材一覧

今回の動画を作るにあたり,次の一覧に示したソフトウェア・素材を利用させて戴きました(敬称略)。ここに感謝の意を記します。

音声関係
下田麻美,他: THE IDOLM@STER MASTER ARTIST 06 双海亜美・真美
あっきー: WaveTone ver.1.53
ないしょ!: WallTone 0.05 (はちゅねのないしょ Ver.0.16)
YAMAHA: VOCALOID2 Editor Version 2.0.12.2J
クリプトン・フューチャー・メディア: 鏡音リンact2 (鏡音リン・レン)
Cycle of 5th: Radioline Free ver.1.09
Cycle of 5th: SoundEngine Free ver.4.30
画像関係
樋口優: MikuMikuDance (Multi-Model Edition) Ver.5.22
リン ver1.5 あにまさモデル 柊ゲオルク改変バージョン
Voc@loidM@ster祭り3 ロゴ2
柏木泰幸: PictBear Version 2.00 RC5
Y.Nomura,Ezi,PCNOM: FLAX (Yukari Ver.0.997)
動画合成関係
kbinani: LipSync 2.4.8
nagamon: 鏡音リン口パク素材 ver.1.0
亀井哲弥: xyzzy version 0.2.2.235
Avery Lee, et al.: VirtualDubMod 1.5.10.2
Ben Greenwood, et al.: Lagarith v1.3.20
KENくん: AviUtl version 0.99c3
茂木和洋: FLV (VP6/MP3) 出力 AviUtl プラグイン ver. 0.1.6
The LAME Project: LAME 3.97 Release ACM codec
Y.OzVox: YOzFont04 Version 12.02 (TTC版)
その他
YAMAHA: SscMA3 Version 1.2.0
yana: えせ着うたフロントエンド SMAF版 1.5.10.0
Matthew T. Ashland: Monkey's Audio 3.99