Windows phone 8 xaudio2 wav文件问题

时间:2013-11-21 15:15:00

标签: windows-phone-8 wav xaudio2

我想用XAudio2播放一个wav文件,我在互联网上搜索了一些像这样的示例项目:C# XAudio2 Sound Playback for Windows Phone或者这个:Play wav example但所有那些播放特殊的wav文件,如果我更换我的wav(转换为MS ADPCM,mono)然后CreateSourceVoice返回HRESULT 0x88960001。那些wav文件有什么特别之处?或使用xaudio2播放Wav文件的任何其他方法(我正在使用Windows Phone 8)

2 个答案:

答案 0 :(得分: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

我还在我的博客文章中发布了一个可供下载的工作解决方案。

祝你好运!

答案 1 :(得分:1)

根据这篇文章,XAudio2仅支持MS ADPCM格式的子集: http://msdn.microsoft.com/en-us/library/windows/desktop/ee415711(v=vs.85).aspx

您必须使用Windows 8 SDK中的adpcmencode工具将其压缩为可用的东西