2009-10-19 160 views
0

由于某些原因,当使用下面的片段播放WAV文件时,它会随机播放,如高音噪音。它不会一直发生,只是随机发生。当它更频繁地播放时,它似乎更频繁地发生。 WAV属性如下,以及我正在使用的代码片段。C# - .WAV随机播放高音

WAV属性:

比特率 - 750kbps
音频采样大小 - 16位
通道 - 1(单声道)
音频采样率 - 44kHz的
音频格式 - PCM

段:

System.Media.SoundPlayer myPlayer = new System.Media.SoundPlayer(Captcha.Properties.Resources.sound1); 
myPlayer.Play(); 

这是因为我玩的方式该文件或文件本身?谢谢。

+0

您是否尝试过播放不同的文件? – timoxley 2009-10-19 05:41:55

+0

我刚刚尝试了另一个WAV文件,没有失真。 下面是属性: 比特率 - 88kbps 音频采样大小 - 8位 通道 - 1(单声道) 音频采样率 - 11KHZ 音频格式 - PCM 我不那么音频萨维,所以会有人能够告诉我这究竟是什么原因? – user 2009-10-19 05:59:28

+0

Wav属性关闭:16(样本大小)* 44000(采样率)!= 750000(kbps)(704000) – 2009-10-19 07:49:54

回答

0

所以这或者似乎是WAV文件本身的问题或.NET中的错误。这很可能是文件的问题,我会尝试使用该文件来查看是否有帮助,或者完全使用其他文件。谢谢大家的帮助。

+0

是的。尝试与外部玩家一起玩,看看你是否仍然听到噪音 – dtroy 2009-10-19 22:35:57

+0

我只是在Windows Media Player 11和Songbird中连续播放了大约8分钟,并且没有任何问题。 – user 2009-10-19 23:04:12

+0

你可以看看这个项目:http://naudio.codeplex.com/ 该示例让你用不同的API播放音频。它可能会帮助您指出您遇到问题的API。例如,解决方法可能会使用DirectSound。 – dtroy 2009-10-19 23:11:27

0

你在vista上听到这种噪音吗?

我遇到了使用WaveOut WIN32 API的问题。 PlaySound在内部使用相同的库(Winmm)播放声音。

这种噪音只出现在某些波形文件上,并在Windows Vista(我也认为Windows 7)。它在XP上正常工作。我相信这是这些API的新实现中的一个错误。 如果你使用Windows媒体播放器来播放这些WAV文件,它们可以很好地播放(在Vista上),因为我认为它使用了DirectSound API。

我现在还没有解决方案,我正在考虑将我的实现更改为将来使用DirectSound。

+0

这是目前在Windows XP 32位上。 – user 2009-10-19 05:55:33

1

似乎是一个音频问题。尝试另一个WAV文件。

0

我在过去有类似的问题,我通过更换有问题的机器的音频驱动程序来解决它。

尝试在相同的条件下在不同的机器中重现问题。