使用c#wpf播放资源文件中的声音

时间:2014-09-21 11:28:20

标签: c# wpf audio

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

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分: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();
    }