暇があるから人である。暇でなければ機械だ

人生暇化を目指す人が書くブログ

カラオケアプリを作ってみよう!!(1)どのようなアプリにするか考える

カラオケアプリを作ってみよう!!(0)なぜ作りたいと思ったか。 - 暇があるから人である。暇でなければ機械だ

前回のあらすじ

従来のカラオケに「歌いたい曲が無い」という不満があったからアプリ作ろう!と思った。

 

じゃあどういうアプリを作ろうかと仕様書?設計書?をある程度決めようとなった。

①初期段階

androidios、PC用のアプリ、ソフトを作るのは面倒だった。そのため全部の媒体でも使えるwebアプリとして作る。

・ytdlpでyoutubeから音源を取得

・[DEMUCS]という音源分離(音楽をvocalとinstに分ける)ことのできるAIを使用してオケ音源を作ろうとした。

・そのためにPythonを扱いやすいwebフレームワーク[Flask]を用いることにした。ほかにもサーバーに以前使ったことのある[nginx]を用いることにした。

・xserverのVPNレンタルサーバー(800円/月)を借りて運営する

 

②1カ月後

・[nginx]だと一つのタスク(音源分離)中ほかの人がサイトにアクセスできないことが分かったので[Apache]に変更

 

クラウドファンディング開始

・現PC、レンタルサーバーの処理速度が遅すぎたため、資金を集めていいGPUを積んだ自作PCを作ろうと判断

 

④クラファン終了(自作PC完成)後

・[Docker]を用いて自前のデータベースとサーバーを用意する。

・ピッチ変更をできるようにする

・サーバーからメールを送信できるようにする

・お問い合わせ機能を作る

・ログイン機能を付ける

・課金機能を付ける

・ランダム再生できる

youtubeのプレイリストからカラオケを作れるようにする

という風に仕様がどんどん増えていった。やっぱボトムアップはこうなるよね。

 

⑤正式サービス前後には次の要素も増えた

・歌詞の自動検索機能を付ける

・リアルタイムにピッチを変更できるようにする

あとは思いついた内容をコードに書き直したり、運用設定するだけだ!全然「だけ」じゃない。やったことないことが多かったからまぁ苦戦した。

他の記事にまとめていきたいと思う。