【发布时间】:2018-06-05 20:38:39
【问题描述】:
使用CSCore库,我在一个名为BGM.cs的单独文件中编写了用于播放类BGM中的mp3文件的代码,播放方法为BGM.Play("file directory");,在Form中调用。但不知何故,我无法从中获得任何声音。我已经检查了音量、编解码器和输出,我想不出还有什么可能导致这个问题。
这是类文件的代码:
public class BGM
{
public static void Play(string file)
{
using (IWaveSource soundSource = GetSoundSource(file))
{
using (ISoundOut soundOut = GetSoundOut())
{
soundOut.Initialize(soundSource);
soundOut.Volume = 0.8f;
soundOut.Play();
}
}
}
private static ISoundOut GetSoundOut()
{
if (WasapiOut.IsSupportedOnCurrentPlatform)
return new WasapiOut();
else
return new DirectSoundOut();
}
private static IWaveSource GetSoundSource(string file)
{
return CodecFactory.Instance.GetCodec(file);
}
【问题讨论】: