问题描述
我正在我的Android版本7.1.1中测试均衡器,但它显示了运行时异常,但在7.0以下版本中可以正常运行.
I am testing equalizer in my Android Version 7.1.1 but it shows a Runtime Exception but It's perfectly working on below version 7.0.
当我尝试初始化均衡器时:
When I try to initialize equalizer :
private static UUID EQUALIZER_UUID;
mp = MediaPlayer.create(this, R.raw.a);
mp.start();
if(hasEqualizer()) {
equalizer = new Equalizer(0, mp.getAudioSessionId());
equalizer = equalizerUtil.getEqualizer(mp);
Log.d("No. of Presets",String.valueOf(equalizer.getNumberOfPresets()));
}
public static boolean hasEqualizer() {
for (AudioEffect.Descriptor effect : AudioEffect.queryEffects()) {
if (EQUALIZER_UUID.equals(effect.type)) {
return true;
}
}
return false;
}
它显示错误:
java.lang.RuntimeException: Cannot initialize effect engine for type: 0bed4300-ddd6-11db-8f34-0002a5d5c51b Error: -3
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2678)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2743)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1490)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6165)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:888)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:778)
Caused by: java.lang.RuntimeException: Cannot initialize effect engine for type: 0bed4300-ddd6-11db-8f34-0002a5d5c51b Error: -3
我尝试了各种可用的解决方案- java.lang.RuntimeException:无法初始化效果引擎对于类型:0bed4300-ddd6-11db-8f34-0002a5d5c51b错误:-3 ,但是没有任何作用
I had tried various solutions available on - java.lang.RuntimeException: Cannot initialize effect engine for type: 0bed4300-ddd6-11db-8f34-0002a5d5c51b Error: -3, but Nothing works
有人可以提出任何想法吗?
Can someone have any ideas?
推荐答案
如果会话ID尚不可用,可能似乎是getAudioSessionId()的问题.在以下链接的线程上查看此响应:
It looks like it might be an issue with getAudioSessionId() if a session ID isn't available yet. See this response on the thread linked below:
https://github.com/google/ExoPlayer/issues/2357
这篇关于原因:java.lang.RuntimeException:无法初始化类型为0bed4300-ddd6-11db-8f34-0002a5d5c51b的效果引擎错误:-3的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!