我创建了一个利用原始libFLAC.dll代码在 Windows Phone 8.0 上播放 FLAC 文件的项目。它曾经在 MediaElement 和 WP 8.0 的后台工作,但在将项目更新到 Windows Phone 8.1 后,声音开始闪烁,组件开始“堆栈溢出”。
由于 Silverlight 8.1 不支持背景音频,我已将该项目更新为 Windows Phone 8.1 运行时项目。虽然问题出在 Windows Phone 运行时应用程序中同时使用背景音频和 MediaElement 时。
似乎不清楚,我想澄清一下:我创建了一个MediaStreamSource 适配器,它连接 Windows.Media.Core.MediaStreamSource 事件并完成所有工作。我当然不使用 Silverlight 的 MediaStreamSource 实现。
我在 MSDN 论坛上创建了一个帖子,可以找到更多详细信息,并在 CodePlex 上开源了该项目,因此每个人都可以获取 WP 8.0 和 WP 8.1 的源代码,看看出了什么问题。
我真的希望有人能找到解决方法,或者至少让微软知道这个问题。