C#SoundPlayer在结束前停止播放wav文件

时间:2014-01-28 16:52:21

标签: c# .net wav soundplayer

我创建了一个.wav文件,其中包含完整的正弦波。您可以使用Audacity或类似方法打开它进行验证。

https://mega.co.nz/#!DkR3gKia!dV9zDtdzmqHDDkEUeZviYf78SDkkxWVjUTy8kYEJnio

我想使用C#.Net SoundPlayer播放此文件。像这里:

static void Main(string[] args)
    {
        using (SoundPlayer sad = new SoundPlayer("D:\\Soundlocator\\test.wav"))
        {
            while (true)
            {
                sad.PlaySync();
                Thread.Sleep(100);
            }
        }
    }

我从示波器上看到的不到正弦波的一半。

enter image description here

谁能告诉我为什么? 也许我的wav文件头不正确?使用vlc或Audacity播放相同的文件可以得到正常的正弦波。

1 个答案:

答案 0 :(得分:0)

我仍然不知道问题出在哪里。我为克服这个问题所做的是在文件的末尾添加一些暂停(0)。现在它看起来应该如此。与PlayLooping结合使用时,它并不完全是应该的。

虽然SoundPlayer在此WAV上无法正常工作的问题仍然存在。