2014-02-25 33 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