5音だけでキャラに歌わせる
この記事は、1キャラの「あいうえお」の5音さえあればそのキャラが歌ってるように聞こえるかもという
↓動画で使用した音声の作成方法を解説する記事です。
①この方法をすることになった経緯
ある時、私はデレステの「Brand new!」のコミュで出てきた5人に「たべるんごのうた」を歌わせる動画を作りたいなと思った。
歌わせる方法として人力VOCALOIDを考えたが、以下の2つ理由から無理という結論になった。
①前に人力ボカロを作った時、抜き出した音声素材は2人分で約400個。今回の場合だと5人なので、概算音声素材約1000個で多すぎてやりたくない。
②歌わせたい5人(辻野あかり、砂塚あきら、桐生つかさ、夢見りあむ、白菊ほたる)は声が最近付いたキャラばかりで、音声素材を1人200個確保することは不可能。
なので私はこうすることにした。
人力ボカロやUTAUで使われている手法「子音結合」を使用し、「他人の子音」に「歌わせたいキャラの母音(アイウエオの5音)」をくっ付ければいいんじゃないか?と。
それを実践したのが今回の動画だ。
また、今回の手法は「他人の子音」に「歌わせたいキャラの母音」をくっ付ける手法ではあるが、一般的な人力VOCALOIDの「1キャラ音声のみの人力ボカロ」でも応用可能な方法を合わせて説明するため、本記事では人力ボカロという言葉の検索除けはしていない。
②「他人の子音」に「歌わせたいキャラの母音」をくっ付けるとどうなる?
疑問の答えは↓の研究にある。
(PDF) 子音部・母音部の入れ替えが個人性知覚に及ぼす影響について
読むのが面倒という人用に、上の研究の概要と結論をざっくり書くと、
研究の概要は「子音と母音の発音者が違うと、どっちの発音者の声に聞こえるの?」というもので、
研究の結論は「母音の発音者の声に聞こえる」ということで終わっている。
つまり、「他人の子音」に「歌わせたいキャラの母音」をくっ付けるとどうなる?
というと、「歌わせたいキャラの声に聞こえる」ということである。(よし、楽しく話せたな)
③どうやってこの手法を実現させるか
動画の音声は↓の流れでこの手法を実現させている。
⑴NEUTRINOで仮歌を作る
⑵Audacityで5人の5音(あいうえお)を抜き出す
⑶Audacityで「⑵」の音声を並べる
⑷VocalShifterで「⑴」と「⑶」の音程を揃える
⑸Audacityで子音発音者がNEUTRINO、母音発音者が5人になるようにする
それぞれの工程の詳細については次の項目で説明する。
⑴NEUTRINOで仮歌を作る
NEUTRINOで東北イタコ、東北きりたんに「たべるんごのうた」を歌ってもらいます。
私の超低スペックノートPCでも大丈夫な、NEUTRINOに歌わせる時の手順を簡単に紹介。
手順1:ネットに落ちている「たべるんごのうた」のMIDIを参考にしつつ、MuseScore上で↓のように歌詞付きで打ち込む(この時、前後に全休符を付けておく)
手順2:musicxml形式でエクスポートする
手順3:GoogleドライブにNEUTRINO(オンライン版)を入れておき、musicxmlを入れるフォルダに手順2のファイルを入れる
手順4:Googleドライブ上でNEUTRINO.ipynbを開き、Colaboratory上で実行する
手順5:outputフォルダに出力されたnsfファイルを聞いてみて、音割れがなければ完成!
NEUTRINOでなくても、UTAUやボーカロイドで多分代用可能。
音割れが多少あってもなんとかしたい場合は↓記事を試す。
⑵Audacityで5人の5音(あいうえお)を抜き出す
Audacityで「Brand new!」5人の5音(あいうえお)を抜き出します。
手順1:↓記事の方法で5人の「あいうえお」を出来るだけ多く抜き出す(今回の動画用に抜き出した数は5人分合わせて270音くらい)
【UTAU】UTAU式人力ボカロ作成手順まとめ#手順1:あいうえおだけ音声抜き出しする
手順2:↓記事の「真っ直ぐなオレンジ線」が表示される音声を選別する
【UTAU】UTAU式人力ボカロ作成手順まとめ#UTAUで抜き出した音声を全て原音設定する
手順3:選別した音声をUTAUで歌わせてみて、もっとも聞こえの良い「あいうえお」を5人分選ぶ(この時、1人分の音声は音程の近い音声を選ぶようにする。また、調声はVocalShifterでやるので、UTAUに入れたことでキャラの声の特徴が消えても気にしないようにする。)
⑶Audacityで「⑵」の音声を並べる
Audacityで⑴の母音発音タイミングに合うように、⑵で抜き出した音声を並べます。
Reaperで並べてもいいけど、↓記事の設定にしておけば子音と母音の境がわかりやすいのでAudacityを使用。
手順1:↓記事を参考に、子音と母音の境を知っておく
手順2:Audacityを利用して↓画像のように、⑴で作成した音声(トラック:itako1.00)の子音と母音の境をラベルで区切り(ラベルトラック)、⑵で作成した音声(トラック:a,i,u,e,o)を並べて、母音部のみ(taberungoならaeuo)の音声ファイル出力をする
1キャラ音声のみの人力ボカロの場合、音声ファイルを並べて子音部のみ(taberungoならtbrng)の音声ファイルを出力しておきます。
⑷VocalShifterで「⑴」と「⑶」の音程を揃える
手順1:↓記事を参考にして⑴の音程に合うよう、⑶の音程を調声する
【VocalShifter】VocalShifter式調声(音程合わせ)のやり方
手順2:手順1で調声した音声全体のピッチを上下させ、音声が綺麗に聞こえる音程に調声する(どうしても音声が綺麗にならずに壊れる場合は、手順1参考記事の手順EXを行う)
手順3:⑴の音程を手順2の音程に合うように、⑴の音声全体のピッチを上下させる
1キャラ音声のみの人力ボカロの場合、子音部のみの音声ファイルも手順3で、手順2の音程に合うよう調声しておきます。
⑸Audacityで子音発音者がNEUTRINO、母音発音者が歌わせたいキャラになるようにする
Audacityで子音発音者がNEUTRINO、母音発音者が「Brand new!」5人になるようにサウンド編集します。
手順1:⑶手順1を思い出し、子音と母音の境を知っておく
手順2:↓画像のように子音発音者が⑷手順3の音声(調声後NEUTRINOの音声)、母音発音者が⑷手順2の音声(調声後「Brand new!」5人の音声)になるようにサウンド編集し、5人分の合成音声を作成すれば完成!
1キャラ音声のみの人力ボカロの場合、調声後NEUTRINOの代わりに、調声後の子音部のみの音声ファイルを使用します。
また、今回の動画音声では以下の対応もしています。
・あかり、あきら、つかさ、ほたるは東北イタコの音声を合成。
・りあむは東北きりたんの音声を合成。
・ToWhisperToneを使用してほたる用の東北イタコの音声をかすれ声に修正。
・NEUTRINOの設定FormantShiftを使い、出力音声のフォルマント周波数を変化させ、合成先のキャラの声質に近づける。
・GarageBandのライブラリ/Voice/Natural Vocalでそれとなく調声。(ディエッサー、コンプレッサー、エコーとかかかってる)
④終わりに
今回の動画音声作成で使用した手法は、人力ボカロやUTAUで使われている子音結合と、音声学の研究とを合わせた手法だったが、
↓動画が人力ボカロなのかと言うと微妙なところだ。
この記事を書いた段階では、人力ボカロは1キャラの音声で作らなければいけないという決まりはないし、今回の動画音声を人力ボカロであると言い切ることも可能ではある。
しかし、後々議論があって人力ボカロの定義が決まるかもしれないし、そうでないかもしれない。
なので、どちらに転んでも大丈夫なように動画のタイトル・説明文には「人力ボーカロイド」という言葉を入れていないし、タグ「人力ボーカロイド」をロックしない対応を取っている。
このやり方ならVtuberだろうがアニメのキャラだろうがゲームのキャラだろうが「あいうえお」さえあればそのキャラっぽく歌わせることができてしまうのだな
これを知った他の人がもっとすごいやり方を考えてくれないかなー
↓動画のMV作成方法の解説記事はこっち
↓人力ボカロ動画を作った時の解説記事一覧はこっち