Plasma 6 Wallpaper plugin to play videos on your Desktop/Lock Screen.
aur/plasma6-wallpapers-smart-video-wallpaper-reborn use your preferred AUR helper (e.g yay -S plasma6-wallpapers-smart-video-wallpaper-reborn
)
Install the plugin from the KDE Store Plasma 6 version
To set as Lock Screen wallpaper go to System settings > Screen Locking > Appearance: Configure...
Hardware video acceleration makes it possible for the video card to decode/encode video, thus offloading the CPU and saving power.
First, verify acceleration you can install and run nvtop, it will show a decoding usage when Hardware acceleration is working:
If nvtop
is not available you can use:
intel_gpu_top
from intel-gpu-tools for Intel GPU (video engine)nvidia-smi dmon
for Nvidia GPU (dec column)If there is no decoding usage you will have to enable video acceleration in your system
There may be some issues with Qt Causing crashes on AMD GPUs, this is currently being investigated in QTBUG-124586 - QML video media player segmentation fault on AMD GPU with FFMPEG and Black screen with gstreamer as Qt Media backend (Recent KDE Neon update)
To recover from crash remove the videos from the configuration using this command below in terminal/tty
sed -i 's/^VideoUrls=.*$/VideoUrls=/g' $HOME/.config/plasma-org.kde.plasma.desktop-appletsrc $HOME/.config/kscreenlockerrc
then reboot or restart plasmashell systemctl --user restart plasma-plasmashell.service
or plasmashell --replace
if the former doesn't work.
Install the media codecs and qt6-multimedia and gstreamer packages if you don't have them:
openSUSE
sudo zypper install opi
opi codecs
sudo zypper install qt6-multimedia gstreamer-plugins-libav
Arch
sudo pacman -S qt6-multimedia qt6-multimedia-gstreamer gst-libav --needed
If you need extra codecs see https://wiki.archlinux.org/title/GStreamer
PRs to expand this list are welcome :)
Reboot
If after that the video doesn't play, fails to loop or crashes your Desktop (remove the plugin configuration using sed
command above if needed), try switching the Qt Media backend to gstreamer
(default is ffmpeg
):
Create the file ~/.config/plasma-workspace/env/qt-media-backend.sh
#!/bin/bash
export QT_MEDIA_BACKEND=gstreamer
Reboot again to apply the changes, and verify it was correctly set by running echo $QT_MEDIA_BACKEND
Video still doesn't play/keeps crashing? Follow these steps
journalctl -f > journal.txt
and sudo dmesg -wHT > dmesg.txt
in separate terminalssed
command above)kinfo > sysinfo.txt
command or from System settings > About this SystemQT_FFMPEG_DEBUG=1 QSG_INFO=1 QT_LOGGING_RULES="*.debug=true" qml6 test.qml 2> qml_video_test_log.txt
, (qml6 may be qml-qt6 or /usr/lib/qt6/bin/qml please confirm is qt6 one with --version) this file will play some public test videos from internet in fullscreen. If it doesn't crash immediately, try clicking the pause/next buttons a bunch of times.lspci -k | grep -EA3 'VGA|3D|Display' > lspci.txt