音作りをAIで支援するアプリを作成しました!
みなさんこんにちは!
今回は初めての個人開発をしてみたので報告させてください^_^
1年間ほど実務経験のインターンを通して、やっと自分で作品を作れるようにまでなりました。
始めた頃は、タイピングもままならないド初心者だったわけですが、インターン先の方々が0から教えてくだっさて感謝しかないです
さて、タイトルにもあるとおり個人開発についてです!
その名も
「ampAI」です!!
このアプリの概要を端的にまとめます
音作り支援アプリ「ampAI」(https://ampai.vercel.app)
そもそも音作りとは?
音作りとはギターやベースにおけるアンプの設定やエフェクターの構成を指します。
例えば、“Smells Like Teen Spirit“のギターを再現したいときは...(ニッチですみません)
Distortion(歪み)を70%でToneを60%にして、ChorusのDepthを80%にしてRateを50%にして、Delay(遅延)のFeedbackを50%にしてDelayTimeを5秒にして.....
などなど、ギターを触ったことがない方にとっては呪文にしか聞こえないと思います。
言いたいことはつまり、
初心者にとってギターの環境構築って難しすぎん!?
ってことなのです。
それに加えて、これらの機材は1つ数万円なのでスパイス感覚で買うのは到底無理…。
ソリューションとしての「ampAI」
そこで登場するのがこのアプリ。
AIの力で「この曲の音作りを教えて!」って頼むと、アンプやエフェクターの設定をいい感じに提案してくれる、
初心者救済パワー系アプリです。
以下が出力例です👇
各パラメータは、実際に必要な要素をAIが構成してくれています!
どうやって作ったの?実装の話
この「ampAI」は以下の技術スタックで構成されています:
- フロントエンド:Nuxt3 (Vue3ベース)
- バックエンド:Firebase (Auth / Firestore / Functions)
- AI解析部分:OpenAI GPTモデル(API連携)
- UIデザイン:Tailwind CSS + Figma
ユーザーが「曲名」「アーティスト」「パート(ギター/ベース)」を入力すると、
Firebase FunctionsでGPTにリクエストを送り、音作り構成を生成します。
// Firebase Function(TypeScript)
import { onCall } from "firebase-functions/v2/https";
import { getGPTSettings } from "./gpt"; // 独自関数
export const generateSoundSetting = onCall(async (req) => {
const { title, artist, part } = req.data;
const result = await getGPTSettings(title, artist, part);
return result;
});
そして出力結果はFirestoreに保存され、履歴として見返すことができるようにしています!
実装するにあたっての苦労話
今回、個人開発自体が初めてであったため、いろんな壁にぶち当たりました。
まず声を大にして言いたいのがCORSエラーの解消が難しすぎる!
インターンでクライアントさんのAPIを使った時は開発環境と本番環境で環境関数等が設定して下さっており、困っても連絡すればいいや〜程度でしたが、openAIのAPIはちょっと説明が足りない
おい、コールすらできないやん!って何度叫びながらデバッグしたことか...
また、AIへのプロンプト設計も一筋縄ではいきませんでした。いかに音楽初心者にも分かりやすく、かつ実践的なアドバイスを提供できるか、様々なパターンで試行錯誤を繰り返しました。具体的な機材の型番を挙げるべきか、一般的なエフェクターの種類に留めるべきかなど、AIの出力のバランスを取るのが難しかったです。
UIデザインもFigmaを初めて使ったので、既存のテンプレートを参考にしながら、試行錯誤を繰り返しました。やはり直感的に使えるデザインにするのは難しいですね。
これからとビジネスコンテスト出場
この「ampAI」は、まだMVP(Minimum Viable Product)段階ですが、今後も継続的に改善していく予定です。具体的には、ユーザーが自分の音作りを共有できる機能や、特定のジャンルに特化した音作り提案機能などを追加していきたいと考えています。
実は、このアプリを開発した背景には、ビジネスコンテストへの出場という目標もありました。先日、とある学生向けのビジネスコンテストに出場し、「ampAI」を発表してきました。結果は残念ながら準決勝止まりでしたが、審査員の方々から貴重なフィードバックをいただくことができ、今後の開発のモチベーションに繋がりました。特に、「ターゲット層をもっと明確にすると良い」「課金モデルをどう考えているのか」といったビジネス的な視点からの意見は、自分一人では気づけなかった点であり、大変勉強になりました。
この経験を活かし、これからもより良いサービスを提供できるよう、精進していきます!
最後に
初めての個人開発は大変なことも多かったですが、それ以上に多くのことを学び、達成感を得ることができました。
開発を通して、技術的なスキルはもちろんのこと、問題解決能力や粘り強さも身についたと実感しています。
もしこのアプリに興味を持っていただけたら、ぜひ使ってみてください!
そして、もしご意見やフィードバックがあれば、お気軽にご連絡ください!
最後まで読んでいただき、ありがとうございました!
「ampAI」をよろしくお願いします!
https://ampai.vercel.app