0

私はオーディオを再生するゲームに取り組んでいます。サウンドは、Samsung デバイスと HTC デバイスで正常に再生されます。ただし、Motorola 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);

Motorola デバイスと SoundPool に存在する可能性のあるバグを探してみましたが、有用なものは見つかりませんでした。ありとあらゆる助けをいただければ幸いです。

それぞれ 20kb 未満の 5 つの MP3 ファイルをロードしています。

スケルトン プロジェクトを作成し、以下のコードのみを MainActivity に含めましたが、結果は同じでした。Resources クラスから 12kb MP3 ファイルを 1 つだけ読み込みます。

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 サウンドプールの問題

于 2013-01-12T22:39:23.543 に答える
1

いくつかの実験の結果、Motorola Droid X2は、少なくとも上記のようにロードされた場合は、SoundPoolを介してMP3ファイルを再生しないことが判明しました。.ogg形式に切り替えたところ、期待どおりに音が鳴っています。

于 2013-01-13T17:10:53.880 に答える