見出し画像

Suno AIのExtend(Continue From This Song)を使って2番まであるシンプルなボーカル曲を1曲作る

4月10日追記:
Continue From This Songの名称がExtendに変更されました。

最近、音楽生成AIのSuno AIでよく遊んでいます。
せっかくボーカルを出力してくれるのなら、よくある邦楽、つまるところ
[Intro]→[Verse]→[Bridge]→[Chorus]→
[Verse]→[Bridge]→[Chorus]→[Outro]
のような構成の楽曲を作ってみようとしたのですが、2番を生成する時にメロディが大きく変わってしまうことが度々ありました。

目的

というわけで今回はExtendを使って、2番を1番のメロディで歌わせる、つまり確定済みのパートのメロディを参照して再度同じメロディで歌わせることを目的に調査をしてみました。

結論

  • Extendを使う場合、2回前のPartは覚えてくれていないことが多い。

  • Get Whole Songでまとめることで、メロディを覚えてくれる量を増やせる。

  • Get Whole Songでまとめた後のExtend生成では、ほとんどの場合直近でまとめた時に含まれているPartしか覚えてない

(ぶっちゃけ今後のアップデートで改善されて、この知見は必要なくなると思います。)

Extendとは

先人の記事を紹介しておきます。この記事の目的とは真逆ですが。
こちらの記事の「今回解決したい事」に大体の解説があります。

実際にExtendを使って1曲作ってみる

歌詞を作成する

一般的な曲の構成は以下のようになります。

━━━1番━━━
[Intro] (イントロ)
[Verse] (Aメロ)
[Bridge] (Bメロ)
[Chorus] (サビ)
━━━2番━━━
[Verse] (Aメロ)
[Bridge] (Bメロ)
[Chorus] (サビ)
━━━3番━━━
[Bridge] (Cメロ) または [Solo] (ソロ)
[Chorus] (サビ)
[Outro] (アウトロ)

が、今回の例は簡単のために以下のような構成とします。

━━━1番━━━
[Intro] (イントロ)
[Verse] (Aメロ)
[Bridge] (Bメロ)
[Chorus] (サビ)
━━━2番━━━
[Verse] (Aメロ)
[Bridge] (Bメロ)
[Chorus] (サビ)
[Outro] (アウトロ)

1番と2番でモーラ数が大きく変わらないように気をつけながら、歌詞を作成しましょう。

1回目の生成

作成した歌詞から、1回目の生成をします。
この時は曲の冒頭からある程度の部分までを確定させてください。もちろん全部確定でもOKです!
確定した部分の再生時間をメモっておきましょう。区切りは良くなくてもOKです。
例では、IntroとVerseが確定したものとします。

2回目の生成(Extend)

Extendで、未確定の部分から先を生成します。Part 2ですね。
Part 2も、冒頭から確定させましょう。できればこの時点でChorus(サビ)直前までは持っていきたいです。
例では、Part 2でBrigdeが確定したものとします。

Get Whole Songを入れる

ここでPart 2からExtendをしたくなりますが、このタイミングでExtendをすると、このパートを含めた以降のパートで1番のメロディを参照せず2番のメロディが変わりまくるという問題が発生します。なんでかはわかりません。
ですが、ここでGet Whole Songを挟むことで、次のExtendで1番のメロディを参照した2番を生成してくれます。なんでかはわかりません。

3回目以降の生成(Extend)

生成されたFull SongからExtendをして、続きを生成します。

ここで重要なポイントですが、1回目の「Get Whole Song(Full Song) → Part 2」では、2回前(この場合、最初回のPart 1)を覚えていてくれるのですが、これ以降は1回前のPartのメロディしか覚えてないことが多いです。(たまに思い出してくれるけど頻度は低め)
1度Get Whole Songをしたら、後で使い回す部分は毎回生成物に含めることを意識するといいでしょう。
というわけで、この例では1番のChorusから2番のBridge付近までを確定しておきます。もちろん全部確定してもOKです。

