View Issue Details

IDProjectCategoryView StatusLast Update
0001488OBS-StudioXComposite Capture Source (Linux)public2019-08-28 15:00
ReporterrndltrzAssigned To 
PrioritynormalSeveritymajorReproducibilityalways
Status newResolutionopen 
PlatformOBS StudioOSLinuxOS Version(Other)
Product Version23.1.0 
Target VersionFixed in Version 
Summary0001488: [Linux] Window capture is semi-transparent for some applications
DescriptionOn modern linux distros, some applications are captured as semi-transparent surfaces.
It seems that is's related to glXFBConfigs changes in recent Xorg/drivers, details here: https://obsproject.com/forum/threads/regression-rocket-league-capture-too-dark.106402/
The suggested workaround works only with proprietary Nvidia drivers, with recent mesa version you get black screen if you enable "Use alpha-less texure format (Mesa workaround)".
Affectted applications:
Rocket League (native) - I don't have that game myselft, but it's mentioned on forums
Quacke Champions (steam/proton/dxvk) - It's 100% transparent, except for some loading screens
Stormworks (steam/proton/opengl) - It's semi-transparent while in-game.
Steps To ReproduceLaunch an affected application and try to capture it's window with XComposite plugin
TagsNo tags attached.

Activities

rndltrz

2019-06-15 14:06

reporter   ~0004590

Another report with similar symptoms: https://obsproject.com/forum/threads/cannot-capture-shadow-warrior-2013-with-xcomposite-translucent-gray-or-black-overlay-on-top-of-capture.106362/

kurufu

2019-06-15 18:14

reporter   ~0004591

Thanks for the report, i was actually looking to see if we had a bug report for this issue a while back and couldnt find one.

Kon

2019-06-17 03:48

reporter   ~0004594

On AMD Mesa drivers I am now able to work around this issue by simply adding a Luma Key with default settings.

I encountered this bug after upgrading drivers to Mesa 19.0.1 and it persisted after downgrading back to 18.2.8. I'm using a fully up to date Kubuntu 18.04.2 with a Radeon RX 570 and Xorg 1.20.1

In most of my testing it seemed to primarily affect Vulkan games, but I recently learned that Battletech is also affected. I believe Battletech uses OpenGL.

Xcomposite window capture interprets some layers of the image as transparent, leading either to black backgrounds, blacked out menus, or significantly darker ingame scenes. XShm works perfectly and is not affected.

For more details and video on this bug, here's my bug report to the Mesa driver's tracker: https://bugs.freedesktop.org/show_bug.cgi?id=110539

kurufu

2019-06-24 05:53

reporter   ~0004621

Cannot find the Quake Champions post referenced above, and cannot replicate on nvidia drivers (dxvk doesnt work on mesa). Is there a forum post you were referencing?

kurufu

2019-06-24 06:11

reporter   ~0004622

I was able to replicate the issue with nvidia drivers on rocket league.

rndltrz

2019-06-24 17:55

reporter   ~0004623

There was no post. AFAIK, Mesa does not include Vulkan implementation only for nvidia, it should work for AMD and Intel GPUs.

kurufu

2019-06-25 00:46

reporter   ~0004627

To clarify in this bug, There are two workarounds. Either enable "Swap red and blue" and "Use alpha-less texture format" (only nvidia or older mesa drivers?), or add a Luma Key (other filters will preserve the alpha channel) with default settings (Luma Max 1.0, Luma min 0.0).

rndltrz

2019-06-25 04:53

reporter   ~0004628

I didn't know about Luma Key workaround. I confirm it works with AMD card and latest Mesa, but it only works correctly if you use black background.

kurufu

2019-06-25 06:47

reporter   ~0004629

https://github.com/obsproject/obs-studio/pull/1934 anyone who can get a chance to test this and drop a comment if it works for you (especially amd and ubuntu users) id certainly appreciate it. Currently it works on my machine (nvidia/nouveau). And ill be testing intel soon.

kurufu

2019-06-28 21:30

reporter   ~0004635

Alright, the PR now contains a working fix for all the hardware i could test. If any AMD users can test it I would appreciate it.

Kon

2019-07-01 09:12

reporter   ~0004637

kurufu's PR absolutely works on a variety of tested games which were previously affected, both native Vulkan and DXVK.

As said above, I'm on Mesa 19.1.0 and Kubuntu 18.04 with a Radeon RX 570.

OtterGauze

2019-08-05 21:01

reporter   ~0004691

+1 on kurufu's PR, worked perfectly for a variety of OpenGL games, including Minecraft and all Source engine games.

kurufu

2019-08-11 20:38

reporter   ~0004698

PR Has been merged, this can probably be closed now.

Issue History

Date Modified Username Field Change
2019-06-15 13:53 rndltrz New Issue
2019-06-15 14:06 rndltrz Note Added: 0004590
2019-06-15 18:14 kurufu Note Added: 0004591
2019-06-17 03:48 Kon Note Added: 0004594
2019-06-24 05:53 kurufu Note Added: 0004621
2019-06-24 06:11 kurufu Note Added: 0004622
2019-06-24 17:55 rndltrz Note Added: 0004623
2019-06-25 00:46 kurufu Note Added: 0004627
2019-06-25 04:53 rndltrz Note Added: 0004628
2019-06-25 06:47 kurufu Note Added: 0004629
2019-06-28 21:30 kurufu Note Added: 0004635
2019-07-01 09:12 Kon Note Added: 0004637
2019-08-05 21:01 OtterGauze Note Added: 0004691
2019-08-11 20:38 kurufu Note Added: 0004698