¿Cómo puedo hacer que funcione la superposición de Mumble?

14

Mumble y Team Fortress 2 (TF2) funcionan bien para mí individualmente, pero no puedo hacer que la superposición de murmullos funcione, independientemente o dentro de TF2.

He intentado poner las siguientes opciones de inicio en las propiedades de TF2 en Steam, ninguna de las cuales ha funcionado. (Nota: también estoy usando abejorro y una computadora de 64 bits).

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 está en modo de ventana, por lo que estaría contento de que Mumble produzca su propia superposición que no se inyectó en TF2.

Gavilán
fuente
¿Qué versión de Mumble estás usando? Parece que es un error que se corrigió en 1.2.5 - wiki.mumble.info/wiki/Overlay
@nwildner Estoy ejecutando el último murmullo 1.2.12. primusrunha dejado de funcionar para mí recientemente, así que tuve que volver a la "vieja" forma de lanzar TF2. Intenté insertar el comando murmullo de la siguiente manera, pero TF2 no se inicia en absoluto. LD_PRELOAD="libpthread.so.0 libGL.so.1" __GL_THREADED_OPTIMIZATIONS=1 mumble-overlay optirun %command%. Revisé mis registros de actualización, y aparentemente estaba ejecutando 1.2.6 el 10 de junio de 2014, así que creo que he tenido este problema ≥1.2.5.
Sparhawk el
1
¿Has probado la solución detallada aquí? reddit.com/r/tf2/comments/393upg/…
Natecat
@Natecat No, no lo he hecho. Gracias por el enlace. Sin embargo, eso suena demasiado invasivo, dado que ya estoy ejecutando un compositor (en KDE Plasma). Si tengo que cerrar sesión y entrar cada vez, también podría hacer un arranque dual. Gracias de cualquier manera.
Sparhawk

Respuestas:

1

Debido a que esta solución se basa en modificar el administrador compuesto, y solo puede tener un administrador compuesto a la vez, es difícil hacerlo a menos que ya use un sistema que no tenga un administrador compuesto. Sospecho que es posible aplicar LD_PRELOAD a cualquier administrador compuesto, pero el administrador compuesto es específico para cada sistema operativo y entorno de escritorio. También sospecho que puede forzar a su sistema operativo a usar compton y la solución, pero nuevamente eso es específico del sistema operativo / entorno de escritorio.

Si tiene un administrador compuesto, omita esta sección siguiente, si no tiene un administrador compuesto, siga estos pasos:

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.

Si es como la mayoría de las personas y tiene un administrador compuesto incluido con su sistema operativo, esta tarea se vuelve más complicada porque no puede tener 2 compositores ejecutándose a la vez. Tenga en cuenta que esta solución es bastante fea y requiere un tiempo de configuración y también requiere que cierre la sesión cada vez que desee utilizar la superposición de murmullos. Los siguientes pasos están parafraseados y modificados de esta guía.

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.
kommander0000
fuente
Gracias por la respuesta. Desafortunadamente (según mis comentarios anteriores) ya estoy ejecutando un compositor. Iniciar y cerrar sesión es demasiado invasivo para mí; También podría tener doble arranque. +1 de todos modos.
Sparhawk
@Sparhawk, maldita sea, lamento escuchar que no funcionó, hombre. Intentaré ver si descubro algo más.
kommander0000