NAudio 在调用函数之前播放音乐

NAudio playing music before function is even called

WaveOutEvent player = new WaveOutEvent();
WaveChannel32 volumeChannel = new WaveChannel32(waveStream);
player.Init(volumeChannel);

Multimedia.Timer musicdelayer = new Multimedia.Timer();    

musicdelayer.Mode = Multimedia.TimerMode.OneShot;
musicdelayer.Tick += Musicdelayer_Tick;
musicdelayer.Period = (offset < 0) ? Math.Abs(offset) : 1;

勾选事件:

private void Musicdelayer_Tick(object sender, EventArgs e)
{
        Console.WriteLine("tick");
        player.Play();
}

现在发生了一件非常奇怪的事情:

在偏移量为 -5000 的 tick 事件被调用 5 秒后,控制台输出 "tick"...但是播放器甚至在 tick 被调用之前就已经开始播放了。这到底是怎么回事?

我只是对这是怎么发生的感到困惑。知道会发生什么吗?

显然先暂停它似乎可以解决问题...奇怪