mpv
mpv copied to clipboard
Can't play video on multiple displays using either fs-screen=all or using geometry
Important Information
- mpv version
mpv 0.35.0-396-ga1a2e27f84 Copyright © 2000-2023 mpv/MPlayer/mplayer2 projects
built on Wed May 24 07:24:32 2023
libplacebo version: v5.264.0-261-g541c85ec
FFmpeg version: N-110760-g0bce5590c3
FFmpeg library versions:
libavutil 58.9.100
libavcodec 60.14.101
libavformat 60.5.100
libswscale 7.2.100
libavfilter 9.8.100
libswresample 4.11.100
- Linux Distribution and Version
Operating System: Ubuntu 20.04.6 LTS
Kernel: Linux 5.15.0-72-generic
Architecture: x86-64
-
Source of the mpv binary Built using https://github.com/mpv-player/mpv-build with ./use-mpv-master
-
If known which version of mpv introduced the problem Have found it to be down to v0.30
-
Window Manager and version GNOME Shell 3.36.9
-
GPU driver and version
# Tried both default mesa, and various other ppas
> glxinfo -B
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: Intel (0x8086)
Device: Mesa Intel(R) UHD Graphics 600 (GLK 2) (0x3185)
Version: 22.2.0
Accelerated: yes
Video memory: 1797MB
Unified memory: yes
Preferred profile: core (0x1)
Max core profile version: 4.6
Max compat profile version: 4.6
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
OpenGL vendor string: Intel
OpenGL renderer string: Mesa Intel(R) UHD Graphics 600 (GLK 2)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 22.2.0-devel (git-08da37035f)
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 4.6 (Compatibility Profile) Mesa 22.2.0-devel (git-08da37035f)
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 22.2.0-devel (git-08da37035f)
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
Reproduction steps
Have 2 displays connected, and run mpv with any of the following options:
--fs --fs-screen=all--geometry=3840x1080+0+0
Expected behavior
Video plays across both displays taking up all the space (3840x1080)
Actual behavior
Video resizes to play on a single display (1920x1080).
Log file
I've made 2 sets of log files - the first 2:
- fs.log - regular run with --fs (works as expected and plays on current screen)
- fs-screen-all.log -
--fs --fs-screen=alldoesn't work. Suddenly resizes back to 1920x1080 at line 463
And then I found using geometry I could play across both screens but not full height. It stopped working when going from 3840x432 to 3840x433.
- geometry432.txt -
--geometry=3840x432works as expected - geometry433.txt -
--geometry=3840x433gets resized to 1920x1080 at line 544
Here's another log file geometry433vvv.txt with -v -v -v to include even more info. It includes some XEvent: ... lines at around line 3250-3260, right before the resize to 1920x1080 that might be of interest.
Also important.. it works fine dragging the window using the mouse to make it fill both displays.
I couldn't find anything about adding bug bounty to this project, I hope it's allowed, but I'd like to add 500$ to this issue. Is there a specific service maintainers prefer or would direct payment by any means be fine?
This is unfortunately still an issue with 0.38 :-(
@Dudemanguy Would love to sponser someone to do the fix here - Would you be able to look at it, or know of other maintainers that could? I'd put in 2000$ as a starter!