Android audio effect limits to 5 bands

2019-04-08 21:38发布

I use Android Audio Effect/Equalizer API for my app. However, it limits to 5 bands. Is there any document/library that helps to tune more bands for a finer equalizer implementation?

4条回答
该账号已被封号
2楼-- · 2019-04-08 21:47

You can try having a try with sasken-player, it's a reimplementation of the equalizer that will give you 10 bands

查看更多
乱世女痞
3楼-- · 2019-04-08 21:57

It varies from device to device getNumberOfBands tell you the number of Equalizer effect. Some devices have 5,8 and 13,etc.

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

equalizer.setEnabled(true);

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

Also have a look at this

查看更多
Root(大扎)
4楼-- · 2019-04-08 21:58

The number of bands and their center frequencies are dependent upon the handset. The equalizer implementation is baked into the ROM.

查看更多
beautiful°
5楼-- · 2019-04-08 22:10

This question was asked long ago. Here is a solution for people seeking answer in future. I have found this library for android that provides 10band Equalizer.

Using Android's Equalizer Api on three different devices I was able to get the following result:

1) Samsung Galaxy Note 3 (5 Bands)

2) Huawei Mate 8 (5 Bands)

3) Nexus 5 (5 bands)

using this library I am able to get 10bands on all of the above devices. I have tested it and it is working great.

Include this library in your project. And use the following code to have an Equalizer with 10 bands.

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();

This library has is documentation that you can refer as-well. Hope this helps.

查看更多
登录 后发表回答