先ほどボイスチェンジャーアプリを公開しました。
gr8ボイスチェンジャーと言う名前で
google playより既にインストールが可能です。
gr8ボイスチェンジャーの機能としてはそのままですが、声を変換する事ができます。
全部で8種類の声が組み込まれています。
1:to Man
男性の声にします。声の音程を下げているので、男性が使うとよりダンディな声になります。
2:to Women
女性の声にします。声の音程を上げているので、女性が使うと幼稚園児の声になります。
3:to Double
2人が同時にしゃべっているような声にします。気持ち悪い声は2倍気持ち悪くなります。
4:echo
声にエコーがかかります。いやらしい声になります。
5:to Bird
鳥のようにピーチクパーチクした声にします。
6:to Turtles
亀のような低音でのそっとした声になります。
7:to Robo
ロボットのような声にします。イメージはdoroidくんです。
8:to Reverse
逆再生です。
操作性も考慮し、本当はもっとバリエーションも出せるのですが、8種類に限定しました。
また、デザインも全体を木目で木のインターフェースにしました。他のアプリとの差別化と言う意味で、作ったのですが不評でしたら、もっと機械ちっくなデザインに差し替えます。
↓再生画面は変換している音声のアイコンが表示されます。
↓録音は最大で10秒だけにしました。
今回出したアプリは割りと自信作です。
音のシェアの機能があまりsns側でも普及はしてないので要望が多ければつけさせて頂きます。
インストールはこちらから
裏側(システム)の話:
今回ボイスチェンジアプリを作る際に基本的には、wav形式にしてrawデータのbyteとかをいじって作成しました。
doubleやエコー、早くとか遅くと、逆再生は割りと簡単にできました。
ロボットの声は難しそうに見えるのですが、実は20行くらいの処理で簡単にできました。複雑にいろんな要素も変形できるようにするのは時間がかかりそうだったので、簡単に実装してしまいました。
で、男性用と女性用の音のデータに関しては、ピッチを変えています。このピッチを変える作業がとても大変で、48000Hzで取得しているのですが、裏を返せば10秒録音で480000のデータを処理する必要があります。このデータをさらにフーリエ変換をすると、数百万回の処理をする事になり時間がかかってしまいます。その間、ユーザーに待たせてしまうと(ピッチを上げるのと下げるのも、大体録音した秒数分かかりました。)、このアプリは使えないアプリになってしまうので、バックで処理を行なって、できたデータを保存して、それを再生する処理にしています。(他のロボとかはリアルタイム変換です)
処理中もできるだけ、他の使える部分で楽しめるよう最大限、邪魔をしないようにしつつ、でもしっかり作ってますよアピールをしながら読み込んでいます。
フーリエ変換を使う為小さすぎる音域のデータを無視する事ができたので、ノイズクリアの機能も簡単の搭載できました。
作っている時フーリエ変換の速度を上げられなくて困っていたのですが、変態的なほどピッチシフトの処理が早いアプリなども存在し、自分でこのアプリを公開するか悩む事も多かったです。実際、他にも多くのボイスチェンジャーアプリも多かったので。
なのでその分、使いやすややデザインに気を使って、他のアプリにない部分を注力して制作してみました。
ぜひお試しください!!