vidwhacker(6x)
π vidwhacker (6x) β the XScreenSaver manual, but make it make sense
okay so bestie, welcome to vidwhacker, a little gremlin from the XScreenSaver manual (section 6x, yes it's a real section, slay). It grabs pics and then absolutely violates them with random filters. No cap.
β¨ NAME β¨
vidwhacker β grab images and apply random filters to them π¨π¦
β¨ SYNOPSIS β¨
vidwhacker [--display host:display.screen] [--root] [--window-id
number][--verbose] [--stdin] [--stdout] [--delay seconds] [-directory
directory] [--fps]
π DESCRIPTION π
So what it does: it distorts an image using a random series of filters β edge detection, subtracting the image from a rotated version of itself, that whole vibe, etc. It's giving glitch art before glitch art was a thing π
When it needs to pick a random image file, it does that by running the xscreensaver-getimage-file(6x) program. And if you ask it for video frames, that capture is done by running the xscreensaver-getimage-video(6x) program. Teamwork, honestly π«Ά
πΈ OPTIONS πΈ
vidwhacker accepts the following options, and yes we're going through all of them:
--rootβ Draw on the root window. This is the default, so it's kind of the main character here π--window-idnumber β Draw on the specified window instead. Specificity is a love language.--verboseβ Print diagnostics. If you're nosy (same), this is your moment π--stdinβ Instead of grabbing an image from disk or video, read an image to manipulate from stdin. That image must be inppm(5)format, okay? No funny business. The program will still perform repeated random image transformations, but it will always use this one image as its starting point β same pic, infinite chaos β¨--delayseconds β How long to sleep between images. Default is5seconds. But lowkey, the actual elapsed time is significantly longer, due to processing time, so don't come for it π--stdoutβ Instead of displaying the image on a window or on the root, write the new image on stdout, and exit. Very "here's your file, bye" energy.--directorydirectory β Use this directory instead of theimageDirectoryspecified in the~/.xscreensaverfile. (heads up, the synopsis writes this one with a single dash as-directoryβ that's literally what it says, we don't fix, we report π )--fpsβ Display the current frame rate and CPU load. Numbers on screen. Obsessed.
π¦ ENVIRONMENT π¦
DISPLAYβ to get the default host and display number.XENVIRONMENTβ to get the name of a resource file that overrides the global resources stored in theRESOURCE_MANAGERproperty.XSCREENSAVER_WINDOWβ The window ID to use with--root.
π BUGS π
- It is poorly named; originally it worked only on grabbed video frames, before being expanded to work on any image. So the name is a whole lie, fr fr π
- It requires the various PBM tools, e.g.,
ppmrelief(1). Though still available, the "pbmplus" suite has largely fallen out of favor these days, so it would be nice if someone were to port this script to make use of ImageMagick'sconvert(1)instead. That would also probably make it faster. Not me volunteering youβ¦ but also π
π SEE ALSO π
X(1), xscreensaver(1), xscreensaver-getimage(6x), xscreensaver-getimage-file(6x), xscreensaver-getimage-video(6x), ppmtogif(1), convert(1)
π COPYRIGHT π
Copyright Β© 1998-2001 by Jamie Zawinski. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. No representations are made about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.
Translating that from lawyer to group chat: use it, sell it, ship it, just keep the copyright notice and this permission notice in the docs, and understand there's no warranty β it is what it is, no take-backs π«Ά
β AUTHOR β
Jamie Zawinski <jwz@jwz.org>, 18-Jan-98.
and that's the whole page, bestie π β signed off with X Version 11, 6.09 (07-Jun-2024), from the XScreenSaver manual. go forth and distort some pixels πβ¨
π¦ where this page comes from
- debian trixie: xscreensaver-data-extra 6.09+dfsg1-1 Β· Other_1
- opensuse-leap 16.0: xscreensaver-data-extra 6.09-bp160.1.11 Β· BSD-3-Clause AND GPL-2.0-or-later
- opensuse-leap 16.0: xscreensaver-data-extra 6.09-bp160.1.11 Β· BSD-3-Clause AND GPL-2.0-or-later
- opensuse-leap 16.0: xscreensaver-data-extra 6.09-bp160.1.11 Β· BSD-3-Clause AND GPL-2.0-or-later
- opensuse-leap 16.0: xscreensaver-data-extra 6.09-bp160.1.11 Β· BSD-3-Clause AND GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms