Windows phone 7 在WP7 XNA中的SoundEffect播放开始和结束时单击

Windows phone 7 在WP7 XNA中的SoundEffect播放开始和结束时单击,windows-phone-7,audio,xna,soundeffect,Windows Phone 7,Audio,Xna,Soundeffect,我正在循环此声音文件:。在Windows中,它可以在任意数量的播放器上完美播放,但当我在XNA中将它作为音效加载时,它在播放的开始和结束时都会发出这些恼人的咔哒声 如果我把它循环一段时间,它就不会在中间产生任何恼人的点击。如果我将其作为独立声音播放,它仍然会在开始时单击。它在模拟器和我的物理设备上都可以点击 为什么要这样做?我的声音文件有问题吗?这是一个16位立体声44.1 kHz PCM WAV文件,我认为这是相当标准的 (edit2)我通过XNA捕捉了通过回放产生的声音,并将其与原始波形进行

我正在循环此声音文件:。在Windows中,它可以在任意数量的播放器上完美播放,但当我在XNA中将它作为音效加载时,它在播放的开始和结束时都会发出这些恼人的咔哒声

如果我把它循环一段时间,它就不会在中间产生任何恼人的点击。如果我将其作为独立声音播放,它仍然会在开始时单击。它在模拟器和我的物理设备上都可以点击

为什么要这样做?我的声音文件有问题吗?这是一个16位立体声44.1 kHz PCM WAV文件,我认为这是相当标准的

(edit2)我通过XNA捕捉了通过回放产生的声音,并将其与原始波形进行了比较。看一看:


播放的声音太糟糕了!两个大幅度的变化一定是我听到的咔哒声。它似乎有点把第一部分弄乱了。将静音放在开头可能对一些人有所帮助,因为混乱的静音不会产生任何点击。

使用类似于查看声音波形的程序。您可以通过正确排列波形来减少或消除“点击”,使其开始和结束于0db标记(中心线)。在Audacity中,您可以通过分别在前面和后面使用淡入和淡出来实现这一点,尽管这会导致声音的音量“脉冲”。为了解决这个问题,请尽可能放大,并且只在前面和后面最小的可选择区域使用淡入/淡出

需要注意的一点是,你希望波浪继续。。。波浪,当它循环时。如中所示,如果你的波形指向声音的开头(它从0db开始上升),那么它应该在结尾从下面上升到0db,这样如果你要复制并粘贴声音,它会形成一个漂亮的波形,而不是峰值。

使用类似于查看声音波形的程序。您可以通过正确排列波形来减少或消除“点击”,使其开始和结束于0db标记(中心线)。在Audacity中,您可以通过分别在前面和后面使用淡入和淡出来实现这一点,尽管这会导致声音的音量“脉冲”。为了解决这个问题,请尽可能放大,并且只在前面和后面最小的可选择区域使用淡入/淡出


需要注意的一点是,你希望波浪继续。。。波浪,当它循环时。如中所示,如果您的波形指向声音的开头(从0db开始上升),那么它应该在结尾从下面上升到0db,这样,如果您要复制并粘贴声音,它会形成一个漂亮的波形而不是峰值。

编辑问题以显示声音的开头。我故意将其剪切为非常接近0的开头,在WMP、Audacity或任何普通媒体播放器中播放声音时,它不会发出咔哒声。它只有在XNA中作为音效播放时才会这样做。当我回到家时,我将在模拟器中捕捉它的实际声音,并将其与源代码进行对比。哦,我对它进行了编辑,以继续在循环中挥舞:我剪掉开始部分,并将其与结束部分交叉淡入淡色,这样我就得到了一个无缝的循环。实际循环的声音不是问题。在XNA中播放开始时的点击是。右声道看起来有点移位。缩小到采样级别将显示是否如此。即使是最小的偏移也会发出咔嗒声。我肯定注意到XNA比其他媒体播放器做得更明显;我认为这是由于游戏中声音文件的压缩。如果你真的不明白,你可以使用soundeffect的音量参数通过编程使声音淡入。无论如何,我认为,因为单击只发生在开始时,并且您已经交叉淡入循环,所以问题从0db跳到您的开始。编辑问题以显示原始文件的波形与XNA中的播放波形。点击肯定是在XNA中引入的!啊,我明白了。是的,那是完全不同的。它必须是由于压缩或不准确的内容处理器。。。恐怕我帮不了你。如果您可以更改声音文件类型,则可能会用到此选项:。它完全跳过内容导入程序。编辑问题以显示声音的开头。我故意将其剪切为非常接近0的开头,在WMP、Audacity或任何普通媒体播放器中播放声音时,它不会发出咔哒声。它只有在XNA中作为音效播放时才会这样做。当我回到家时,我将在模拟器中捕捉它的实际声音,并将其与源代码进行对比。哦,我对它进行了编辑,以继续在循环中挥舞:我剪掉开始部分,并将其与结束部分交叉淡入淡色,这样我就得到了一个无缝的循环。实际循环的声音不是问题。在XNA中播放开始时的点击是。右声道看起来有点移位。缩小到采样级别将显示是否如此。即使是最小的偏移也会发出咔嗒声。我肯定注意到XNA比其他媒体播放器做得更明显;我认为这是由于游戏中声音文件的压缩。如果你真的不明白,你可以使用soundeffect的音量参数通过编程使声音淡入。无论如何,我认为,因为单击只发生在开始时,并且您已经交叉淡入循环,所以问题从0db跳到您的开始。编辑问题以显示原始文件的波形与XNA中的播放波形。点击肯定是在XNA中引入的!啊,我明白了。是的,那是完全不同的。它必须是由于压缩或不准确的内容处理器。。。恐怕我帮不了你。如果您可以更改声音文件类型,则可能会用到此选项:。它完全跳过内容导入程序。