カスタムテンポ機能の実装に向けて

リズムアプリ開発中

リズム練習アプリ、つけたい機能がありました
それはカスタムテンポ
テンポ変更機能は、音楽練習アプリとして必須に思いました。
初心者はゆっくり練習(×0.5〜0.7)
上級者は速く挑戦(×1.2〜1.5)

目次

ユーザーが自分のペースで練習できるようになる機能!

メイン画面に「設定」ボタンを追加
設定画面でBPMを調整
すべてのパターンに適用

知らなかった!arbでは、新しいキーをファイルの最後に追加

“change_tempo”: “テンポを変える”,というのをARBファイルに新たに追加する

flutter clean
flutter pub get
flutter gen-l10n

なんどやってもだめ。
なかなか、この言葉が生成されない。ファイルが更新されない。
構文エラーがあるはずとチェックするも、構文エラーは見当たらない

なんと、テンプレートファイル(app_ja.arb)では、新しいキーをファイルの最後に追加する必要があることを知る!
change_tempo が 以前書いたsettings_title より前にあり、これが問題

"change_tempo": "テンポを変える",
"showAll": "全て表示",

"showAll": "全て表示",
"change_tempo": "テンポを変える",


これで上手くいきました!解決まで長い道のりでした

BPMから倍率式に変更

カスタム速度は各楽譜パターンは独自のBPMを持っているので倍率式に変更
×0.5に設定 → メトロノームがゆっくりになる
×1.5に設定 → メトロノームが速くなる

パターン変更時の自動リセット

アプリ起動時、次の問題に行ったとき、リセットされるようにしました

メトロノームと判定への倍率適用

カスタムテンポは「メトロノーム」と「判定機能」に適用されるように

動的baseOffset調整

これの調整が大変でした。どうしてもシステム遅延があったりするので・・
いろいろな速さでコンソールを見ながら調整
今日はアンドロイドのエミュレーターで調整しましたが
明日から実機でやろうと思います。

目次