So would I be right in thinking the display kernel module is not there because Windows takes care of the device drivers for the display?
Sort of, yes. The "display" in WSLg is actually a Wayland/XWayland/Weston implementation that outputs to RDP (the Remote Desktop Protocol) rather than a physical display. And yes, because the RDP client is running under Windows, it's the Windows drivers that handle the actual output.
There are also some libraries that WSL mounts into Ubuntu at startup that provide some interaction with the GPU. You'll find these in /usr/lib/wsl/lib
. These libraries communicate with equivalent DLLs and drivers on the Windows side to make Windows GPU features available to Ubuntu.
While these have typically been for GPU-compute tasks, I also did come across this tidbit which mentions the (very) recent addition of GPU-accelerated video decode (and more). I haven't had a chance to try this or dig into the details too much yet.
No kernel modules showing in /lib/modules
And also note that the default WSL2 kernel has all drivers statically compiled, with no loadable modules. You can see the current kernel config in use with:
zless /proc/config.gz
Can someone point me in the right direction about the no Xvideo support for your video card
message
As far as I can tell, this simply means that the XVideo X extension isn't available in the RDP backend being used for WSLg.
However, the RDP backend does support OpenGL-acceleration, so you may find better results with:
mplayer -vo gl <filename>
The -vo sdl
backend might also be a possibility, but note that the Mplayer manpage says that the SDL backend is "buggy/outdated."
It might also be worth trying mpv
, a fork of Mplayer that supports Mesa graphics.
Your system is too SLOW to play this!
Unfortunately, I'm not able to reproduce this on my system with a 2070 Super, but that's (from what I see on benchmark ratings) about 5 times faster than an Iris Xe.
However, hopefully with a different output backend and/or hardware-accelerated video decode (with the latest 1.1.0 or later WSL and an appropriate player), you'll be able to overcome this.