2012-09-22 5 views
5

私は自分のアプリにAndroid Audio Effect/Equalizer APIを使用しています。ただし、5つの帯域に制限されています。より細かいイコライザを実装するためにバンドを調整するのに役立つドキュメント/ライブラリはありますか?Androidオーディオエフェクトの制限は5バンド

+0

イコライザのインス​​タンスを複数使用してバンドを増やすことはできませんか? –

+1

私は[http://developer.android.com/reference/android/media/MediaPlayer.html#getAudioSessionId()](MediaPlayer'sAudioSessionId)に添付されているイコライザのインス​​タンスを1つ使用します –

+0

@NilsPipenbrinck:複数のイコライザのインス​​タンスは同じ別の5バンド周波数に変換されます。次に、どのようにすべての周波数を異ならせることが可能ですか?他のアイデアはありますか? –

答えて

2

それはあなたのイコライザー効果の数を教えてデバイスからデバイスgetNumberOfBandsまで変化します。一部のデバイスには5,8および13などがあります。また

Equalizer equalizer = new Equalizer(0,mediaplayer.getAudioSessionId()); 

equalizer.setEnabled(true); 

equalizer.getNumberOfBands(); //it tells you the number of equalizer in device. 

あなたはsasken-playerとの試みを持つ試すことができますthis

+0

私は3つの異なるデバイス(Samsung、Huawei、Nexus)でこれを試しました。すべて5バンドを与える。 Playstoreで利用可能なPowerAmp(音楽プレーヤー)はすべてのデバイスに10バンドを提供します。彼らがどのようにこれをやっているのか? –

+0

私は別のデバイスでそれをテストし、時々15と時々5を返します。そして、PowerAmpが10バンド – Nepster

0

バンド数とその中心周波数は、ハンドセットによって異なります。イコライザの実装はROMに焼き付けられます。

0

を見て、それはずっと前に頼まれたあなたに10のバンド

1

この質問を与えるイコライザーの再実装です。将来的に回答を求める人々のための解決策です。私は10bandイコライザを提供するアンドロイド用のこのライブラリを見つけました。

1)三星銀河(注)3(5バンド)

2)華為メイト8(5つのバンド)

:私は次のような結果を得ることができた三つの異なるデバイス上でAndroidのイコライザーAPIを使用して

3)Nexus 5(5バンド)

使用thisライブラリ上記のすべてのデバイスで10バンドを取得できます。私はそれをテストし、それは素晴らしい仕事です。

あなたのプロジェクトにはthisライブラリが含まれています。次のコードを使用して、10バンドのイコライザーを使用します。

IMediaPlayerFactory mediaPlayerFactory = new OpenSLMediaPlayerFactory(getApplicationContext()); 
IBasicMediaPlayer mediaPlayer = mediaPlayerFactory.createMediaPlayer(); 
IEqualizer equalizer = mediaPlayerFactory.createHQEqualizer(); 
/* This returns 10 bands exactly like Poweramp music app does */ 
int numOfBands = equalizer.getNumberOfBands(); 

このライブラリには、よく参照できるドキュメントがあります。お役に立てれば。

関連する問題