C# 用c语言播放声音更有效

C# 用c语言播放声音更有效,c#,audio,C#,Audio,我用C语言编程了一个获胜的轮子。它为每个场播放一个声音。从200毫秒到1.5秒。听起来像滴答声 这是我唯一的代码声音: public class Global{ public static WMPLib.WindowsMediaPlayer tick_sound = new WMPLib.WindowsMediaPlayer(); } private void timer1_Tick(object sender, EventArgs e){ Global.tick_soun

我用C语言编程了一个获胜的轮子。它为每个场播放一个声音。从200毫秒到1.5秒。听起来像滴答声

这是我唯一的代码声音:

public class Global{
    public static WMPLib.WindowsMediaPlayer tick_sound = new WMPLib.WindowsMediaPlayer();  
}

private void timer1_Tick(object sender, EventArgs e){
    Global.tick_sound.controls.stop();
    Global.tick_sound.URL = @"\Resources\tick.mp3";
    Global.tick_sound.controls.play();
}

它在工作,但是在这个时间里听起来不是很好。我想Windows Media Player的速度太慢了。有没有其他方法可以播放声音并更快更好地播放?

NAudio是一个不错的选择。你可以在这里找到它:

安装NAudio。 添加NAudio和NAudio.Wave,作为项目中的参考。 并使用它的代码

下面是一个例子:

class PlaySound
{
    IWavePlayer wave;
    AudioFileReader file;



    public PlaySound(string FILE)
    {
       file = new AudioFileReader(FILE);
       wave = new WaveOut();
    }

    public void playSound()
    {
         wave.Init();
         wave.Play();
    }
}
然后在播放声音的代码中:

PlaySound sound = new PlaySound(@"\Resources\tick.mp3");
sound.playSound();