3

我正在使用以下代码播放音频文件,但在代码的第二行出现程序崩溃。可能是什么问题呢?

这是我正在使用的代码:

Stream stream = TitleContainer.OpenStream("sounds/bonk.mp3");
SoundEffect effect = SoundEffect.FromStream(stream);
FrameworkDispatcher.Update();
effect.Play();

运行此代码时遇到的错误是:

Microsoft.Xna.Framework.ni.dll 中出现“System.ArgumentException”类型的异常,但未在用户代码中处理

4

2 回答 2

6

您是否尝试过使用.wav文件而不是.mp3文件来制作音效?

文档SoundEffect.FromStream关于声音文件要求的说明:

Stream 对象必须指向有效 PCM波形文件的头部。此外,此波形文件必须为 RIFF 比特流格式。

音频格式有以下限制:

  • 必须是 PCM波形文件
  • 只能是单声道或立体声
  • 必须是 8 位或 16 位
  • 采样率必须在 8,000 Hz 和 48,000 Hz 之间
于 2013-06-13T06:01:00.900 回答
3

您的解决方案的问题是音效无法播放 .mp3 文件,您需要使用 .wav 才能使用音效。

于 2013-06-13T06:11:57.127 回答