私のアプリケーションを開発していますが、問題が発生しました。AndroidでMediaplayerで安定したサウンド再生
私のアプリを起動するとき、データベースから情報を取得します。それから、データベースからの情報に従って画面上にノートを描画し、ハイハット、スネア、キックノートを描画します。
次に、rx javaを使用してhighLightNotes()というメソッドを呼び出します。
Observable.interval(400, TimeUnit.MILLISECONDS).subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer<Long>() { @Override
public void onNext(@NonNull Long aLong) {
highLightNotes(aLong);
}
次のステップは、それが黒のノートを探しているということで、ノートが黒であるときには、このメソッドを呼び出します。
public void playSnare(){
snarePlayer.seekTo(0);
snarePlayer.start();
}
snarePlayerがメディアプレーヤです。
私の最初の問題は、ノートを聞くには時間がかかりすぎることです。リズムが不安定になる場合があります
2番目の問題は、明らかにrxjava noobのようなものです。私はリズムを最初にクリックして、それを始めるのに数秒かかりますし、本当に早く再生したのでしょうか?私は安定している。
私はそれに取り組むために、より多くの情報を提供してください。
この場合、どのような使用をお勧めしますか? – trOnk12
私は1つのスレッドをお勧めしたいと思いますが、あなたはメインスレッド上でUIアップデートを行うだけです。必要に応じてスリープを使用してスレッドを遅延させます。しかし、Androidは一般的にオーディオ待ち時間の問題を抱えていることが知られているため、すべてを動作させることは簡単ではありません。 https://developer.android.com/ndk/guides/audio/audio-latency.html –
ここでは、スレッドとタイマーを使用するだけでrxjavaを使用するのではなく、あなたはより具体的にabitすることができますか:P – trOnk12