Я создаю приложение для моих наушников Bluetooth.Приложение просто имеет квалификатор и DynamicProcessing.Когда я подключил эквалайзер к MediaPlayer, эквалайзер не работает.OnCreate:
mediaPlayer = MediaPlayer.create(getContext(), R.raw.testtrack);
setupEqualizer();
А вот эквалайзер
private void setupEqualizer() {
mediaPlayer = new MediaPlayer();
mediaPlayer.start();
Log.d(TAG, "ANH HAI" + String.valueOf(mediaPlayer.getAudioSessionId()));
mEqualizer = new Equalizer(0, mediaPlayer.getAudioSessionId());
if (mEqualizer != null ) {
mEqualizer.setEnabled(true);
int num_bands = mEqualizer.getNumberOfBands();
num_sliders = num_bands;
short r[] = mEqualizer.getBandLevelRange();
min_level = r[0];
max_level = r[1];
for (int i = 0; i < num_sliders && i < MAX_SLIDERS; i++)
{
//frequency band whose frequency range is requested.
// The numbering of the bands starts from 0 and ends at (number of bands - 1).
//the frequency range in millHertz in an array of integers.
// The first element is the lower limit of the range, the second element the upper limit.
mSlider[i].setOnSeekBarChangeListener(this);
}
}
}
Я знаю, если мы присвоим audioSessionId значение 0, которое устарело, эквалайзер работает.Я также просмотрел некоторые ссылки, такие как: https://github.com/mosamabinomar/AndroidEqualizer https://www.101apps.co.za/articles/perfect-sound-using-the-equalizer-effect-a-tutorial.html, но я не нашел ответа.Есть ли какой-то другой способ, которым мы можем подключить эквалайзер к MediaPlayer, который работает для любой песни, воспроизводимой приложением Android (Spotify, Youtube ...)