[英]How to get the default Equalizer to work with my current Audio Session ID
我想让用户使用默认的均衡器来处理我的应用程序,但是即使我将其音频会话ID等传递给我,我的应用程序音频会话似乎也无法与均衡器连接。
这是我的代码:
Intent i = new Intent(AudioEffect.ACTION_DISPLAY_AUDIO_EFFECT_CONTROL_PANEL);
i.putExtra(AudioEffect.EXTRA_AUDIO_SESSION, MusicPlayerService.getMPSessionId());
startActivityForResult(i, 11113);
我正在使用上面的代码启动用户的默认均衡器。
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
System.out.println("RESULT_OK");
Equalizer equalizer = new Equalizer(0,MusicPlayerService.getMPSessionId());
equalizer.setEnabled(true);
return;
}
}
然后,我使用上面的代码来应用启用和应用它。 我在这里做错了什么? 我的手机上有一些使用股票均衡器的应用程序,它们都运行良好。
如果有人可以帮助我,将不胜感激,谢谢。
mAudioSession = mp.getAudioSessionId();
try {
final Intent effects = new Intent(AudioEffect.ACTION_DISPLAY_AUDIO_EFFECT_CONTROL_PANEL);
effects.putExtra(AudioEffect.EXTRA_PACKAGE_NAME, this.getPackageName());
effects.putExtra(AudioEffect.EXTRA_AUDIO_SESSION, mAudioSession);
startActivityForResult(effects, 0);
} catch (Exception e) {
// ignored. Whee!
}
首先添加此代码, int mAudioSession = 0;
,如果可以的话,请在mAudioSession行上方。 该代码应该可以正常工作,对其进行测试,并且可以正常工作。 我认为您re missing is, Package name, Also you don't need
equalizer.enabled` true,它根本不会做任何事情,我认为这是为了使您自己成为均衡器。 我也认为您可以使用equalizer.setenabled(true)等。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.