wp7

2011-06-02 22 views
5

के लिए चांदी की रोशनी में ध्वनि प्रभाव चलाने के लिए क्या उपयोग करना है, मुझे पता है कि मैं ध्वनि प्रभाव वर्ग के लिए एक्सएनए का संदर्भ दे सकता हूं और यही वह है जो मैं अब तक कर रहा हूं लेकिन मैं सोच रहा था कि क्या मैं किया गया है उससे बेहतर तरीका है करते हुए।wp7

using Microsoft.Xna.Framework; 
using Microsoft.Xna.Framework.Audio; 

using (var stream = TitleContainer.OpenStream("test.mp3")) 
{ 
      var effect = SoundEffect.FromStream(stream); 
      FrameworkDispatcher.Update(); 
      effect.Play(); 
} 

मेरे टेस्ट ऐप के लिए मेरे पास प्रत्येक 1 सेकंड लंबा लगता है कि एक बार बटन दबाए जाने के बाद मैं खेलना चाहता हूं। मैं अलग-अलग तकनीकों के साथ खेल रहा हूं लेकिन यदि संभव हो तो मैं जानना चाहता हूं कि ध्वनि प्रभाव आधारित ऐप बनाने में प्रतिबद्ध होने से पहले पेशेवर कैसे ऐसा करते हैं। ध्वनि प्रभाव को लोड करने जैसी छोटी चीजें या बटन को दबाए जाने के उदाहरण को लोड करना उपयोगी होगा।

धन्यवाद।

+0

आप MediaElement जाँच की थी? – Shanadas

+0

मैंने मीडियाइलेमेंट पर कुछ पढ़ा है और वे इसे कम ध्वनि के लिए उपयोग करने का सुझाव नहीं देते हैं बल्कि पृष्ठभूमि संगीत जैसे लंबे ट्रैक। – Tom

+0

मुझे लगता है कि ध्वनिफ्रेम एक WAV फ़ाइल स्ट्रीम को एमपी 3 – Gluip

उत्तर

2

अगर मैं तुम्हें थे मैं PhoneyTools SoundEffectPlayer

का प्रयोग करेंगे इस वर्ग SoundEffect XNA एकीकरण का उपयोग कर वस्तुओं खेलने के लिए प्रयोग किया जाता है। प्लेयर को खेलने के लिए ध्वनि प्रभाव के लिए काफी देर तक जीना चाहिए, इसलिए यह एक विधि के बाहर स्कॉप्ड करने के लिए सामान्य है। उदाहरण के लिए:

public partial class MediaPage : PhoneApplicationPage 
{ 
    // ... 

    SoundEffectPlayer _player = null; 

    private void playButton_Click(object sender, RoutedEventArgs e) 
    { 
    var resource = Application.GetResourceStream(new Uri("alert.wav", UriKind.Relative)); 
    var effect = SoundEffect.FromStream(resource.Stream); 
    _player = new SoundEffectPlayer(effect); 
    _player.Play(); 

    } 
} 
+0

नहीं निकालता है, मैंने एक ही समय में 4 अलग-अलग ध्वनियों को चलाने के लिए फ़नीटोल का उपयोग करने की कोशिश की और यह अभी भी लेट गया है कि मैंने नीचे दिए गए पोस्ट से उदाहरण का भी प्रयास किया है और यह वही काम करता है। मुझे यकीन नहीं है कि मुझे यह अंतराल क्यों मिल रहा है। एम्यूलेटर और फोन दोनों पर। – Tom

2

मुझे लगता है कि एक अच्छा उदाहरण AppHub पर आधिकारिक नमूना होगा। यह दर्शाता है कि कई ध्वनियां कैसे खेलें। आप सीधे here से नमूना डाउनलोड कर सकते हैं।

यह नमूना दर्शाता XNA फ्रेमवर्क के SoundEffect और SoundEffectInstance वर्गों का उपयोग करने के लिए कैसे विंडोज फोन के लिए एक सिल्वरलाइट आवेदन में एक साथ कई ध्वनियों खेलने के लिए। यह पर एक आसान तरीका भी दिखाता है फ्रेमवर्क डिस्पैटर को कॉल करने के लिए डिस्पैच टाइमर सेट करें। के लिए अद्यतन करें XNA फ्रेमवर्क के आंतरिक के लिए गेम लूप अनुकरण करें। अंत में, यह दिखाता है कि एक लहर ऑडियो फ़ाइल को स्ट्रीम में कैसे लोड किया जाए जिसे ध्वनि-प्रभाव वर्गों द्वारा खेला जा सकता है।

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