naelstrof 877e39f70c changed to gpl | 11 年前 | |
---|---|---|
README.md | 11 年前 | |
license.txt | 11 年前 | |
main.cpp | 11 年前 | |
makefile | 11 年前 | |
options.cpp | 11 年前 | |
options.hpp | 11 年前 | |
x.cpp | 11 年前 | |
x.hpp | 11 年前 |
slop (Select Operation) is an application that querys for a selection from the user and prints the region to stdout. It grabs the mouse and turns it into a crosshair, lets the user click and drag to make a selection (or click on a window) while drawing a pretty box around it, then finally prints the selection's dimensions to stdout.
slop can be used to create a video recording script in only two lines of code.
#!/bin/bash
eval `slop`
ffmpeg -f x11grab -s "$W"x"$H" -i :0.0+$X,$Y -f alsa -i pulse ~/myfile.webm
slop lets you select a region or window and ffmpeg will record it in the format of your choice! Combined with keybinds and a server on your filesystem you can make a really neat and unobtrusive screenshooter.
You can also take images using imagemagick like so:
#!/bin/bash
eval `slop`
import -window root -crop "$W"x"$H"+$X+$Y ~/myimage.png
You can see my implementation of slop in a screenshooter here: https://gist.github.com/naelstrof/6530959
Ok. Here's a comparison between 'scrot -s's selection and slop's:
You can see scrot leaves garbage lines over the things you're trying to screenshot! While slop not only looks nicer, it's impossible for it to end up in screenshots or recordings because it shuts down before ffmpeg or imagemagick can take a picture.