カラオケアプリを作ってみよう!!(0)なぜ作りたいと思ったか。 - 暇があるから人である。暇でなければ機械だ
前回のあらすじ
従来のカラオケに「歌いたい曲が無い」という不満があったからアプリ作ろう!と思った。
じゃあどういうアプリを作ろうかと仕様書?設計書?をある程度決めようとなった。
①初期段階
・androidとios、PC用のアプリ、ソフトを作るのは面倒だった。そのため全部の媒体でも使えるwebアプリとして作る。
・ytdlpでyoutubeから音源を取得
・[DEMUCS]という音源分離(音楽をvocalとinstに分ける)ことのできるAIを使用してオケ音源を作ろうとした。
・そのためにPythonを扱いやすいwebフレームワーク[Flask]を用いることにした。ほかにもサーバーに以前使ったことのある[nginx]を用いることにした。
・xserverのVPNレンタルサーバー(800円/月)を借りて運営する
②1カ月後
・[nginx]だと一つのタスク(音源分離)中ほかの人がサイトにアクセスできないことが分かったので[Apache]に変更
③クラウドファンディング開始
・現PC、レンタルサーバーの処理速度が遅すぎたため、資金を集めていいGPUを積んだ自作PCを作ろうと判断
④クラファン終了(自作PC完成)後
・[Docker]を用いて自前のデータベースとサーバーを用意する。
・ピッチ変更をできるようにする
・サーバーからメールを送信できるようにする
・お問い合わせ機能を作る
・ログイン機能を付ける
・課金機能を付ける
・ランダム再生できる
・youtubeのプレイリストからカラオケを作れるようにする
という風に仕様がどんどん増えていった。やっぱボトムアップはこうなるよね。
⑤正式サービス前後には次の要素も増えた
・歌詞の自動検索機能を付ける
・リアルタイムにピッチを変更できるようにする
あとは思いついた内容をコードに書き直したり、運用設定するだけだ!全然「だけ」じゃない。やったことないことが多かったからまぁ苦戦した。
他の記事にまとめていきたいと思う。