2011-10-16 14 views
5

मैंने स्टैक ओवरफ्लो की खोज की है और मेरा जैसे अभिवादन नहीं मिल रहा है। मैं एक बटन के साथ प्रत्येक बटन के साथ चार बटन का उपयोग कर रहा हूँ।
मैं SoundPool उपयोग कर रहा हूँ:
SoundPool sound = new SoundPool(4, AudioManager.STREAM_MUSIC, 0);

मैं भी OnLoadCompleteListener() जो LogCat में एक मैं अधिसूचना बनाने के लिए के लिए लॉग का उपयोग करता है का उपयोग कर रहा हूँ।
जब मैं एमुलेटर में प्रोग्राम लॉन्च करता हूं तो मैं सभी चार नमूने पूर्ण लोडिंग देखता हूं। कार्यक्रम के दौरान तीन ध्वनियां खेलेंगी, हालांकि, कोई हमेशा कहता है:
WARN/SoundPool(4842): sample 0 not READY

कोई विचार .. क्योंकि मैं काफी हद तक झुका हुआ हूं। ध्वनि फ़ाइलें 16-बिट पीसीएम लहर फ़ाइल स्क्वायरवेव टोन खेल रही हैं।
लोड कोड:
sound.setOnLoadCompleteListener(new OnLoadCompleteListener(){एंड्रॉइड 2.2 - साउंडपूल नमूना 0 तैयार नहीं है

 @Override 
     public void onLoadComplete(SoundPool sound, int sampleId, int status) { 
      if(status != 0) 
       Log.e("SOUND LOAD"," Sound ID: " + sampleId + " Failed to load."); 
      else 
       Log.i("SOUND LOAD"," Sound ID: " + sampleId + " loaded."); 
     } 
    }); 

    soundID[0] = sound.load(this, R.raw.greennote, 1); 
    soundID[1] = sound.load(this, R.raw.rednote, 1); 
    soundID[2] = sound.load(this, R.raw.yellownote, 1); 
    soundID[3] = sound.load(this, R.raw.bluenote, 1); 


प्ले ध्वनि:

streamid.setStreamId(myActivity.sound.play(id, 0.5f, 0.5f, 0, 0, 1)); 

+0

ध्वनि को लोड करने और चलाने वाले कोड को शामिल करने के लिए अपने प्रश्न को संपादित करें। – Squonk

उत्तर

2

मैं एक ही समस्याएं आ रही हैं। मेरे प्रयोगों से, ऐसा लगता है कि आईडी हैंडलिंग के साथ कुछ गड़बड़ है। साउंडपूल को संख्या 0 के साथ ध्वनि आईडी पसंद नहीं है।

तो मुझे एक कार्य-आसपास मिल गया है। 1 के साथ मेरी नमूना आईडी शुरू करें, 0 नहीं। उम्मीद है कि यह काम करता है।

+0

आप यह कैसे करते हैं? मेरा मतलब है कि 1 के साथ अपनी नमूना आईडी शुरू करें? –

+0

हम्म, मैं सभी अलग-अलग ध्वनियों का ट्रैक रखने के लिए हैश मैप के साथ साउंडपूल का उपयोग कर रहा था। हैश मैप के साथ, आप आईडी सेट करते हैं (जिसे 'कुंजी' भी कहा जाता है) मैन्युअल रूप से। चूंकि ऐसा लगता है कि आप हैश मैप का उपयोग नहीं कर रहे हैं, मेरी टिप्पणी शायद समझ में नहीं आती है। वैसे भी शुभकामनाएं! –

संबंधित मुद्दे