AI全振りで、Sunoで曲作り?

AI話が続いていますが、ダッシュボード話はどうなっているんだという話は無しの方向で。

本記事はほぼAIに丸投げした作業に関して記事にしています。私自身、どれほどの信頼性があるか理解できていませんので各自の判断で参照ください。

この記事だけでは意味が分からないかもしれないですので興味のある方はこちらから順番に参照ください。

Sunoとは

**Suno(スノー)**は、AI で音楽を自動生成できるサービスです。誰でも歌入りの楽曲を作れるのが最大の特徴で、現在世界的に人気が急上昇しています。

以下、分かりやすくまとめます。
🌟 Sunoとは?一言でいうと…

文章(プロンプト)を入力するだけで、オリジナルの曲(歌入り・カラオケ付き)を生成してくれるAI音楽生成サービス。
作曲(メロディ)
作詞
ボーカル(声の種類もAI)
バックの伴奏(編曲)
ミックス
これを全部 AIがやってくれる。

🎵 Sunoでできること
✔ 1. AIが完全オリジナルの曲を生成
プロンプトに「こういう曲にして」と指示すれば、その通りの曲を作る。
例
"J-pop, emotional, female vocal, fast-paced, 150 BPM"

✔ 2. 歌詞を指定すればその通り歌ってくれる
日本語歌詞もOK、英語もOK。
歌詞が長すぎると入りきらないので注意。

✔ 3. ボーカルの声質・スタイルを指定女性
男性
合唱
ロボ声
柔らかい声
ハスキー声
など、プロンプトで細かく指定可能。

✔ 4. スタイルを模倣できる
「YOASOBI風」「K-popガールズグループ風」「City Pop」「バラード」など、雰囲気を再現できる。
※そっくりコピーはNGなので「〜風、〜系」として使うのが安全。

✔ 5. コード・BPM 指定も可能
ただし、BPMは強制的にその通りにはならない。
「〜くらいにして」と曖昧に指定すると安定します。

じゃ、どうしますかも

個人的にどうするのかと言うと、自分でやるつもりもなくどうAIにやらせるかと言う話になるのですが、まず見本となる曲を準備します。

https://youtu.be/Wmu6v_jUnwg?si=bcnQ5HGHJkD972CV

それで解析には下記のページを使用します。どちらも一応無料で数回は使えるようですが、ほんと数回です。有料で利用できるんだろうけど、そこまでな気がします。

https://sonoteller.ai/

Youtubuリンクから曲を解析するページです。歌詞の傾向、曲の詳細を解析してくれます。

解析結果が下。


LYRICS ANALYSIS
Summary
The lyrics depict a vibrant and futuristic world where love and connection thrive amidst digital landscapes. The imagery of neon colors and electric souls suggests a deep emotional bond between two individuals, transcending the mundane realities of life. The song captures the excitement of youth, freedom, and the thrill of dancing through life together. It evokes feelings of joy and adventure, as the protagonists embrace their unique relationship and the possibilities of the future. The repeated phrases emphasize the intensity of their connection and the desire to escape into a world filled with dreams and possibilities.
Moods
Joyful (90), Adventurous (85), Romantic (80), Energetic (75), Dreamy (70)
Themes
Youth (90), Connection (85), Freedom (80), Futurism (75), Love (70)
Language
Japanese
Explicit
No
MUSIC ANALYSIS
Genres
Electronic (90), Pop (85), Synthpop (80), Chillwave (75), Downtempo (70)
Subgenres
Dream Pop (80), Electropop (75), Ambient (70), Indie Pop (65), Lo-fi (60)
Moods
Relaxed (90), Dreamy (85), Romantic (75), Uplifting (70), Melancholic (65)
Instruments
Synthesizer, Drum machine, Electric piano, Bass, Vocals
BPM & Key
112.35BPM, F# Major
Vocals
Mid/High pitch

こうやって解析データ見ると、BPMとか全然違いますね。でも、まぁ、そのままこちらを使います。

次はこちら

https://remusic.ai/ai-music-analyzer

こちらは曲のセクション分けや、リズムを解析してくれます。解析データは下。こちらはちゃんとBPMが解析されています。

なんか私のの環境では11/22現在ダウンロードが出来なくなっています。何故だ?

{
"path": "/tmp/tmpwq3d2s2439e994f0-8693-4ce2-bdbf-03707b70618f.mp3",
"bpm": 167,
"beats": [1.03,1.75,2.47,3.17,3.88,4.59,5.3,6.02,6.75,7.46,8.16,8.89,9.6,10.31,11.05,11.75,12.46,13.16,13.88,14.6,15.31,16.02,16.74,17.46,18.17,18.88,19.59,20.31,21.02,21.74,22.45,23.18,23.89,24.6,25.32,26.03,26.75,27.46,28.17,28.89,29.6,30.31,31.03,31.74,32.46,33.17,33.88,34.6,35.31,35.99,36.73,37.45,38.18,38.89,39.6,40.32,41.03,41.74,42.46,43.17,43.89,44.58,45.12,45.68,46.2,46.75,47.27,47.8,48.17,48.53,48.88,49.25,49.6,49.96,50.32,50.67,51.03,51.38,51.75,52.1,52.45,52.81,53.17,53.53,53.88,54.24,54.6,54.95,55.31,55.67,56.03,56.38,56.74,57.1,57.46,57.81,58.17,58.53,58.88,59.24,59.59,59.96,60.31,60.68,61.03,61.39,61.73,62.09,62.46,62.82,63.17,63.53,63.89,64.24,64.6,64.96,65.31,65.67,66.03,66.38,66.74,67.1,67.46,67.81,68.17,68.53,68.89,69.24,69.6,69.96,70.31,70.67,71.03,71.39,71.74,72.1,72.46,72.81,73.17,73.52,73.88,74.24,74.57,74.95,75.31,75.66,76.02,76.37,76.74,77.11,77.46,77.82,78.17,78.53,78.88,79.24,79.6,79.95,80.31,80.67,81.03,81.39,81.74,82.1,82.46,82.81,83.17,83.53,83.89,84.24,84.6,84.95,85.31,85.67,86.03,86.39,86.74,87.1,87.46,87.81,88.17,88.53,88.88,89.24,89.6,89.96,90.31,90.67,91.02,91.38,91.74,92.1,92.45,92.81,93.17,93.53,93.89,94.24,94.6,94.96,95.31,95.67,96.03,96.39,96.74,97.1,97.46,97.82,98.17,98.53,98.89,99.25,99.6,99.96,100.31,100.67,101.02,101.39,101.74,102.08,102.45,102.82,103.16,103.53,103.9,104.25,104.6,104.95,105.31,105.67,106.02,106.4,106.75,107.11,107.46,107.82,108.17,108.53,108.89,109.26,109.61,109.97,110.31,110.67,111.03,111.39,111.74,112.12,112.47,112.81,113.16,113.53,113.89,114.24,114.6,114.97,115.31,115.68,116.03,116.37,116.74,117.1,117.46,117.82,118.17,118.53,118.89,119.25,119.6,119.96,120.31,120.67,121.03,121.39,121.74,122.1,122.46,122.81,123.17,123.53,123.89,124.24,124.6,124.96,125.31,125.67,126.03,126.39,126.74,127.1,127.46,127.82,128.17,128.53,128.88,129.24,129.6,129.96,130.31,130.67,131.03,131.39,131.74,132.1,132.46,132.81,133.17,133.53,133.88,134.24,134.6,134.96,135.31,135.67,136.03,136.38,136.74,137.1,137.46,137.82,138.17,138.53,138.89,139.24,139.6,139.96,140.31,140.67,141.03,141.39,141.74,142.1,142.46,142.81,143.17,143.53,143.88,144.24,144.6,144.96,145.31,145.67,146.03,146.38,146.74,147.1,147.46,147.82,148.17,148.53,148.88,149.25,149.6,149.96,150.31,150.67,151.02,151.39,151.74,152.1,152.46,152.82,153.17,153.53,153.89,154.24,154.6,154.96,155.31,155.67,156.03,156.38,156.74,157.1,157.45,157.81,158.17,158.53,158.89,159.24,159.6,159.96,160.31,160.67,161.03,161.39,161.75,162.1,162.46,162.81,163.17,163.53,163.88,164.24,164.6,164.96,165.31,165.67,166.03,166.38,166.74,167.1,167.46,167.81,168.17,168.53,168.89,169.24,169.6,169.96,170.31,170.67,171.03,171.38,171.74,172.1,172.45,172.81,173.17,173.53,173.87,174.24,174.59,174.93,175.29,175.65,176.01,176.38,176.74,177.1,177.45,177.82,178.16,178.54,178.88,179.24,179.6,179.96,180.31,180.65,181.02,181.38,181.74,182.1,182.46,182.81,183.17,183.53,183.88,184.24,184.6,184.96,185.32,185.67,186.03,186.39,186.74,187.1,187.46,187.81,188.17,188.52,188.89,189.24,189.6,189.96,190.31,190.67,191.03,191.38,191.74,192.1,192.46,192.81,193.17,193.53,193.89,194.24,194.6,194.96,195.31,195.67,196.03,196.39,196.74,197.1,197.46,197.81,198.18,198.54,198.89,199.24,199.6,199.96,200.32,200.68,201.04,201.4,201.75,202.09,202.44],
"downbeats": [1.03,3.88,6.75,9.6,12.46,15.31,18.17,21.02,23.89,26.75,29.6,32.46,35.31,38.18,41.03,43.89,46.2,48.17,49.6,51.03,52.45,53.88,55.31,56.74,58.17,59.59,61.03,62.46,63.89,65.31,66.74,68.17,69.6,71.03,72.46,73.88,75.31,76.74,78.17,79.6,81.03,82.46,83.89,85.31,86.74,88.17,89.6,91.02,92.45,93.89,95.31,96.74,98.17,99.6,101.02,102.45,103.9,105.31,106.75,108.17,109.61,111.03,112.47,113.89,115.31,116.74,118.17,119.6,121.03,122.46,123.89,125.31,126.74,128.17,129.6,131.03,132.46,133.88,135.31,136.74,138.17,139.6,141.03,142.46,143.88,145.31,146.74,148.17,149.6,151.02,152.46,153.89,155.31,156.74,158.17,159.6,161.03,162.46,163.88,165.31,166.74,168.17,169.6,171.03,172.45,173.87,175.29,176.74,178.16,179.6,181.02,182.46,183.88,185.32,186.74,188.17,189.6,191.03,192.46,193.89,195.31,196.74,198.18,199.6,201.04,202.44],
"beat_positions": [1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1],
"segments": [
{
"start": 0.0,
"end": 0.29,
"label": "intro"
},
{
"start": 0.29,
"end": 12.46,
"label": "intro"
},
{
"start": 12.46,
"end": 48.17,
"label": "verse"
},
{
"start": 48.17,
"end": 62.45,
"label": "chorus"
},
{
"start": 62.45,
"end": 76.74,
"label": "verse"
},
{
"start": 76.74,
"end": 105.31,
"label": "chorus"
},
{
"start": 105.31,
"end": 162.1,
"label": "chorus"
},
{
"start": 162.1,
"end": 202.65,
"label": "chorus"
},
{
"start": 202.65,
"end": 203.08,
"label": "end"
}
]
}

