C# SoundPlayer和Windows 7 wav文件

C# SoundPlayer和Windows 7 wav文件,c#,audio,soundplayer,C#,Audio,Soundplayer,当我尝试播放声音文件“Windows Critical Stop.wav”时,出现以下异常:exec{“声音API仅支持播放PCM波形文件。”}System.exception{System.invalidoOperationException} 我理解PCM是什么,我只是不知道如何:1)播放声音文件,2)事先确定它不是PCM,不会播放,并阻止选择该文件 以下是我正在使用的代码: SoundPlayer player = new SoundPlayer(); player.SoundLocati

当我尝试播放声音文件“Windows Critical Stop.wav”时,出现以下异常:
exec{“声音API仅支持播放PCM波形文件。”}System.exception{System.invalidoOperationException}

我理解PCM是什么,我只是不知道如何:1)播放声音文件,2)事先确定它不是PCM,不会播放,并阻止选择该文件

以下是我正在使用的代码:

SoundPlayer player = new SoundPlayer();
player.SoundLocation = FileNameTextBox.Text;

try
{
    player.Play();
}
catch (Exception exec)
{
    MessageBox.Show("Sound could not be played: " + exec.ToString());
}

Wave文件可以进行不同的编码(即使使用GSM编解码器),所以只需检查用于跳过特定编解码器的编解码器。只需检查音频格式位


你必须使用这个播放器。你的代码是一个系统损坏器
Microsoft管理员,

谢谢您的帮助。该文件在该字段中有一个0x55。出于好奇,我输入了以下代码:if(dialog.ShowDialog()==DialogResult.OK){BinaryReader br=new BinaryReader(File.Open(dialog.FileName,FileMode.Open));br.BaseStream.Position=20;Int16 aF=br.ReadInt16();br.Close();if((aF!=1)和&(aF!=2)){MessageBox.Show(“不良音频格式=“+audioFormat.ToString());return;另一个包含格式信息的网站:提供了有关格式的更多详细信息。再次感谢您的帮助。此程序可以将您的文件转换为PCM。只需取消选中“广告软件垃圾”,即可免费使用: