其他分享
首页 > 其他分享> > android – 为什么我的SoundPool静音?

android – 为什么我的SoundPool静音?

作者:互联网

我设置了我的SoundPool,并在onCreate()中加载声音资源:

soundPool = new SoundPool(4, AudioManager.STREAM_MUSIC, 0);
soundId = soundPool.load(this, R.raw.edible_underwear, 1);

然后我尝试在onClick()中播放两次这样的声音,一个缓慢播放左侧扬声器,一个声音主要放在右扬声器中:

soundPool.play(soundId, 0.9f, 0.1f, 0, -1, 0.7f);
soundPool.play(soundId, 0.1f, 0.1f, 0, -1, 1.5f);

听不到声音.我已经摆弄了数量,优先级和费率.到目前为止无济于事.我错过了一些明显的东西吗

解决方法:

事实证明,SoundPool有两个错误/限制.

>音量从0.0f到1.0f不包括在内. 1.0f和0.0f均为静音,因此您必须将音量限制为0.99f.
>将样本加载到不适合ram的SoundPool中不会导致抛出异常,也不会返回可以检查失败的soundId.所以你必须查看你的日志,并向Android众神祈祷你的样本适合目标设备.

标签:android,audio,soundpool
来源: https://codeday.me/bug/20190713/1445427.html