2010-10-26 19 views
18

में एक ऑडियो फ़ाइल चलाएं मैं सिल्वरलाइट में विंडोज 7 आधारित अनुप्रयोग विकास पर काम कर रहा हूं। मैं प्रोग्राम्सिक रूप से विंडोज 7 फोन में ऑडियो फाइल चलाने का कोई तरीका नहीं ढूंढ पाया। मैं पिछले कुछ दिनों से इसे गुगल रहा हूं लेकिन मुझे इसका कोई समाधान नहीं मिला। सी # में एक वर्ग साउंडप्लेयर है लेकिन मुझे लगता है कि यह विंडोज 7 फोन में उपलब्ध नहीं है। क्या कोई मदद कर सकता है?विंडोज 7 फोन

उत्तर

14

ध्वनि चलाने के लिए Xna का उपयोग करें। आप हालांकि एक Silverlight app से संदर्भ XNA पार कर सकते हैं एक ध्वनि फ़ाइल खेलने के लिए, आप निम्नलिखित की जरूरत है:

using Microsoft.Xna.Framework; 
using Microsoft.Xna.Framework.Audio 
// ... 
Stream stream = TitleContainer.OpenStream("sounds/bonk.wav"); 
SoundEffect effect = SoundEffect.FromStream(stream); 
FrameworkDispatcher.Update(); 
effect.Play(); 

अपने अनुप्रयोग विकास के लिए सबसे अच्छा सभी! में कोड-पीछे तो

<MediaElement 
    x:Name="sound" 
    Source="sound.wma" 
    AutoPlay="False" /> 

:

+0

वाह यह बहुत अच्छा था। बहुत बहुत धन्यवाद :) – Aqueel

+5

यह सच नहीं है, विंडोज फोन 7 के लिए सिल्वरलाइट ऑडियो प्लेबैक। Http://msdn.microsoft.com/en-us/library/system.windows.controls.mediaelement(VS.95).aspx –

+2

सावधान रहें - आपको पृष्ठभूमि संगीत के लिए ध्वनि के छोटे टुकड़ों के लिए केवल ध्वनि प्रभाव का उपयोग करना चाहिए। इसके लिए आपको MediaElement –

19

आप अपने XAML दृश्य में एक MediaElement जगह कर सकते हैं

sound.Play(); 

समर्थित प्रारूप एमपी 3 और अर्थोपाय अग्रिम कर रहे हैं।

+1

यह मेरे लिए तब तक काम नहीं करता जब तक कि मैं ऑटोप्ले = " सच"। यकीन नहीं है कि क्यों। मैंने xaml में नाम और ऑटोप्ले सेट किया है, और कोड और स्रोत.प्ले() को कोड में सेट किया है (जैसा कि मैं इसे एकाधिक ध्वनियों के लिए उपयोग कर रहा हूं), और यह ऑटोप्ले के साथ झूठ पर काम नहीं करता है, लेकिन यह इसके साथ सही काम करता है सच करने के लिए सेट करें। धन्यवाद। –

+1

-1 क्योंकि इस तरह से कोई अन्य एमपी 3 बजाना + संगीत पर रोकता है अगर यह डिवाइस पर खेल रहा था। यह आपके WP7 ऐप को सत्यापन को पास नहीं करेगा यदि आपको विशेष रूप से उपयोगकर्ता से संगीत बंद करने की अनुमति नहीं मिलती है। इस वजह से मैं बस बंद हो गया। वर्तमान में WP7 प्लेटफार्म पर संकुचित ऑडियो का उपयोग करने के लिए वास्तव में कोई अच्छा तरीका नहीं है। जब मीडिया समर्थन की बात आती है तो WP7 निश्चित रूप से काफी कमजोर है। – Jonny

3

कैसे के बारे में सिर्फ एक में निर्मित व्यवहार का उपयोग है?

<Button> 
    <i:Interaction.Triggers> 
     <i:EventTrigger EventName="Click"> 
      <eim:PlaySoundAction Source="/Alarm1.wma" Volume="1"/> 
     </i:EventTrigger> 
    </i:Interaction.Triggers> 
</Button> 

आपको इन दो नामस्थानों की आवश्यकता है।

xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" 
xmlns:eim="clr-namespace:Microsoft.Expression.Interactivity.Media;assembly=Microsoft.Expression.Interactions" 
+0

एक crear समाधान की तरह लग रहा है। यदि आप मीडियालेमेंट का उपयोग करते हैं तो क्या आप unos करते हैं? –

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