Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
#!/bin/bash # (find-angg ".emacs" "scast") # (scast "k") # (scast "R=6;r;c;g") # (find-fline "/tmp/") # (find-fline "/tmp/out.log") # (find-video "/tmp/out.mp4") # # scast - functions to create screencasts. # This file: # http://angg.twu.net/bin/scast # http://angg.twu.net/bin/scast.html # (find-angg "bin/scast") # See: (find-angg "bin/git-defs") # # Usage: we can just source these functions into a shell, with # # . ~/bin/scast # # but more typically we call this with a single argument, which is # interpreted by the "eval" at the end. A call like # # ~/bin/scast 'R=6;r;c;g' # # sets the frame rate to 6 FPS, moves to the desktop to the right, # cleans the files in /tmp/ that can be leftovers of a previous # screencast recording, and runs "avconv -f x11grab" with the right # arguments; a call like # # ~/bin/scast 'k' # # kills avconv and stops the recording. # # Used by: # (find-es "git" "git-test-2") # (find-anggfile ".fvwm/.fvwm2rc" "scast") # # (find-angg "eev-videos/0.sh") # (find-angg "eev-videos/2.sh") # # (find-man "avconv") # (find-man "avconv" "-s 640x480") # (find-man "avconv" "-r 24") S=1024x600+0+0 R=5 d () { FvwmCommand "CursorMove +0 +100"; } r () { FvwmCommand "CursorMove +100 +0"; } k () { killall -q avconv; } c () { rm -f /tmp/out.mp4 rm -f /tmp/out.avi rm -f /tmp/out.log } g () { { #echo avconv -loglevel quiet -f x11grab -i $DISPLAY $* /tmp/out.mp4 #nohup avconv -loglevel quiet -f x11grab -i $DISPLAY $* /tmp/out.mp4 & echo avconv -r $R -s $S -f x11grab -i $DISPLAY /tmp/out.mp4 nohup avconv -r $R -s $S -f x11grab -i $DISPLAY /tmp/out.mp4 & } > /tmp/out.log 2>&1 # > /dev/null 2>&1 & } # A hack to allow non-interactive use. # (find-bashnode "Bourne Shell Builtins" "`eval'") eval $1 # (find-eevsh "git-defs 'Diagram'") # Local Variables: # coding: raw-text-unix # mode: sh # End: