使用声音效果运行程序时,Visual Studio无响应

时间:2014-01-30 20:32:52

标签: c# visual-studio-2010 visual-studio xna

我有一首歌,我希望它能在XNA项目中播放。我将歌曲添加到内容目录,并将其内容导入器更改为MP3 Audio File - XNA Framework,将其内容处理器更改为SoundEffect - XNA Framework。我正在使用代码

 SoundEffectInstance music = Content.Load<SoundEffect>("music").CreateInstance()

但是每当我运行项目时,Visual Studio都会无响应并在能够显示任何输出之前崩溃。当我将文件的内容处理器更改为Song - XNA Framework时,Visual Studio不会崩溃,但是当我这样做时,我在加载文件时收到错误。

为什么Visual Studio会一直崩溃,我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

我相信你的问题与你的代码无关,而是在等待项目编译。当VS“崩溃”时,您可以设置正确的内容导入器和处理器。

XNA在运行之前将所有内容文件转换为.XNB个文件,然后在运行时使用这些XNB文件。添加新内容项时,XNA必须将其转换为XNB文件一次;之后,XNA每次游戏运行时都会重用XNB文件。转换文件可能需要几分钟,特别是大文件(如几分钟长的音频文件)。所以我会尝试等待几分钟来编译项目(如果有等待光标,不要对VS不耐烦......等待)。一旦项目构建一次,您将不必再等待几分钟。

答案 1 :(得分:-1)

MP3文件用于Song类型如果您想将其用作音效,那么您必须将其设为.WAV

否则请使用:

Song music = Content.Load<Song>("music");
MediaPlayer.Play(music);