这听起来像一个简单的问题,但我无法弄明白。
我正在使用Naudio播放一个wav文件(我正在使用文件的路径启动WaveOut对象)。
暂停和播放正常
问题 - 当我尝试停止(暂停并返回到文件的开头)时 - 它只是暂停文件(如暂停)。
这是我的代码:
public class FilePlayer
{
private WaveFileReader waveFileReader;
protected static WaveFormat _waveFormat = new WaveFormat(8000, 16, 1);
protected IWavePlayer _waveout = new WaveOut(WaveCallbackInfo.FunctionCallback());
public FilePlayer(string path)
{
try
{
waveFileReader = new WaveFileReader(path);
_waveout.Init(waveFileReader);
}
catch (Exception)
{
}
}
public void PlayCall()
{
try
{
_waveout.Play();
}
catch
{ }
}
public void PauseCall()
{
_waveout.Pause();
}
public void StopCall()
{
_waveout.Stop();
}
}
有任何帮助吗? thnaks!
答案 0 :(得分:0)
停止不应该回到文件的开头。它只是阻止音频设备播放。处理PlaybackStopped事件并将音频文件的位置设置为0(如果这是您需要的。)
另外,我建议不要使用函数回调。如果您没有在GUI应用程序中运行,请使用WaveOutEvent。