JSONファイルの内容

解析データがそろったところで

さて、このデータをどうするかなんですが、もう面倒くさいのでまとめて処理してくれるの作りました。なんちゃって処理なので、精度は推して知るべし。

https://chatgpt.com/g/g-691bf631836481918d6c309225cf182d-sunohuronhutozuo-cheng

こちらにそれぞれの分析データを2回に分けてぶち込めば、プロンプトと歌詞が出来上がるようになっています。ただ、今回上で言ったようにBPMが違っていましたが、間違っていた112.35BPMの方が使用されていました。なので、目視チェックが必要だと思いますが、それが出来るならこんなことしていないかも知れません。

一応調整しました。常に動くかご自分でご確認ください。BPMはかなり重要な情報なので違うと全く違う曲になります。入れていても他と整合性取れない場合無視されたりもしますが。

(1) Suno Music Prompt (English, <1000 chars)
High-energy electronic pop with dream-pop and synthwave influences at 167 BPM. Bright analog synths, shimmery pads, airy electric piano and soft lo-fi textures. Pulsing bass with tight drum-machine patterns, snappy snares and fast hi-hats creating a futuristic rush. Mood is joyful, romantic, adventurous, and dreamy, with uplifting harmonies and gentle melancholy undertones. Vocals are mid/high-pitch, breathy and emotional, floating above the beat with a youthful, sparkling tone.

Structure: short ambient intro leading into an energetic verse with rapid rhythmic phrasing. Chorus expands with wide stereo synths, layered vocal stacks and a soaring hook. Repeated chorus sections intensify gradually, adding brighter leads, thicker pads and more open percussion. Final chorus ends with a soft atmospheric tail.

Themes: youth, connection, freedom, electric emotion, luminous future landscapes.

(2) 日本語歌詞(構造データに同期)

夜の風が まだ醒めない
光だけが そっと息をする

ネオン滲む街のすきま
指先触れた瞬間
ふたりの影がゆれて
世界が少し速くなる

笑い合った声の粒が
胸の奥で弾けて
何でもない今がどうしようもなく
キラキラしてた

揺れるまま走り抜けて
明日なんて置き去りで
手を取れば ほら
すべてが飛び越えてく

このまま Break into the light
心ごと Drive into the night
夢の縁(ふち)で踊るように
君と行く Endless sky

通り過ぎる風の音に
紛れ込んだ秘密みたいに
言葉より近い距離で
鼓動だけが響いてた

見上げた空の青さが
未来をそっと照らすから
迷わないよ
君がいればいい

ふたりで Break into the light
何度でも Drive into the night
触れ合った体温(ぬくもり)が
世界を塗り替えてく

遠くへ Break into the light
高鳴るまま Fly through the night
名前さえいらないほど
心が溶けていく

最後まで Break into the light
離さないで Stay in the night
未来なら ここにあるよ
君と描く Endless sky

静けさの中 手だけは離さないままで

歌詞は整形済みです。歌詞に(intro・約12秒、短めの導入)的な説明が入ることがありますが、取らないとそれも歌で読む場合があります。

まず、これもプロンプト作成するたびに違うものが出来ますので安定感はないです。案外、出来上がりに関して、ChatGPTに続けて相談してあれこれ修正すれば改善されるかもしれませんが、まぁ、そんなものだと思ってください。

むしろ、何も考えず、簡単な説明の方が良い曲が出来るかもしれません。ただ、そこをただのガチャにしたくないので色々手を変え品を変えやっているんですがうまくいかないです。

歌詞はおまけです。何となく雰囲気で作成するようにしているので大したものはできないと思います。

Sunoで作成

LyricsとStylesにそれぞれ歌詞とプロンプトを入れてcreateを押すだけです。それで作ってみるんですが、たぶんうまくいかないと思います。まず、プロンプトが適正につくられているかどうかなんてわかんないですよね。

一応上の状態で作成した曲がこちら(一回で二曲出来ます)

https://youtube.com/shorts/KtYjV_gge-8?feature=share


https://youtu.be/LpIJ_MVU0dA

(なんか短い方ショート動画になってしまった)

全然うまくいかないです。

そんな時はChatGPT投げてみましょう。プロンプトを確認してと言って先ほどのプロンプトを投げます。

【最適化例(冗長削除・Suno最適化)】

(構成指示を短くして、音色・ムード中心に再整理)

High-energy electronic pop at 167 BPM with dream-pop and synthwave influences. Bright analog synths, shimmery pads, airy electric piano, and soft lo-fi textures. Tight drum-machine patterns with snappy snares, fast hi-hats, and pulsing bass. Romantic, joyful, and dreamy mood with a hint of gentle melancholy. Mid/high breathy vocals floating above wide stereo synths with youthful sparkle. Expansive chorus with layered vocal stacks and uplifting harmonies.

歌詞も修正。ChatGPTに続けて、「今の曲に歌詞を用意していますが、修正して。早口で畳みかける様な歌にしたいです。」と言って歌詞と一緒に投げる。

よるのかぜが まださめない
ひかりだけが そっといきをする
ネオンのなか すきまぬって
ゆびがふれた そのしゅんかん


ふたりのかげ ゆれてははしる
せかいのそくど すこしあがって
わらうこえの こえのつぶが
むねのなかで はじけてとける


なんでもない このいまさえ
どうしようもなく きらめいてた
ゆれるままに かけぬければ
あしたなんて おきざりでいい


てをとれば ほらとびこえる
このまま Break into the light
こころごと Drive into the night
ゆめのふちで おどるように
きみといく Endless sky