2番のBridge付近までを確定させたら、さらにExtendをして最後まで生成します。
Outroまで生成できたらGet Whole Song(Full Song)でまとめて完成です!

よくある失敗

1番のメロディを参照してくれない

大抵の場合、参照したいメロディが古くなりすぎています。

2番で1番の歌詞を歌う場合

直前の生成で確定した歌詞は残して、それ以前で確定済みの歌詞は削除しましょう!
また、曲が長くなると3番なのに2番の歌詞を歌う、みたいな事故がよく発生します。特に同じフレーズがあるとぴょんぴょん飛びがちですね……

今回の調査で生成した楽曲

こちらです。

以下は実際にSunoAIで生成した音声です。
中途半端に切っているので先の例では出しませんでした。

歌詞

こちらは最終系の歌詞です。実際の入力では使っていません。
今回は途中で何度か歌詞に変更を加えています。入力した歌詞はSunoのページで見てください。
ちなみにヒュムノス語です。
アウトロの「lusye sos omnis」は歌詞に入力してなかったのですが、AIが勝手に歌ってしかも歌詞にマッチしていたのでそのまま採用してます。


[Intro]
Was wol ra fountaina pauwel

Wee ki ra vit hao nuih ciel
en enne titilia lusye
Was wol ra hymme et
Wee ki ra gran mea kierre
en porter fayra

[Verse]
やみをてらし よるをかける
そのすがたは ながれぼし

Wee wol ra chs lusye parge nuih

[Bridge]
なにもおそれない
みらいもかこも
すべてだいて
かけぬけてゆく

Was yea ra chs faura

[Chorus]
このみにやどした
おもいはつばさ
ねがいせおい
Wee yea ra haf ieeya grandus
Wee granme ra haf ieeya folten

このそらをさいた
ひかりはしるべ
さあしめせ
Wee yea ra haf ieeya grandus
Wee granme ra haf ieeya folten

fayra faura

[Verse]
うたをさけび ことばをうたぃ
みちびいては きえてゆく

Wee wol ra chs lusye parge nuih

[Bridge]
なにももとめない
このじょうねつが
こころみたし
そらかけてゆく

Was yea ra chs fayra

[Chorus]
このみをふるわす
あついともしび
ねがいだいて
Was yea ra presia yasra nuih
Was granme ra keen omnis

よるにまたたいた
ひかりはきぼう
さあてらせ
Was yea ra presia yasra nuih
Was granme ra keen omnis

fayra faura

lusye sos omnis

[Outro]

Part 1 生成

歌詞のセクション分けが入力に沿っていませんが、雰囲気はいい感じなのでこれを採用しました。
1番のBridgeまで確定。

Part 2 生成

↑をChorus直前の0:49でセットしてContinue From This Song(Extend)をしました。
ここでChorusの歌詞を変えたい気持ちが湧きました。

Get Whole Song

1番のChorus半分まで(〜1:03)を確定。

Part 2 生成

↑を1:03でセットしてContinue From This Song(Extend)。
歌詞をしれっと修正しています。
最後までまあいい感じに生成されたので、2番のVerse、Bridge、Chorusの半分がここで完了となります。

Get Whole Song

この記事を書いている時に気づいたのですが、本来ここ含めて以降のGet Whole Songは意味ないと思います。
が、そういう手順でやったのでそのまま書きます。確定したところを通しで聞くのはモチベも上がりますし。

2番のChorus半分まで(〜2:02)を確定。

Part 2 生成

↑を2:02でセットしてContinue From This Song(Extend)。
ちょっと歌詞が危うい感じです。

Get Whole Song

2番のChorus半分ちょいまで(〜2:06)を確定。
今振り返ると4秒しか使ってませんが、ここから先はアウトロのみでウィニングランなのでOKということで。

Part 2 生成

↑を2:06でセットしてContinue From This Song(Extend)。
1番を参照しなくなったので「faira faura」のメロディが1番とは変わってます。ですがこれでいいでしょう。
正直ここで十分な気がしますが、欲をかいてアウトロをいじくりまわしました。以後省略。

完成系

いい感じになりました。


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