音乐重复时 WP7 XNA 游戏“断断续续”

Posted

技术标签:

【中文标题】音乐重复时 WP7 XNA 游戏“断断续续”【英文标题】:WP7 XNA Game 'stutters' when music repeats 【发布时间】:2012-03-21 22:23:01 【问题描述】:

在基于 XNA 的游戏的关卡开始时,我使用 MediaPlayer.Play() 播放 .mp3 文件,并将 MediaPlayer.Repeating 设置为 true 以重复播放音乐。

当音乐重复播放时,游戏中会出现相当大的卡顿,这很烦人 - 游戏基本上会暂停,就像在等待手机找到并播放音乐然后继续。

我试图通过将 MediaPlayer.Repeating 设置为 false 来防止这种情况发生,然后手动重新启动音乐(通过检测音乐何时结束)并且口吃仍然存在。

有人知道为什么会发生这种情况/知道如何解决吗?

编辑: 这个问题只出现在手机上,模拟器上不会出现。

【问题讨论】:

您在 XNA 游戏之外获得相同的体验吗?我只是好奇这是否是特定于硬件的,并且与 Zune 播放器有更多关系。之前有报道称各种设备在播放音乐时会出现卡顿问题(尤其是在歌曲结尾处),请在此处查看此链接 -> wpcentral.com/sound-stuttering-problems-samsung 抱歉,我的回复延迟了。它在模拟器上不会卡顿,我只在一部手机(HTC Radar)上试过。问题不是音乐卡顿,而是音乐重复时游戏卡顿…… 【参考方案1】:

好吧,我建议在另一个线程中管理声音,这样它就不会干扰实际的游戏玩法。并行线程?

还要检查您是如何加载音乐的。这也可能是您管理音乐的方式。

尝试通过设置断点来调试在手机上播放音乐时重复播放音乐的方法,甚至尝试转到调试 -> 启动 Windows Phone 性能分析并查看当音乐重复播放时哪些线程处于活动状态.

这是我从一个 16 岁程序员那里得到的两分钱:D

【讨论】:

以上是关于音乐重复时 WP7 XNA 游戏“断断续续”的主要内容,如果未能解决你的问题,请参考以下文章

带有 XNA 的随机音乐播放器

XNA MediaPlayer 加载音乐时序

如何检测背景音乐是​​否在 WP8 中播放?

使用 SoundEffect 在 XNA 中循环播放带有前奏的音乐

当另一个声音使用 XNA/XACT 结束时,如何立即播放一个声音?

WP7 XNA 显示 3D FBX 模型