使用SoundPlayer在c#中播放.wav文件

时间:2015-06-12 19:07:57

标签: c# audio soundplayer

我目前有一个问题,其中一个文件作为.m4a发送给我,我将其重命名为.wav .....(我认为这是问题,因为我可以播放其他.wav文件)

现在,当我运行代码时,它给了我这个错误:

  

其他信息:位于c:\ Windows \ Media \ dj.wav的文件不是有效的wave文件。

也许我只需要将其更改回.m4a,然后让一些网站将其转换为.wav,而不仅仅是重命名它?

我的代码如下所示:

using System.Media;


playSimpleSound();



private void playSimpleSound()
    {
        SoundPlayer simpleSound = new SoundPlayer(@"c:\Windows\Media\dj.wav");
        simpleSound.Play();
    }

另外,如何编写路径,以便它会在调试文件夹中命中文件?因为我要将其部署到另一个建筑物中的瘦客户端。

1 个答案:

答案 0 :(得分:1)

更改文件的扩展名不会更改其中的内容。 M4A是MPEG-4仅音频数据,而WAV文件通常是原始和未压缩的音频样本。

要转换数据本身,您需要使用SoXGoldWave等音频转码工具。

至于你的路径说明符,你可以简单地使用" dj.wav"或者" wavfiles \ dj.wav",基本上相对于你的exe所在的位置。这是因为当在explorer中单击双击启动时,当前工作目录设置为它所在的位置。但是,您也可以使用答案here指定完整路径。

希望这有帮助!