見出し画像

つよすぎるAIシンガーAIきりたんの基本的な使い方。【無料】

【2020/10/22】
商用利用ライセンス停止(商用利用無償化)について追記しました
ツイッターフォローしてくださるとうれしみです。おねがいします。

バーチャルYouTuber/SSWの赤坂まさかです。

2/20にリリースされた「AIきりたん」。これが無調声でもめちゃくちゃリアルに歌ってくれると話題です。これが無料で使えてしまっていいの?

↓わたしも歌わせてみました。

というわけで、わたし流ですが、AIきりたんの使い方を解説してみます。

1. NEUTRINOをダウンロード

まずはオフィシャルサイトからAIきりたんのエンジンであるNEUTRINOをダウンロードしてきます。AIきりたんが初音ミクなら、NEUTRINOはPiapro Studio的なイメージかと思います。きりたんはNEUTRINOに同梱されています。

※最新版(Version.0.200以上)はGoogleコラボラトリーを使用して高速処理&NSF処理が可能です!詳しくは後ろの方に追記しています。

インストールは不要なので適当なところに保存して解凍します。

2. 楽譜ファイルを用意

歌わせるための楽譜ファイルを用意します。

マニュアルでは.musicxml形式が推奨されているようですが、Run.batをいじればmxl形式のものも読み込めるようです。

.musicxmlファイルはMuseScore(無料)で作ります。お持ちでない方はインストールしてください。

MuseScoreで1から作っても良いのですが、わたしはDAWでMIDIを作ってからMuseScoreにインポート→歌詞入力→.musicxml出力しています。

MuseScoreで歌詞を入力するには音符を選択してCtrl+Lを押します。基本的には1音につき一文字、ひらがなかカタカナで入力していきます。

促音(っ)は前の音符に含めて「あっ」のようにしてしまっても、2つの音符に「あ」「っ」というように入力しても問題ないようです。

詳しい歌詞入力についてはこちらの公式記事がわかりやすいです。

また、ブレス(息継ぎ)の位置にはブレス記号を挿入しておきましょう。パレットには標準では表示されていないので、追加してください。選択した音符の直後にブレス記号が挿入されます。

一通り完成したら「ファイル」→「エクスポート」から.musicxml形式で保存します。保存先はNEUTRINO/score/musicxml/内にしておくか、保存後にそのディレクトリへ移動させておいてください。この時、ファイル名は日本語ではなく、半角英数字にしましょう。

3. 歌唱データの生成

作成したmusicxmlを所定のフォルダへ入れたら、NEUTRINOフォルダ直下の「Run.bat」ファイルをメモ帳やTeraPadなどのテキストエディタで開きます。

すると下記のようになっているかと思います。太字の部分を編集します。

@echo off
setlocal enabledelayedexpansion
cd /d %~dp0
<以上は変更しません>

: Project settings
set BASENAME=[musicxmlフォルダ内の作成したファイル名(拡張子除く)]
set NumThreads=0

: musicXML_to_label
set SUFFIX=musicxml(mxlファイルの場合は「mxl」に書き換える)

: NEUTRINO
set ModelDir=KIRITAN(デフォルトでは音源がきりたんになっています。謡子にしたい場合は「YOKO」に変更します。)

: WORLD
set PitchShift=1.0(ピッチシフト値を指定します)
set FormantShift=1.0(フォルマント(声色)シフト値を指定します)

<以下は変更しません>
echo %date% %time% : start MusicXMLtoLabel
bin\musicXMLtoLabel.exe score\musicxml\%BASENAME%.%SUFFIX% score\label\full\%BASENAME%.lab score\label\mono\%BASENAME%.lab

echo %date% %time% : start NEUTRINO
bin\NEUTRINO.exe score\label\full\%BASENAME%.lab score\label\timing\%BASENAME%.lab output\%BASENAME%.f0 output\%BASENAME%.mgc output\%BASENAME%.bap model\%ModelDir%\ -n %NumThreads% -t

