ステレオサウンドファイル(.mp3)からサンプルデータを取得してバッファにプッシュするにはどうすればよいですか?その機能を備えた特定のライブラリはありますか?質問が本当に初心者の場合は申し訳ありませんが、私はオーディオプログラミングに非常に慣れていません。
よろしくお願いします=)
ステレオサウンドファイル(.mp3)からサンプルデータを取得してバッファにプッシュするにはどうすればよいですか?その機能を備えた特定のライブラリはありますか?質問が本当に初心者の場合は申し訳ありませんが、私はオーディオプログラミングに非常に慣れていません。
よろしくお願いします=)
「直接AndroidAPIを介してMP3ファイルを再生できる唯一の方法は、重量があり、低速で、高レベルのAPIのみを表示するMediaPlayerです。オーディオストリームをミキシングまたは変更したり、低レイテンシで管理したりする必要がある場合は、ご自身で行ってください。 。」
(経由: http: //mindtherobot.com/blog/624/android-audio-play-an-mp3-file-on-an-audiotrack/)
残念です。JLayerは無料で、Javaで記述されているため、次のものを使用できます。
http://www.javazoom.net/javalayer/javalayer.html
十分に高速になるかどうかは、実行する分析の量、電話に搭載されているプロセッサの種類、実行中の他のアプリによって異なります。すべての通常のもの。
CPUを集中的に使用するものがある場合は、ネイティブコードを記述し、C / C ++ライブラリを使用できます。これにより、リアルタイム分析を実行する機会が増えます。
http://developer.android.com/sdk/ndk/overview.html
一部のARMプロセッサには、利用可能な場合に利用できるベクトル命令などがあり、速度を向上させることができます。
http://www.arm.com/products/processors/technologies/neon.php
実行していることが純粋なリアルタイムではない場合は、完全または部分的な前処理を検討することをお勧めします。次に、分析情報をキャッシュして、ユーザーが最初に待つだけで済むようにします...または、アプリにすべてのファイルを一晩で分析させるオプションをユーザーに提供します。