Plasma 6 Wallpaper plugin to play videos on your Desktop/Lock Screen.
demo.mp4
- Play a single video or slideshow of videos
- Enable/disable video sound
- Lock screen support
- Global playback speed and volume control
- Cross-fade transition between videos (Beta)
- Pause Video conditions
- Maximized or fullscreen window
- Active window
- Window is present
- Never
- Based on active Desktop Effect (e.g overview, show desktop)
- Blur
- Conditions
- Maximized or fullscreen window
- Active window
- Window is present
- Video is paused
- Always
- Never
- Based on active Desktop Effect (e.g overview, show desktop)
- Radius
- Animation duration
- Conditions
- Battery mode (threshold)
- Pauses video
- Disables Blur
- Pause video when screen is Off/Locked
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
- Right click on the Desktop > Configure Desktop and Wallpaper... > Get New Plugins
- Search for "Smart Video Wallpaper Reborn", install and set it as your wallpaper.
- Click on Add new videos pick your video(s) and apply.
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)- amdgpu_top for AMD 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 togstreamer
(default isffmpeg
):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
- Run
journalctl -f > journal.txt
andsudo dmesg -wHT > dmesg.txt
in separate terminals - While both commands are running switch from the Image wallpaper plugin to video wallpaper and reproduce the issue
- Then stop both commands
- If needed, remove the plugin configuration (
sed
command above) - Get your system information from
kinfo > sysinfo.txt
command or from System settings > About this System - Save the file from here as test.qml. Run the test qml with from terminal
QT_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. - Run
lspci -k | grep -EA3 'VGA|3D|Display' > lspci.txt
- Create a new new issue describing the problem and how to reproduce, and attach those files including wether running the test.qml also crashes or not.
- This project a rewrite based on adhec/Smart Video Wallpaper and PeterTucker/smartER-video-wallpaper projects.
- Zren's kpac to manage translations