echo %date% %time% : start WORLD
bin\WORLD.exe output\%BASENAME%.f0 output\%BASENAME%.mgc output\%BASENAME%.bap -f %PitchShift% -m %FormantShift% -o output\%BASENAME%_syn.wav -n %NumThreads% -t

echo %date% %time% : end

6行目のset BASENAME=の=の右側に先程作成したmusicxmlファイルの名前を入力します。拡張子(.musicxml)は入れないで下さい。

とりあえずは設定はこれだけです。簡単ですね。

Run.batを上書き保存したら、Run.batをダブルクリックで実行します。

コマンドプロンプトが立ち上がりますので正座して待ちます。画面に進捗などは表示されませんので根気強く待ちます。楽譜が複雑なほど処理に時間がかかるようです。

コマンドプロンプトのウインドウが閉じたら処理完了です。outputフォルダ内に「○○_syn.wav」ファイルが生成されていたら完成です。

4. 確認しながら再度楽譜を調整する

NEUTRINOは書き出してみないとどんな音声になるのかわからないので、書き出された歌唱データの歌い方におかしい点がある場合はもう一度musicxmlファイルを作り直します。

使ってみた感じ、速く歌う部分の子音がなくなってしまったりしがちなようです。

オペレーティングについては下記記事が詳しいので必読です。

特に、子音のみにしたい部分に「'」をいれる(「か'」のように。「’」は全角です)、ブレス記号はちゃんと置く、ということが重要そうです。

※注意点:「’」を付けた音の直後が母音だと結合されます。「す’→ゆ」のようにすると「しゅ」のように発音されます。

ブレス記号はMuseScoreの左側パレットから「パレットの追加」→「ブレスと休止」から「ブレス記号(コンマ)」を使います。選択した音符/休符の直後に挿入されます。

上記記事のピッチ変更ガチャについては、MuseScoreで楽譜をピッチシフトしたうえでRun.bat内のset PitchShift=の右側に数値を入力します。(MuseScoreで全体をピッチシフトする方法はこちらにあります)全体を+1したらRun.batで-1(入力数値は0.9438743126)する、というイメージです。

それでもどうにもならなかったタイミングやピッチの揺れはPitchShifterやDAW上でWaves TuneやMelodyneを使って調整しましょう。

※追記:Version.0.300ではStyleShift=0の数字を変更することで簡単にガチャできます

【追記】NEUTRINOオンライン版でGoogleコラボラトリーを使った高速処理+NSF処理をしてみよう

わたしもよくわかっていませんが、Version.0.200以降では肉声に近い高品質な音声波形を高速に生成する手法の一つであるNSFに対応しました。

NSFについてメモ

メリット
・合成音声のざらつきが抑えられ、より自然な発声になる
デメリット
・NVIDIA製のGPU(3GB以上のGPUメモリを推奨)が必要(ハイスペックなゲーミングPCやクリエイターPCでないと搭載されていません)→Googleコラボラトリーを使用したクラウド処理で解決可能!みんな使えます!
・出力音声のサンプリング周波数は48kHzではなく24kHzになる(一般的なCDの音質は44.1KHz、一般的なレコーディングでは48kHzが最低ライン、96kHz~がスタンダード)。サンプリング周波数が落ちると音声の密度や倍音の再現度が下がります。密度が下がるとタイミング補正などで伸ばしたときに波形も荒くなります。
・綺麗すぎてロックなどには合わないかも?

なんとなく、通常版はダイナミックマイク(SM58)で録った感じ、NSF版はコンデンサーマイクで録った感じの質感になっている気がします。気が。

くわえて、2020/7/7に更新されたVersion.0.300ではGPUを使用した高速処理が可能になりました。0.200ではすごく時間がかかっていましたが最速で実時間の1/4の時間で合成が完了するとのことなので素晴らしい!!

GPUとは?

グラッフィックス・プロセッシング・ユニットの略。画像処理をするプロセッサー(CPUみたいな計算してくれるPCパーツ)のこと。NVIDIAなどのグラフィックボードに搭載されています。
一般的には3Dグラフィックスなどに使われるGPUですが、近年、AIなどでGPUを使用することによりより高速に処理できるといって使われ方をしています(これをGPGPU General-purpose computing on graphics processing unitsというそうです)。NEUTRINOもGPGPUです。

