gpt4 book ai didi

android - 使用 audioSessionId 值来实例化 AudioFx 类?

转载 作者:IT老高 更新时间:2023-10-28 23:24:42 24 4
gpt4 key购买 nike

我已阅读 Android API 并尝试在互联网上搜索有关声明自定义 audioSessionId 的信息然后使用 audioSessionId初始化 AudioFx 类并将我的 MediaPlayer 或 AudioTrack 分配为硬编码 audioSessionId .

此方法允许我先创建一个 AudioFx,然后再将新的 MediaPlayer 或 AudioTrack 附加到此 audioSessionId .

我目前能够在 Android 2.3.6 上使用此方法,但在 Android 4.x 上,我遇到了初始化失败的错误问题,或者在其他 ICS/JellyBean 设备上,此错误是静默的,但调用函数会导致异常(exception)。

三星 Galaxy S II [Android 4.0.3]: [Android 4.0.4 不再出现问题]

 E/AudioEffect(13250): set(): AudioFlinger could not create effect, status: -38
E/AudioEffects-JNI(13250): AudioEffect initCheck failed -5
E/AudioEffect-JAVA(13250): Error code -5 when initializing AudioEffect.
W/WrapEqualizer(13250): createEqualizer() -> Effect library not loaded

摩托罗拉 Xoom [Android 4.1.2]
失败它似乎在构造函数之后静默。然后调用 getProperties() 它崩溃。

java.lang.RuntimeException: AudioEffect: set/get parameter error
at android.media.audiofx.AudioEffect.checkStatus(AudioEffect.java:1247)
at android.media.audiofx.Equalizer.getProperties(Equalizer.java:532)

Nexus 4 [Android 4.2.1]
使用 audioSessionId=0 一切正常,但使用任何其他数字时,每次我尝试将预设、频段级别、低音增强更改为 ON 或 Virtualizer 更改为 ON 时,设备都会报告以下静音错误。报告的效果 ID 因我尝试修改的 FX 而异。

W/AudioPolicyManagerBase(165): unregisterEffect() unknown effect ID 1381

2012 年 8 月 11 日更新:
我可以使用 audioSessionId为 0。我知道它已被弃用,但它可以使用权限。 <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />我应该使用 Audio Session id 为 0 的 AudioFx 吗?

最佳答案

您应该查看:this

显然这是 ICS 中出现的一个 Unresolved 问题,并且可能在 JB 中也没有解决。

关于android - 使用 audioSessionId 值来实例化 AudioFx 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11193239/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com