Summary: | VLC fullscreen not working with Plasma 6 at certain scale factors | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | Iyán Méndez Veiga <me> |
Component: | wayland-generic | Assignee: | KWin default assignee <kwin-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | andy, bugseforuns, cardinalidiego, dougshaw77, eekhofmartine, kde, nate, nicolas.fella, s+kde |
Priority: | HI | Keywords: | qt6 |
Version: | 6.0.1 | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/plasma/kwin/-/commit/ebce0e3c3371fbc5a59955c91873edca1b6e4e79 | Version Fixed In: | 6.0.2 |
Sentry Crash Report: | |||
Attachments: |
VLC in "normal" mode
VLC in fullscreen mode Three seconds of white video in 4:3 aspect ratio Three seconds of white video in 16:9 aspect ratio |
Description
Iyán Méndez Veiga
2024-02-17 11:24:31 UTC
Created attachment 165889 [details]
VLC in "normal" mode
Created attachment 165890 [details]
VLC in fullscreen mode
I'm unable to reproduce on Arch Linux running Plasma 6 RC2 from kde-unstable repository. I'm also running the RC 2 from [kde-unstable]. Are you running with Wayland? What about your GPU? Yes, Wayland session. I use intel iGPU from i5 4670k cpu. Alright, if I set scale to 100% it works correctly. So this issue is related to the scaling. Can you confirm you are using 100% scale in your display configuration? Can you also try to change it to 125% for example, and replicate the issue? Yes, I use display scale 100%. Tested 125% right now, and the fullscreen mode works as expected on my system. Then perhaps is a "weird" combo of scaling plus not so common resolution (1920x1200). I hope someone else can replicate this. I just tested on a new user and I can replicate there too. Can reproduce on Fedora rawhide with 125% scaling As another data point, I cannot reproduce the issue with current git master, Qt 6.6.0, and 225% scale, an Intel 10th gen HD620 iGPU, and VLC 3.0.20. I cannot reproduce with scaling at 150% on an external 4k monitor, but at 125% I can reproduce. Operating System: KDE neon Testing Edition KDE Plasma Version: 6.0.0 KDE Frameworks Version: 6.0.0 Qt Version: 6.6.2 Kernel Version: 6.5.0-18-generic (64-bit) Graphics Platform: Wayland Graphics Processor: AMD Radeon Pro WX 3200 Series Git commit 32be54b19d24e3fafc3a50492b1ca48047a64103 by David Edmundson. Committed on 26/02/2024 at 10:32. Pushed by davidedmundson into branch 'master'. x11window: Disable strict geometry placement by default in wayland Strict geometry disables certain user activites; full screen requests and only sending configure events at sizes the client claims to support. This was added as a workaround for xterm in 19 years ago. It's a client side bug as applications can still choose to ignore the configure event, so kwin shouldn't have to sanitise them in advance. xterm seems to have fixed it's bug, and pragmatically we know not all window managers perform these checks so most clients should not be relying on it. On Wayland this additional check is proving problematic, the handling of scaling especially fractional scaling is hitting cases where it's better to always ask the client to do what kwin wants. Tests that refer to sizeIncrements are dropped as they are only used in the strict geometry passes which is being obsoleted. Resizing in general is still tested. M +0 -171 autotests/integration/x11_window_test.cpp M +11 -3 src/x11window.cpp https://invent.kde.org/plasma/kwin/-/commit/32be54b19d24e3fafc3a50492b1ca48047a64103 Git commit ebce0e3c3371fbc5a59955c91873edca1b6e4e79 by Vlad Zahorodnii, on behalf of David Edmundson. Committed on 26/02/2024 at 11:15. Pushed by vladz into branch 'Plasma/6.0'. x11window: Disable strict geometry placement by default in wayland Strict geometry disables certain user activites; full screen requests and only sending configure events at sizes the client claims to support. This was added as a workaround for xterm in 19 years ago. It's a client side bug as applications can still choose to ignore the configure event, so kwin shouldn't have to sanitise them in advance. xterm seems to have fixed it's bug, and pragmatically we know not all window managers perform these checks so most clients should not be relying on it. On Wayland this additional check is proving problematic, the handling of scaling especially fractional scaling is hitting cases where it's better to always ask the client to do what kwin wants. Tests that refer to sizeIncrements are dropped as they are only used in the strict geometry passes which is being obsoleted. Resizing in general is still tested. (cherry picked from commit 32be54b19d24e3fafc3a50492b1ca48047a64103) M +0 -171 autotests/integration/x11_window_test.cpp M +11 -3 src/x11window.cpp https://invent.kde.org/plasma/kwin/-/commit/ebce0e3c3371fbc5a59955c91873edca1b6e4e79 This is still an issue after updating to the Plasma 6.0.0 release. Was the fix included in the final tarball? Unfortunately not, tarballs went to distros a week ahead of the public release. I can confirm this bug on KDE Neon testing edition When using the following scaling percentages, VLC fails to open fullscreen or its working: 50% fail 155% ok 145% ok 140% fail 135% ok 130% ok 125% fail 120% fail 115% ok 110% ok 105% ok 100% ok 95% ok 90% fail Operating System: KDE neon Testing Edition KDE Plasma Version: 6.0.0 KDE Frameworks Version: 6.0.0 Qt Version: 6.6.2 Kernel Version: 6.5.0-21-generic (64-bit) Graphics Platform: Wayland Processors: 16 × AMD Ryzen 7 5700U with Radeon Graphics Memory: 13,5 GiB of RAM Graphics Processor: AMD Radeon Graphics Manufacturer: LENOVO Product Name: 21A4 System Version: ThinkBook 15 G3 ACL VLC version: 3.0.16 When Plasma 6.0.1 hits, I will check if it's working I got the update to KDE 6.0.2 this morning so I tested this bug; the issue with VLC not working fullscreen persists. Steps to reproduce: 1. start a movie clip using VLC 2. view the clip on fullscreen mode. 3. stop the movie 4. change the scaling factor 5. start step 1 I tested the following scaling factors when playing a video on VLC full screen. 130% ok 125% fail 120% fail 115% ok 110% ok 105% fail 100% ok 95% ok 90% ok 85% ok System: Operating System: KDE neon Testing Edition KDE Plasma Version: 6.0.2 KDE Frameworks Version: 6.0.0 Qt Version: 6.6.2 Kernel Version: 6.5.0-21-generic (64-bit) Graphics Platform: Wayland Processors: 16 × AMD Ryzen 7 5700U with Radeon Graphics Memory: 13,5 GiB of RAM Graphics Processor: AMD Radeon Graphics Manufacturer: LENOVO Product Name: 21A4 System Version: ThinkBook 15 G3 ACL (In reply to Martine Eekhof from comment #18) > I got the update to KDE 6.0.2 this morning so I tested this bug; the issue > with VLC not working fullscreen persists. I guess you mean 6.0.1? The patch works in my case, I cannot replicate any more with scale of 125%. (In reply to Iyán Méndez Veiga from comment #19) > (In reply to Martine Eekhof from comment #18) > > I got the update to KDE 6.0.2 this morning so I tested this bug; the issue > > with VLC not working fullscreen persists. > > I guess you mean 6.0.1? > > The patch works in my case, I cannot replicate any more with scale of 125%. KInfocenter shows version 6.0.2 (not sure now if that should be the correct version, but I'm on Neon Testing Edition :-) To be sure I rebooted and tried 125% scaling again, but fails to play fullscreen on my system. The output of journalctl is as follows from the moment I start a movie --> go to full screen --> back to windowed screen This is on scaling 125% and VLC does not play full screen mrt 06 11:15:25 kde plasmashell[3211]: [0000562fe8f3a640] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface. mrt 06 11:15:25 kde systemd[1341]: Started VLC media player - Media player. mrt 06 11:15:25 kde kded6[1534]: Registering ":1.68/StatusNotifierItem" to system tray mrt 06 11:15:25 kde kwin_wayland[1409]: kf.windowsystem: static bool KX11Extras::mapViewport() may only be used on X11 mrt 06 11:15:27 kde plasmashell[3211]: [0000562fe9011ad0] main audio output error: too low audio sample frequency (0) mrt 06 11:15:27 kde plasmashell[3211]: [00007fcc74c17d90] main decoder error: failed to create audio output mrt 06 11:15:27 kde plasmashell[3211]: [00007fcc74e63ec0] mlp packetizer: MLP channels: 8 samplerate: 48000 mrt 06 11:15:27 kde plasmashell[3211]: [0000562fe9011ad0] main audio output error: module not functional mrt 06 11:15:27 kde plasmashell[3211]: [00007fcc74c17d90] main decoder error: failed to create audio output mrt 06 11:15:27 kde vlc[3211]: uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu mrt 06 11:15:27 kde plasmashell[3211]: [00007fcc64004900] gl gl: Initialized libplacebo v4.192.1 (API v192) mrt 06 11:15:27 kde plasmashell[3211]: libva info: VA-API version 1.14.0 mrt 06 11:15:27 kde plasmashell[3211]: libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null) mrt 06 11:15:27 kde plasmashell[3211]: [00007fcc64004900] glconv_vaapi_x11 gl error: vaInitialize: unknown libva error mrt 06 11:15:27 kde plasmashell[3211]: libva info: VA-API version 1.14.0 mrt 06 11:15:27 kde plasmashell[3211]: libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so mrt 06 11:15:27 kde plasmashell[3211]: libva info: Found init function __vaDriverInit_1_14 mrt 06 11:15:27 kde plasmashell[3211]: libva info: va_openDriver() returns 0 mrt 06 11:15:27 kde plasmashell[3211]: [00007fcc74d2cc80] avcodec decoder: Using Mesa Gallium driver 23.2.1-1ubuntu3.1~22.04.2 for AMD Radeon Graphics (renoir, LLVM 15.0.7, DRM 3.54, 6.5.0-21-generic) for hardware decoding mrt 06 11:15:36 kde plasmashell[3211]: [00007fcc70000c90] main input error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 1000 ms) mrt 06 11:15:40 kde kwin_wayland[1409]: This plugin does not support raise() mrt 06 11:15:40 kde kwin_wayland[1409]: kf.windowsystem: static bool KX11Extras::mapViewport() may only be used on X11 mrt 06 11:15:41 kde kwin_wayland[1409]: This plugin does not support raise() mrt 06 11:15:44 kde vlc[3211]: uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu mrt 06 11:15:44 kde kded6[1534]: Service ":1.68" unregistered mrt 06 11:15:44 kde systemd[1341]: app-vlc-370dc3a58f6643cda125f352fef6e21a.scope: Consumed 2.107s CPU time. > KInfocenter shows version 6.0.2 (not sure now if that should be the correct > version, but I'm on Neon Testing Edition :-) I guess it's because Neon Testing uses the plasma/6.0 branch instead of the version tarballs, [yesterday](https://invent.kde.org/plasma/kwin/-/commit/e516aed7790df74f5d8930efc348a78bc14ad11e) the version was already changed to 6.0.2, which will be released next week. Can you check that [the patch](https://invent.kde.org/plasma/kwin/-/commit/ebce0e3c3371fbc5a59955c91873edca1b6e4e79) was applied in Neon. I still didn't update to 6.0.1, but I will confirm once it is available in Arch. However, KWin 6.0.0 in Arch includes the previous patch that fixed the issue for me. I did the same as comment 21, but this time with 110% scaling, VLC fullscreen does work here output of journalctl: mrt 06 11:21:36 kde plasmashell[3544]: [00005583a25bc640] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface. mrt 06 11:21:36 kde systemd[1341]: Started VLC media player - Media player. mrt 06 11:21:37 kde kded6[1534]: Registering ":1.79/StatusNotifierItem" to system tray mrt 06 11:21:37 kde kwin_wayland[1409]: kf.windowsystem: static bool KX11Extras::mapViewport() may only be used on X11 mrt 06 11:21:37 kde vlc[3544]: uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu mrt 06 11:21:38 kde plasmashell[3544]: [00005583a268c980] main audio output error: too low audio sample frequency (0) mrt 06 11:21:38 kde plasmashell[3544]: [00007ff1b0e0d540] main decoder error: failed to create audio output mrt 06 11:21:38 kde plasmashell[3544]: [00007ff1b0e64550] mlp packetizer: MLP channels: 8 samplerate: 48000 mrt 06 11:21:38 kde plasmashell[3544]: [00005583a268c980] main audio output error: module not functional mrt 06 11:21:38 kde plasmashell[3544]: [00007ff1b0e0d540] main decoder error: failed to create audio output mrt 06 11:21:38 kde vlc[3544]: uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu mrt 06 11:21:38 kde plasmashell[3544]: [00007ff1a4004900] gl gl: Initialized libplacebo v4.192.1 (API v192) mrt 06 11:21:38 kde plasmashell[3544]: libva info: VA-API version 1.14.0 mrt 06 11:21:38 kde plasmashell[3544]: libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null) mrt 06 11:21:38 kde plasmashell[3544]: [00007ff1a4004900] glconv_vaapi_x11 gl error: vaInitialize: unknown libva error mrt 06 11:21:38 kde plasmashell[3544]: libva info: VA-API version 1.14.0 mrt 06 11:21:38 kde plasmashell[3544]: libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so mrt 06 11:21:38 kde plasmashell[3544]: libva info: Found init function __vaDriverInit_1_14 mrt 06 11:21:38 kde plasmashell[3544]: libva info: va_openDriver() returns 0 mrt 06 11:21:38 kde plasmashell[3544]: [00007ff1b0c17220] avcodec decoder: Using Mesa Gallium driver 23.2.1-1ubuntu3.1~22.04.2 for AMD Radeon Graphics (renoir, LLVM 15.0.7, DRM 3.54, 6.5.0-21-generic) for hardware decoding mrt 06 11:21:47 kde plasmashell[3544]: [00007ff1b4000c90] main input error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 1000 ms) mrt 06 11:21:47 kde plasmashell[3544]: [00007ff1b0c17220] main decoder error: Timestamp conversion failed for 8133001: no reference clock mrt 06 11:21:47 kde plasmashell[3544]: [00007ff1b0c17220] main decoder error: Could not convert timestamp 0 for FFmpeg mrt 06 11:21:52 kde plasmashell[3544]: [00007ff1b4000c90] main input error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 1377 ms) mrt 06 11:21:52 kde plasmashell[3544]: [00007ff1b0c17220] main decoder error: Timestamp conversion failed for 10594001: no reference clock mrt 06 11:21:52 kde plasmashell[3544]: [00007ff1b0c17220] main decoder error: Could not convert timestamp 0 for FFmpeg mrt 06 11:21:56 kde plasmashell[3544]: [h264 @ 0x7ff1b0e6c700] get_buffer() failed mrt 06 11:21:56 kde plasmashell[3544]: [h264 @ 0x7ff1b0e6c700] thread_get_buffer() failed mrt 06 11:21:56 kde plasmashell[3544]: [h264 @ 0x7ff1b0e6c700] decode_slice_header error mrt 06 11:21:56 kde plasmashell[3544]: [h264 @ 0x7ff1b0e6c700] no frame! mrt 06 11:21:56 kde plasmashell[3544]: [h264 @ 0x7ff1b0e0a840] get_buffer() failed mrt 06 11:21:56 kde plasmashell[3544]: [h264 @ 0x7ff1b0e0a840] thread_get_buffer() failed mrt 06 11:21:56 kde plasmashell[3544]: [h264 @ 0x7ff1b0e0a840] decode_slice_header error mrt 06 11:21:56 kde plasmashell[3544]: [h264 @ 0x7ff1b0e0a840] no frame! mrt 06 11:21:56 kde kwin_wayland[1409]: kf.windowsystem: static bool KX11Extras::mapViewport() may only be used on X11 mrt 06 11:21:56 kde vlc[3544]: uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu mrt 06 11:21:56 kde vlc[3544]: uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu mrt 06 11:21:56 kde kwin_wayland[1409]: kwin_core: Failed to focus 0x1600001 (error 3) mrt 06 11:21:56 kde kwin_wayland[1409]: kwin_core: XCB error: 3 (BadWindow), sequence: 2439, resource id: 23068673, major code: 129 (SHAPE), minor code: 3 (Combine) mrt 06 11:21:56 kde kwin_wayland[1409]: kwin_core: XCB error: 3 (BadWindow), sequence: 2440, resource id: 23068673, major code: 129 (SHAPE), minor code: 3 (Combine) mrt 06 11:21:56 kde kwin_wayland[1409]: kwin_core: XCB error: 3 (BadWindow), sequence: 2455, resource id: 23068673, major code: 129 (SHAPE), minor code: 3 (Combine) mrt 06 11:21:56 kde kwin_wayland[1409]: kwin_core: XCB error: 3 (BadWindow), sequence: 2456, resource id: 23068673, major code: 129 (SHAPE), minor code: 3 (Combine) mrt 06 11:21:56 kde kwin_wayland[1409]: kwin_core: Could not find window with uuid "{9b09994d-a87c-44fb-94c2-fb624185d289}" mrt 06 11:21:56 kde kwin_wayland[1409]: kwin_core: Could not find window with uuid "{9b09994d-a87c-44fb-94c2-fb624185d289}" mrt 06 11:21:56 kde kwin_wayland[1409]: kwin_core: Could not find window with uuid "{9b09994d-a87c-44fb-94c2-fb624185d289}" mrt 06 11:21:59 kde kded6[1534]: Service ":1.79" unregistered mrt 06 11:21:59 kde systemd[1341]: app-vlc-e2518c4f7da9419eafb99b1b0a905d16.scope: Consumed 3.211s CPU time. mrt 06 11:21:59 kde kwin_wayland[1409]: This plugin does not support raise() (In reply to Iyán Méndez Veiga from comment #22) > > KInfocenter shows version 6.0.2 (not sure now if that should be the correct > > version, but I'm on Neon Testing Edition :-) > > I guess it's because Neon Testing uses the plasma/6.0 branch instead of the > version tarballs, > [yesterday](https://invent.kde.org/plasma/kwin/-/commit/ > e516aed7790df74f5d8930efc348a78bc14ad11e) the version was already changed to > 6.0.2, which will be released next week. > > Can you check that [the > patch](https://invent.kde.org/plasma/kwin/-/commit/ > ebce0e3c3371fbc5a59955c91873edca1b6e4e79) was applied in Neon. > > I still didn't update to 6.0.1, but I will confirm once it is available in > Arch. However, KWin 6.0.0 in Arch includes the previous patch that fixed the > issue for me. Thanks, How do I check if the patch is applied on my system? Would be glad to help! Possibly fixed more betterer with https://invent.kde.org/plasma/kwin/-/merge_requests/5371. Can folks see if adding a window rule for "Obey geometry restrictions" that forces "No" for VLC fixes the issue? If so, the above merge request will fix it, with the fix being released in Plasma 6.0.2. (In reply to Nate Graham from comment #25) > Possibly fixed more betterer with > https://invent.kde.org/plasma/kwin/-/merge_requests/5371. > > Can folks see if adding a window rule for "Obey geometry restrictions" that > forces "No" for VLC fixes the issue? If so, the above merge request will fix > it, with the fix being released in Plasma 6.0.2. I just tested it after I got 56 updates this morning for KDE NEON testing and it is not fixed yet. But then again, I don't know if this merge request is already on my system Created attachment 166579 [details]
Three seconds of white video in 4:3 aspect ratio
Created attachment 166580 [details]
Three seconds of white video in 16:9 aspect ratio
I've added two attachments/videos for easy testing. I had created those to test this issue on my machine (Arch, KDE Plasma 6.0.1, mpv) and could confirm that the 4:3 video does not go into fullscreen on my 16:9 display, while the 16:9 video does.
I also forgot to mention (apologies), I'm on X11, not Wayland. Not sure if that matters for this one. confirmed behaviour on lastest Neon stable, wayland, 125% (In reply to Ennea from comment #29) > I also forgot to mention (apologies), I'm on X11, not Wayland. Not sure if > that matters for this one. Can you test whether the issue is reproducible after you create an "obey geometry constaints" window rule as described in https://bugs.kde.org/show_bug.cgi?id=477086#c18 ? (In reply to Vlad Zahorodnii from comment #31) > (In reply to Ennea from comment #29) > > I also forgot to mention (apologies), I'm on X11, not Wayland. Not sure if > > that matters for this one. > > Can you test whether the issue is reproducible after you create an "obey > geometry constaints" window rule as described in > https://bugs.kde.org/show_bug.cgi?id=477086#c18 ? Issue is not reproducible with this window rule in place, mpv switches into fullscreen as expected with it. Thanks, then this will also be fixed in 6.0.2 *** Bug 483314 has been marked as a duplicate of this bug. *** |