I wondered if it was possible to display any arbitrary video as a screensaver using XScreenSaver. It turns out it is.
The only thing to do is to edit the
~/.xscreensaver config file and add an entry after the
programs: tag. That entry should contain the command that would be invoked when the screensaver is launched.
This is an example using VLC as a player:
"NasaTV" cvlc --quiet --no-audio \ --video-on-top --fullscreen \ --drawable-xid=$XSCREENSAVER_WINDOW \ --sub-track=0 \ "https://nasatv-lh.akamaihd.net/i/NASA_101@319270/master.m3u8" \n\
That plays a NASA TV stream with no sound and with the first subtitle track. The key parameter for VLC is the window id, so that it outputs to the actual screensaver window.