summaryrefslogtreecommitdiff
path: root/giffeinate
diff options
context:
space:
mode:
authorAdam Carpenter <atc@53hor.net>2020-05-10 21:13:46 -0400
committerAdam Carpenter <atc@53hor.net>2020-05-10 21:13:46 -0400
commitb184782970853b3c479f6c4ad833a36a3aea7afa (patch)
tree318233a807c61414a2696b5300adf3cec6e700e5 /giffeinate
downloadscripts-b184782970853b3c479f6c4ad833a36a3aea7afa.tar.xz
scripts-b184782970853b3c479f6c4ad833a36a3aea7afa.zip
mega update
Diffstat (limited to 'giffeinate')
-rwxr-xr-xgiffeinate22
1 files changed, 22 insertions, 0 deletions
diff --git a/giffeinate b/giffeinate
new file mode 100755
index 0000000..8e59600
--- /dev/null
+++ b/giffeinate
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+# Turn video files on STDIN into animated GIFs.
+
+FPS=${FPS:-10}
+SCALE=${SCALE:-480}
+
+while [ $1 ]
+do
+ BASENAME=$(echo $1 | cut -d'.' -f1)
+ FRAMEDIR=/tmp/$BASENAME-frames-$(date +%s)
+
+ mkdir -p $FRAMEDIR
+ echo Writing frames...
+ ffmpeg -loglevel quiet -i $1 -vf scale=-1:$SCALE,fps=$FPS $FRAMEDIR/%05d.png
+ echo Creating GIF...
+ convert -loop 0 $FRAMEDIR/*.png $BASENAME.gif
+ rm -r $FRAMEDIR
+ echo Done.
+ shift
+done
+