2014-09-21 87 views
0

我想知道是否可以从资源文件播放声音文件(wav,mp3)。我需要播放两种声音 - 一种是背景音乐(循环中的异步声音),另一种是随机声音。我尝试了SoundPlayer,但是当我播放随机声音时BGM停止播放(当然,我使用了两个独立的SoundPlayers)。因此,我正在寻找一个C#WPF库,我可以使用它从资源中一次播放两个或更多声音。如果有人能提供一个例子,我将不胜感激。先谢谢你。使用c#播放来自资源文件的声音wpf

+1

重复的问题:http://stackoverflow.com/questions/15145209/how-to-play-a-wpf-sound-file-resource – 2014-09-21 11:31:05

回答

1

您是否尝试过使用NAudio库?这非常简单并且支持很多功能。

+0

我尝试过但没有任何效果。也许我写了一个错误的代码;)NAudio是否支持播放资源文件?如果是的话,我该怎么做? – 2014-09-21 11:39:27

0

我解决我的问题与此代码:

private NAudio.Wave.WaveFileReader wave = new NAudio.Wave.WaveFileReader(Properties.Resources.bgm); 
    private NAudio.Wave.DirectSoundOut outs = null; 
    public void PlayBGM() 
    { 
     if (outs == null) 
     { 
      outs = new NAudio.Wave.DirectSoundOut(); 
      outs.Init(new NAudio.Wave.WaveChannel32(wave)); 
     } 
     outs.Play(); 
    }