如何使Mumble的叠加层正常工作?


14

Mumble和《军团要塞2》(TF2)各自对我来说都可以正常工作,但是无论是独立运行还是在TF2中,我都无法使Mumble-overlay正常工作。

我尝试将以下启动选项放入Steam中TF2的属性中,但没有一个起作用。(注意,我还使用大黄蜂和一台64位计算机。)

mumble-overlay primusrun %command%
mumble-overlay primusrun %command% -nod3d9ex
mumble-overlay primusrun %command% -d3d9ex -32bit
LD_PRELOAD=/usr/lib/mumble/libmumble.so.1.2 primusrun %command%

TF2处于窗口模式,所以我会很乐于产生自己的,没有注入TF2的叠加层。


您正在使用哪个版本的Mumble。看来,这是一个固定在1.2.5上的错误-wiki.mumble.info/wiki/Overlay

@nwildner我正在运行最新的1.2.12。primusrun最近停止为我工作,因此我不得不恢复启动TF2的“旧”方式。我尝试如下插入mumble命令,但是TF2根本无法启动。LD_PRELOAD="libpthread.so.0 libGL.so.1" __GL_THREADED_OPTIMIZATIONS=1 mumble-overlay optirun %command%。我检查了更新日志,显然我在14年6月10日运行了1.2.6,所以我认为这个问题≥1.2.5。
Sparhawk

1
您是否尝试过此处详细介绍的解决方案?reddit.com/r/tf2/comments/393upg/...
Natecat

@Natecat不,我没有。感谢您的链接。但是,考虑到我已经在使用合成器(在KDE Plasma中),这听起来太具有侵入性。如果必须每次都注销并登录,则最好进行双重引导。不管怎么说,还是要谢谢你。
Sparhawk'Mar

Answers:


1

因为此修复程序依赖于修改复合管理器,并且一次只能拥有一个复合管理器,所以除非您已经使用了没有复合管理器的系统,否则很难做到这一点。我怀疑可以将LD_PRELOAD应用于任何组合管理器,但是组合管理器特定于每个OS和桌面环境。我还怀疑您可以强迫您的操作系统使用compton和修复程序,但这又是特定于OS /桌面环境的。

如果您有复合管理器,请跳过下一部分,如果您没有复合管理器,请按照下列步骤操作:

Install compton

Run the following command in your terminal and you will be all set, note that you must rerun this command every time you login, so I suggest putting this in your .bash_profile or .zprofile (if using ZSH).

LD_PRELOAD=/usr/lib/mumble/libmumble.so compton -CGb --backend glx --paint-on-overlay

The flags -CG disable shadow effects
The flag -b runs it in the background as a daemon
The flag --backend glx runs it using OpenGL

The flag --paint-on-overlay paints on X Composite overlay window instead of on root window. You can add the flag --vsync with an argument to enable vsync.

Run mumble. Because of the nature of the fix, you can start mumble after TF2 and still have the overlay show up. The overlay will appear whenever you are connected to a mumble server.

如果您像大多数人一样,并且在您的操作系统中捆绑了一个复合管理器,则此任务将变得更加复杂,因为您无法一次运行2个合成器。请注意,此修复程序相当丑陋,需要一些时间来设置,并且每次您要使用模糊覆盖时都需要注销。以下步骤是本指南的措词和修改。

Install compton and openbox (you can optionally install obconf and obmenu, but they are not necessary)

Create the directory ~/.config/openbox if it does not exist

In that directory create a file called autostart

In that file, place the following (any line starting with a # is a comment and it will not be run)

# Starts compton and is necessary for the overlay to work, look at the above section on compton to decide what flags you want to use
LD_PRELOAD=/usr/lib/mumble/libmumble.so compton -CGb --backend glx --paint-on-overlay &

# Autostarts steam
steam &

# Autostarts mumble (comment out to stop mumble from automatically starting)
mumble &

# You also can place any program in here that you wish to start
# Use a & at the end of the name so that your computer does no wait until
# that program is fully started before it start the next program.

When you wish to play a game, logout of you account, and then select openbox as your desktop environment. This requires a login manager than supports multiple desktop environments. Most do, but it may require you to look around to find out how to switch desktop environments. If you are using startx/.xinitrc, make sure that you use exec openbox-session rather than exec openbox because exec openbox does not automatically load the autostart file.

To return to your normal desktop, logout of your account and then select your normal desktop environment from you login manager.

感谢您的回答。不幸的是(根据我上面的评论),我已经在运行合成器。登录和登出对我来说太具有侵入性。我不如双启动。还是+1。
Sparhawk

@Sparhawk,啊,该死,很遗憾听到它没有工作的人。我会尝试看看是否还有其他问题。
kommander0000 '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.