3

我尝试了 fmod.net,但出现“System.BadImageFormatException”错误。然后我尝试了 WindowsMediaPlayer 并播放了声音。但是我在当前播放结束时播放声音时遇到问题(下面的回调代码。它似乎不喜欢我在状态更改期间播放新歌但是我找不到另一种方式来通知我歌曲完成时)并使用这个链接我能够获得标题,但不能获得艺术家、专辑等。

我可以使用什么库来播放声音(mp3、m4a,我想要 ogg 和 aac)。我查找了 FFMPEG.NET 并找到了一个没有发布的项目和另一个名为 fflib 的项目,它似乎只进行转换(并且也有错误的图像异常)。我可以用什么?或我如何在 WMPLib.WindowsMediaPlayer 中获取标题/艺术家/等,并让它在结束时播放另一首歌曲(我不想在 WMP 中添加播放列表。我想维护它并在出现时收到通知歌曲结束做进一步的动作)。

    private void Player_PlayStateChange(int NewState)
    {
        var newState = (WMPLib.WMPPlayState)NewState;
        Console.WriteLine(newState);
        //if (newState == WMPLib.WMPPlayState.wmppsMediaEnded)
        if (newState == WMPLib.WMPPlayState.wmppsStopped)
        {
            next();
        }
    }
4

3 回答 3

4

'System.BadImageFormatException' 是由使用不同平台的库引起的。如果您使用的库是 x86,则必须将目标平台设置为 x86,而不是任何 CPU(假设在 x64 上运行)。

于 2010-02-14T20:49:18.213 回答
2

您可以在 Codeplex 上使用NAudio

于 2010-02-14T19:48:42.243 回答
1

你试过Bass.Net吗?

于 2010-02-14T19:51:08.323 回答