3

私が構築している Android アプリは、音楽を聴いて(電話で再生するか、デバイスのマイクで拾う) 、音楽に基づいて何かを行う必要があります

そこで、私が考えていたのは、再生中の音楽のテンポ/bpm を聞いて、アプリの背景色に影響を与えるものを計算することです

Malcolm McRoberts がここで要求したのと同様のものが必要です。つまり、音楽を分析してから何かを実行します。彼はEcho Nestを使用して目標を達成できたと言いましたが、その方法については (まだ) 説明していません。

elucid135 がここで要求したものと非常によく似たものが必要です。1 分あたりの拍数 (bpm) をリッスンし、それに基づいてアニメーションを実行します。しかし、私のプラットフォームは大きく異なります。

Androidのアイデアはありますか

おそらく、Android AudioTrackMediaPlayer、またはAudio Captureの知識を持っている人が何らかの情報を提供できます。

編集:

私が求めていることを誰も理解していないようだったので、言い換えてみます。

Android を使用して、デバイスのマイクを介して音楽を録音したいと考えています。次に、録音された音楽のビートを見つけるために録音されたものを分析したいと思います。そのビートに基づいて、私はアプリで何かが起こることを望んでいます.

私は音楽を録音する方法を知っています。私が探しているのは、音楽のビートを識別する方法に関するアドバイスです。

それが解決することを願っています。

4

2 に答える 2

2

「音楽を聴かなければならない」
... 「電話で再生する」
動作しません。Android はそれをサポートしていません。

... 「またはデバイスのマイクによって拾われた」
場合によっては (つまり、ノイズの少ない環境でラウドスピーカーを使用する場合) 動作しますが、品質はかなり悪くなります。

もう 1 つの方法は、Visualizerクラスを使用して、セッション 0 (グローバル出力ミックス) からオーディオ データを取得することです。オーディオの品質はかなり悪くなりますが、BPM の計算には十分である可能性があり、音楽がヘッドセットにルーティングされていても機能します。

于 2013-02-28T13:38:12.317 に答える
1

私は同様の問題に取り組んでいます。TarsosDSPリンクを調べてみてください。これは Java ベースのオーディオ信号処理ライブラリであり、テンポを決定するために使用できるビートを識別できるクラスを提供し、Android で動作します。

于 2014-09-21T16:14:22.753 に答える