0

我正在嘗試在Windows Phone 7應用程序的Silverlight中播放音頻。我有一個MP3音頻文件,其構建操作設置爲資源。要播放聲音,我使用:爲什麼Windows Media Player無法播放此音頻?

SoundEffectInstance sfi = null; 
... 
     Stream source = Application.GetResourceStream(new Uri("/Bird Calls;component/Crow.mp3", UriKind.Relative)).Stream; 
     Microsoft.Xna.Framework.Audio.SoundEffect effect = SoundEffect.FromStream(source); 
     sfi = effect.CreateInstance(); 
     sfi.Play(); 

此代碼在SoundEffect.FromStream方法中引發InvalidOperationException。

回答

6

SoundEffect無法播放mp3文件。如果你想播放MP3文件,你應該使用這樣的MediaPlayer

private Song song; 


string musicUrl = string.Format("/Bird Calls;component/Crow.mp3"); 
song = Song.FromUri("name", new Uri(musicUrl, UriKind.Relative)); 
FrameworkDispatcher.Update(); 
MediaPlayer.IsRepeating = true; 
MediaPlayer.Play(song); 
1

自己弄明白了。解決此問題的方法是使用.wav文件而不是.mp3。

+1

查看Cong Tran的替代方案 – msbg

相關問題