フル調声済みミクさんを AI きりたんにコンバートしてみた

お久しぶりです、twilight serenade の yukki-ts でございます。

というわけで、本日突如としてトレンドに上がった AI きりたんこと NEUTRINO なのですが、まぁ、こういう場合、伝統的にうちの課題曲を歌ってもらうことになってますので、例によって例の如く試してみます。

まぁ、ごちゃごちゃ言わず結論だけ先に言うと、これが結果です。

で、偉大なるミクパイセンによるものがこちらなのですが、というわけで、とりあえず、速報レベルで何をどうしてこうなったのかを。

基本的な流れとして、

VSQX → UST → MusicXML

という順序でコンバートしていくことになります。

最初のコンバートですが、UtaFormatix 2.1 というのでやるのが定跡のようです。こいつに D&D して♪をクリックしてあげれば変換できます。いくつか選択肢が出てきますが、違いが分からなかったので、そのまま [Keep Original] で出力させています。

次のコンバートですが、utau2sinsyというのでやれば基本的には OK です。とはいえ、これを直で指定できるかというと無理だったので、怒られないレベルまで MusicXML をパースしてちょこちょこ弄ってやります。

具体的に何を怒られているのかというと、素の状態だと「a あ」みたいな感じの歌詞が出力されたり、まぁ、これも仕方がないですが、「ー」が出力されてしまったりするので、こいつらを「あ」ならあですし、「か」「ー」なら「か」「あ」と変換してやる必要があるわけですね。

まぁ、やっぱり JS は最高だぜ!の精神に則り、ちゃっちゃと Node.js で書いてしまいます。

雑に fast-xml-parser を使ってあげれば十分です。
で、「ー」が地味に面倒だったので、ちょっと探して、こちらのコードをパクって前段のひらがなの母音だけ引っ張って置換しつつ、「a あ」みたいな奴を「あ」に置換させて、改めて出力。こちらを score/musicxml にポインちょし、Run.bat の Project settings にある BASENAME を置き換えてあげれば OK です。

で、あとは、Run.bat を実行して、CPU が火を噴くのを見ながら待機すればおkです。

で、まぁ、これだけで話が終われば済んだのですが、なんというか、現状でとりあえず見えていることを書いてしまうと、
・よくわからないノートが乗ってしまう(上記サンプルではカット編集済み)
・直そうとして MusicXML を雑に編集すると音が外れる
・あるタイミングから微妙に遅れてしまうことがある(上記サンプルでは(ry)
・一部ウィスパーになってしまった(そのまま)
・あるタイミングから以降、盛大なノイズで埋め尽くされる(カット)

まぁ、あと、当たり前ですが、DYN も PIT も最初のコンバート段階で多分消し飛びます。

もしかすると、今回使った VSQX が余りにも古すぎたのが原因ではないか説はあります。
実際、変なノートは、ミクさんブレスなのではないか?説があるのですが、削除しても残ってしまっているのは、
恐らく、VSQ → VSQX のコンバートの仕業ではなかろうかと。

まぁ、速報レベルでごちゃごちゃ書きましたが、感触としては、高音域の伸び(「すこしー」の「しー」の部分とか「くれた」の「く」とか)とか、あとは「ん」がとても好きです。

まぁ、フル調声済みミクパイセンの VSQX からスタートしてるので、純粋な比較には全くなっていませんが、とりあえず、過去の資産を使おうとするとこうなったというお話でした。

バニラだとどうなるのか、みなさんのご報告をお待ちしております。

つづく

ツイートツイート

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です