2013-11-21 78 views
1

我想用XAudio2播放wav文件,我在網上搜索過,並且有一些像這樣的示例項目:C# XAudio2 Sound Playback for Windows Phone或這個:Play wav example但是所有那些播放特殊的wav文件,如果我替換我的wav(轉換爲MS ADPCM,單聲道),則CreateSourceVoice返回HRESULT 0x88960001。那麼這些wav文件的特別之處是什麼?或任何其他方法來播放WAV文件,xaudio2(我的工作在Windows Phone 8)Windows Phone 8 xaudio2 wav文件問題

回答

1

所以玩兩音效和背景音樂的標準方法是使用XNA庫。

我寫了一篇關於playing async sound in the windows phone一篇博客文章,這是非常簡單的

基本上它說,這

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

static Stream stream1 = TitleContainer.OpenStream("soundeffect.wav"); 
static SoundEffect sfx = SoundEffect.FromStream(stream1); 
static SoundEffectInstance soundEffect = sfx.CreateInstance(); 

public void playSound(){ 
    FrameworkDispatcher.Update(); 
    soundEffect.Play(); 
} 

沒有得到任何比這更容易。爲了獲得特定WAV要求看MSDN page for supported formats

我也貼在我的博客文章下載一個工作的解決方案。

祝你好運!

+0

感謝您的快速回復,但它似乎XNA不會再發展,我不能對我的Windows Phone 8的項目與添加的NuGet XNA :-( –

+0

是的,你可以...你只需要添加一個引用它。 –

+0

XNA不是由微軟開發的,但你仍然可以使用這些庫。沒有什麼不對的。 –