久しぶりの新作アプリ、その名も「OTOKIKU」(おときく)です。
ストアの紹介文より、
—
OTOKIKUは操作が簡単な多機能オーディオプレーヤーです。
こんな利用シーンのある方にオススメ。
・練習録音を何度も聞いたり
・参考音源をゆっくり(あるいは速く)再生したり
・会議やセミナーのボイスメモをスキップしながら聞いたり
—
欲しかったのでつくってみたシリーズですが、参考演奏をゆっくり再生してそれに合わせて弾くとか、練習録音聴くときにちょっと戻って聴き直すとか、今どのくらいのテンポなんやろ?って聴きながらBPMを調べてみるとか、そういうことをやりたかったのでつくってしまいました。
こんなふうに使います。
見た目シンプルなので、ほとんど説明不要な気もしますが、上部の各ボタンの役割はこうなってます。
- URL:ネット上のファイルを直接指定し、デバイスにダウンロードしてから再生します
- ファイル:デバイス上のファイルにアクセスできます。クラウドストレージの設定ができていれば、そちらのファイルも参照できます。デモ動画ではDropbox上のファイルを再生していました
- ミュージックライブラリ:Apple Musicの音楽などミュージックappで管理している曲を再生できます。音楽データに直接アクセスできるわけではないので、波形は表示されないです
あとは、再生速度を変えたり、シークできたり(スクラブなスライダーを実現しているのでスライダーから指を遠ざけると細かく動かせます)、無料アプリなんでぜひ使ってみてください。
そしてついでに、音楽やってて欲しくてつくってみたシリーズを宣伝。
余談:開発のお話
構想から1月半くらいで公開となりました。今回はせっかくなのでSwiftUIでの実装です。SwiftUIで組んだアプリを公開するのはこれが初めてですね。
過去にWidgetでは使ってましたけれど、ユーザ操作のあるものという意味では全く新しい体験で、そこそこ試行錯誤しつつ、という感じでした。UIKitで書いていたらもっとはやく完成していたでしょうけれど、急ぎだったわけでもないので。
SwiftUIは初登場から数年が経っているので、ネット上には先人たちの知恵がたくさん存在していて、いろんなページにお世話になりました。
もちろんSwiftUIだけでは実現不可能な箇所もたくさんありますので、そこはUIKitとブリッジしてってことで。
規模的にもちょうどよい練習材料でしたし、先日のWWDCでまたいろんな新機能が発表されたところなので、既存のアプリたちもメンテがてら便利なほうを取捨選択して書き換えていけたらいいかもしれません。