我怎麼能讓 Mumble 的疊加層正常運作?

我怎麼能讓 Mumble 的疊加層正常運作?

Mumble 和 Team Fortress 2 (TF2) 單獨對我來說都工作得很好,但我無法讓 Mumble-overlay 工作,無論是獨立的還是在 TF2 中。

我嘗試將以下啟動選項放入 Steam 中的 TF2 屬性中,但都無效。 (注意,我還使用 bumblebee 和 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 處於視窗模式,因此我很高興 Mumble 產生自己的覆蓋層(未註入到 TF2 中)。

答案1

因為此修復依賴修改組合管理器,而且一次只能有一個組合管理器,所以除非您已經使用沒有組合管理器的系統,否則很難做到這一點。我懷疑可以將 LD_PRELOAD 應用於任何組合管理器,但組合管理器特定於每個作業系統和桌面環境。我還懷疑您可以強製作業系統使用 compton 和修復程序,但這又是特定於作業系統/桌面環境的。

如果您有複合管理器,請跳過下一部分,如果您沒有複合管理器,請按照以下步驟操作:

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 個合成器。請注意,這個修復相當難看,需要一些時間來設置,並且還要求您每次想要使用 mumble 覆蓋時都註銷。以下步驟是根據本指南進行解釋和修改的。

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.

相關內容