とおりすぎる かぜのおとが
ひみつめいて しのびこんで
ことばよりも ちかいきょりで
こどうだけが ひびいていた


みあげたそら あおさのなか
みらいがそっと てらしていく
まよわないよ きみがいれば
それでいいと わかっている


ふたりで Break into the light
なんどでも Drive into the night
ふれたぬくもり そのすべてが
せかいをまた ぬりかえていく


とおくへ Break into the light
たかなるまま Fly through the night
なまえさえも いらないほど
こころがもう とろけていく


さいごまで Break into the light
はなさないで Stay in the night
みらいなら ここにあるよ
きみとえがく Endless sky


しずけさでも てははなさず
そのままふたり よるをぬける

勝手にひらがなにしてくれましたが、漢字がが混ざるとたまに読み間違えることがあるのでひらがなの方が安心です。

こちらで作成したのがこちら

https://youtu.be/BpZ2Z6fcSUI

https://youtu.be/OsHud3m7cfY


面白いようにうまくいかないですね。個人的には曲に適正な歌詞(文字数)を入れないと厳しいんだと思うのですが、それってどうしたら良いのか想像がつかないですね。

結局ガチャなのか?

そういわれると結局ガチャだっていう話になってしますのですが、それを調整出来たり、加減を分かって作成できる人がいるんだろうから、通常ガチャからピックアップガチャ位にはできる余地があるんだろうけど、どうしたら良いかよく分かりません。

上の手法も解析できているかと言われれば謎だし、海外のサービスなのでローカルな情報は無いだろうからJ-POPとかならまだしも、ボカロとかアニソンを解析できるとは思えないし、結局プロンプトの作成は職人技だろうと言われるとしょうがないですが、何かAIで解析できると思っていろいろやっているのが楽しいですよね。

一番最初に上で上げた作品も、私が作った作品ですが、狙ってできたかと言われるとよく分かりません。同じプロンプトを使えばある程度同じものが出来るのですが、そんなことしてもしょうがないので、違う作品を高品質で作れるようにならないとつまらないですよね。

ちなみに私の作品のプロンプトで、最後の平仮名の歌詞で曲を作ってみました。

Genre: J-Pop, Hyperpop, Electronic Dance Music, Tempo: 166, 7 BPM, Vocal style: Bright, high-pitched female vocals with dynamic pitch variation (379, 2 Hz mean, 136, 6 Hz std), Instrumentation: Synth-driven, layered with punchy electronic beats, shimmering arpeggios, and glitchy effects, Atmosphere: Energetic, futuristic, and playful with a dreamy yet intense vibe, Production style: Polished, high-energy, with a modern J-Pop aesthetic and hyperpop influences, Use dynamic contrasts between verses and choruses, emphasizing rhythmic drive and vocal expressiveness, Lyrics in Japanese (ja), fast-paced, with repetitive hooks and surreal imagery, Include a long outro with evolving textures and fading synth pads

https://youtube.com/shorts/Qah4x06I9KY?feature=share

https://youtube.com/shorts/14UBtyE2YIo?feature=share

アップロード上限で一つしか動画を上げられなかった。こう見ると、正確に曲のジャンルを解析できていないから、狙った曲にできていないんだと思われますね。

これの発展形として

現在、ローカルでこれを再現するというか、もっと解析できるものを作って見てはいますが、まだうまくいきません。素人の手遊びなので結局どこまで行っても伝言ゲームなのは変わらないです。

同じ曲を作ってみたいと思うわけでもなく、売れた曲のニュアンスの組み合わせがどんなものかぐらいの話で、それを使って曲を作ってみたいってのですかね?

まとめ

無駄なことをしていると言われたらそうかもしれないが、何もしないでも良い曲が作れるってのは夢があると思います。結局ガチャなんで、多分無理と言う話もあるし、個人レベルでAIにやらせるって言っても、ローカルのLLMの性能なんてたかが知れているので遊びだと言われればそうなんですが、遊びなのでそういうことで。

【宣伝】SwitchBot 購入はこちらから

SwitchBot公式ページ
クーポン「AF-4903」で5%引き(アフィリエイトクーポンになりますのでご協力お願いします)
割引の詳しい仕組みに関してはこちらのページを参照ください。