葡萄酒声音播放得太快,而且有可怕的噼啪声

葡萄酒声音播放得太快,而且有可怕的噼啪声

我的应用程序中的声音以超快的速度播放,而且发出可怕的噼啪声。在 Spotify 中,歌曲实际上以大约 3 倍的速度播放。我在 Google 上搜索了好几次,但能想到的只有一个2012 年 1 月的错误报告标记为已关闭。

我使用 PlayOnLinux 和 Wine 版本 1.5.0、1.6、1.6.0、1.7.0、1.7.8 以及 Wine 系统版本 1.4.1 测试了 Spotify 和 Hearthstone。它们都存在完全相同的可怕的噼啪声问题。这让我认为这不是 Wine 的缺陷。

从错误报告中重现的步骤:

重现步骤:
1. winecfg
2. 进入“音频”选项卡
3. 测试声音

实际结果:
产生噼啪声

预期成绩:
正常输出

还发出噼啪声。执行此操作时,winecfg 将以下内容打印到终端:

p11-kit:无法加载模块:/usr/lib/i386-linux-gnu/pkcs11/p11-kit-trust.so:/usr/lib/i386-linux-gnu/pkcs11/p11-kit-trust.so:无法打开共享对象文件:没有此文件或目录
err:ole:CoInitializeEx 尝试将此单元的线程模型从多线程更改为单元线程
ALSA lib pcm.c:7843:(snd_pcm_recover) 发生欠载运行
ALSA lib pcm.c:7843:(snd_pcm_recover) 发生欠载运行
ALSA lib pcm.c:7843:(snd_pcm_recover) 发生欠载运行
ALSA lib pcm.c:7843:(snd_pcm_recover) 发生欠载运行

(当我打开 winecfg 时显示第一行,当我单击“测试声音”时显示最后五行)

有什么线索可以说明哪里出了问题吗?如果我可以提供更多信息,请告诉我。


pulseaudio 1:4.0-0ubuntu6 amd64

答案1

由于这是 Google 返回的第一个结果,我想在这里分享我的经验。对于那些寻求快速修复的人,请将以下内容放入您的 ~/.bashrc 或 /etc/profile 中以进行系统范围的更改:

alias wine='PULSE_LATENCY_MSEC=60 wine'

这与 Skype 和 PulseAudio 4.0 及更高版本使用的修复方法相同,其行为方式与 wine 相同。希望这能有所帮助!

编辑(2016.01.12)

您可以通过将此行添加到 ~/.bashrc 并注销/重新启动来全局启用此变量

export PULSE_LATENCY_MSEC=60

如果您在此之后在其他应用程序中遇到音频问题,只需删除该行并注销或重新启动即可。如果您想暂时测试它,请打开一个新终端并粘贴该行。现在,您从此终端调用的每个应用程序都将设置变量,PulseAudio 将设置延迟。

有关此问题和“修复”的更多信息:http://arunraghavan.net/2013/08/pulseaudio-4-0-and-skype/

答案2

运行终端(Ctrl+Alt+T)

发出命令pulseaudio -k

尝试重现问题。不应再快进播放。

至于噼啪声,日志会简单明了地告诉您,您遇到了缓冲区不足问题。更改采样质量...牺牲一些质量来提高速度,看看是否能解决缓冲区不足问题。

答案3

对于某些游戏,如果您使用 PlayOnLinux,则可以使用文本编辑器打开启动器并按Exec=如下方式更改行:

Exec=env PULSE_LATENCY_MSEC=60 /usr/share/playonlinux/playonlinux --run "GameName" %F

答案4

相关内容