System.InvalidOperationException:“声音 API 仅支持播放 PCM 波形文件。”

Posted

技术标签:

【中文标题】System.InvalidOperationException:“声音 API 仅支持播放 PCM 波形文件。”【英文标题】:System.InvalidOperationException: "Sound API only supports playing PCM wave files." 【发布时间】:2022-01-14 13:36:03 【问题描述】:
SoundPlayer simpleSound = new SoundPlayer("C:/Users/heerm/Downloads/mixkit-positive-interface-beep-221.wav");
simpleSound.Play();

此代码出现在名为错误按摩的标题中,我不知道如何将 wav 文件转换为 pcm 波形文件或如何使用 winforms 播放不同的文件格式。谁能帮帮我?

【问题讨论】:

【参考方案1】:

如果我们想在winform中播放wav文件,可以使用如下代码:

using System.Media;
private void Play_Click(object sender, EventArgs e)
    
        SoundPlayer soundPlayer = new SoundPlayer(@"Sound Path");
        soundPlayer.Play();
    

这种方法可以正常播放wav文件。如果您仍然收到错误“Sound API 仅支持播放 PCM 波形文件”,则您的声音文件格式存在问题,如下所示: Sound API only supports playing PCM wave files

这个页面可以给你一些关于转换成 pcm 波形文件的建议。 https://social.msdn.microsoft.com/Forums/en-US/d30a3002-a553-4bb2-b8da-058255395a5e/the-error-occured-when-i-tried-to-play-wav-file-winforms?forum=netfxbcl

【讨论】:

以上是关于System.InvalidOperationException:“声音 API 仅支持播放 PCM 波形文件。”的主要内容,如果未能解决你的问题,请参考以下文章

视图中出现 InvalidOperationException.Collection 被修改错误