0

我正在开发一款播放音频的游戏。声音在我的三星设备和 HTC 设备上播放良好。但是,摩托罗拉 Droid X2 无法播放这些声音。

初始化我的 SoundPool:

static SoundPool sp;
sp = new SoundPool(8, AudioManager.STREAM_MUSIC, 0);
sp.load(context, resource_id, 1);

播放声音:

sp.play(resource_id, 1.0f, 1.0f, 0, 0, 1.0f);

我尝试搜索摩托罗拉设备和 SoundPool 可能存在的任何错误,但没有发现任何有用的东西。任何和所有的帮助表示赞赏。

我正在加载五个 MP3 文件,每个文件都不到 20kb。

我创建了一个框架项目,并在 MainActivity 中仅包含以下代码,结果相同。仅从 Resources 类加载一个 12kb MP3 文件。

super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    SoundPool sp = new SoundPool(16, AudioManager.STREAM_MUSIC, 0);
    int name = sp.load(this.getApplicationContext(), R.raw.brickhit,1);
        try {
            Thread.sleep(10000);
            Log.d("mark","sleeping....");
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    sp.play(name, 1.0f, 1.0f, 1, -1, 1.0f);
4

2 回答 2

2

我之前没有遇到过这个问题,但也许流计数可能是这里描述的问题:Android Soundpool questions

于 2013-01-12T22:39:23.543 回答
1

经过一些实验,结果证明摩托罗拉 Droid X2 不会通过 SoundPool 播放 MP3 文件,至少在按上述方式加载时不会。我切换到 .ogg 格式,声音按预期播放。

于 2013-01-13T17:10:53.880 回答