Googleコラボラトリーとは、平たく言うと「Googleのつよつよサーバーでプログラムを動かせば最強じゃね!?」というやつです!

クラウド・コンピューティングによって、Googleのコンピューターに搭載されたGPUを使用した処理が可能になっているのです。無料です。

ただ、ちょっと使い方が厄介なので上級者向けといえるでしょう……。

使い方

では早速使ってみましょう。

導入方法は公式記事が詳しいです。

NEURTINOオンライン版導入の流れ

1. ここからNEUTRINO-Online_v0.320.zipを自分のPCに一旦DLして、解凍(最近のWindowsだと展開っていうみたいですね)します。

2. 自分のGoogleドライブのマイドライブ直下Colab Notebooksという名前のフォルダを作成し、その中にさきほど解凍した「NEUTRINO」フォルダをフォルダごとアップロードします。(マイドライブ>Colab Notebooks>NEUTRINOという構造になっていれば完璧です。ここを間違えると動きません)1.5GBくらいあるので結構時間かかります。耐えよう。

3. アップロードしたNEUTRINO/score/musicxmlフォルダ内に生成したいmusicxmlをアップロードしておきます(とりあえず試したいだけなら不要)

4. NEUTRINOフォルダの中にある「NEUTRINO.ipynb」をダブルクリックで開き、「Google Colaboratory で開く」を選択します(右クリック→アプリで開く→Google Colaboratoryでも大丈夫です)。

5. [1]にカーソルを合わせると表示される▶マークを上から順にクリックしていきます。最初の部分ではドライブへのアクセス権を付与するので、表示されたURLからGoogleにログインして表示されたコードを入力してエンターします。下の画像みたいにアイコンが濃くなったら実行完了なので次の▶を押していきます。

6. 「4.」まできたらBASENAME=sample1の「sample1」の部分を先程アップロードしたmusicxmlファイルの名前に変更して▶を押します。サンプルを生成したい場合はそのままでOKです。
また、0.300からキー変更+ピッチ変更ガチャを簡単に行う機能も追加されています。StyleShift=0の値を変更してみましょう。

7. NEUTRINO>outputフォルダ内に[ファイル名]_syn.wav[ファイル名]_nsf.wavが生成されていれば成功です。めっちゃ処理はやくてビビりました。

【追記】調声テクニック「あい(ai)」(弱い「い」)を自然に歌わせる方法

「スカイ」とか「じゃない」みたいに、「あい」が入る歌詞を歌わせるときに普通に入力すると「い」が不自然になってしまうんですよね。

なんとかできないかと調べていたらこんな記事を発見しました。

Mitchie Mさんといえば「ビバハピ」や「イージーデンス」などでとても自然な調声をするボカロP。NEUTRONでもできないかなと試してみたが、できました。

「Sky(スカーイ)」と歌わせたい場合、こんな感じで入力してみましょう。

つまり「あ」「え」「い」と連続させるわけです。たしかに、「あ」から「い」に変化する過程で「え」の口を通過しますよね。

Wikipedia「Vowel」から引用

上の図を見ても、たしかに「e」を通過しています。同じように、「あ」から「う」へは「お」を通過すると自然になりそうです。

【追記】商用利用(AIきりたんを使った音源の販売)について

CeVIO AIきりたんの発売に伴い、同人イベントでの頒布を除く商用利用でも商用利用ライセンスが停止され、無償化される予定とのことです。

https://twitter.com/t_zunko/status/1319113457074016257?s=20

いままでは1曲あたり1000円の商用利用ライセンスを東北ずん子プロジェクトにお支払いする必要がありましたが、「今年の冬の遅い時期」以降になると無償で商用利用できるようです。

ライセンス購入をお考えの方はしばらく待ってみるのがいいかもしれません。

それでは、よきAIライフを✋

↓この記事を書いたバーチャルYouTuber

https://twitter.com/Masaka_asobu

この記事が気に入ったらサポートをしてみませんか?