2014-02-25 35 views
1

我正在开发与音乐播放器相关的应用程序,它具有均衡器设置,我知道每个设备都有一个默认的均衡器。用于获取默认的均衡器如何在android中为媒体播放器开发自定义均衡器?

equilizer.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 
      // TODO Auto-generated method stub 

      Intent i = new Intent(AudioEffect.ACTION_DISPLAY_AUDIO_EFFECT_CONTROL_PANEL); 
      i.putExtra(AudioEffect.EXTRA_AUDIO_SESSION, mp.getAudioSessionId()); 
      startActivityForResult(i, 11113); 
     } 
    }); 
} 

在onActivityResult代码:

protected void onActivityResult(int requestCode,int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 

    if (resultCode == RESULT_OK) { 
     return; 
    } 


} 

使用上面的代码中,我们可以得到默认的均衡器,但我的要求是设计用不同的UI中的均衡器,并添加一些更影响到均衡器。

任何人都可以给我一个想法,我该怎么做?

回答

1

还有一个Equalizer的影响。您可以通过MediaPlayer的音频会话ID给它的构造:

// Given a MediaPlayer mp 
Equalizer eq = new Equalizer(0, mp.getAudioSessionId()); 

Here是使用它的一个示例程序。我没有建立它看,但它至少正确地连接均衡器。

+0

感谢您的回复 – Somanadh

+0

我们如何将媒体播放器的一项活动中的当前正在播放的mp3文件传递给eqaulizer的另一项活动 – 1234567

+0

您应该在“服务”中拥有“MediaPlayer”,然后有“活动”或用于控制播放的“片段”和用于均衡器的“活动”或“片段”。如果您需要更具体的建议,请提出问题并发布一些代码。 – Dave