This gist shows how to create a GIF screencast using only free OS X tools: QuickTime, ffmpeg, and gifsicle.
To capture the video (filesize: 19MB), using the free "QuickTime Player" application:
## Get current user's avatar. | |
export USER_HOME=~ | |
dscl . -read $USER_HOME JPEGPhoto | tail -1 | xxd -r -p > ~/Desktop/avatar.jpg |
##### | |
# 1. Make sure the link, http://www.yourdomain.com/.well-known/acme-challenge/, works. | |
************************************************ | |
* For apache httpd, add below to httpd.conf | |
************************************************* | |
# Let's encrypt folder | |
Alias "/.well-known/acme-challenge" "/letsencrypt/acme-challenge" | |
<Directory "/letsencrypt/acme-challenge"> | |
Options Indexes |
#!/bin/bash | |
## Install cerbot, which can automatically generate, renew and deploying Let's Encrypt certificates. | |
sudo apt-get update | |
sudo apt-get install software-properties-common | |
sudo add-apt-repository ppa:certbot/certbot | |
sudo apt-get update | |
sudo apt-get install certbot | |
## NOTE: Before proceeding with this step, ensure that your domain name points to the public IP address of the Bitnami application host. |
# From: https://devcenter.heroku.com/articles/ssl-certificate-self | |
openssl genrsa -des3 -passout pass:x -out server.pass.key 2048 | |
openssl rsa -passin pass:x -in server.pass.key -out server.key | |
rm server.pass.key | |
openssl req -new -key server.key -out server.csr | |
// Common Name (e.g. server FQDN or YOUR name) []:localhost | |
openssl x509 -req -sha256 -days 365 -in server.csr -signkey server.key -out server.crt |
for f in `ls` | |
do | |
xxd -l 16 $f > xxd_result | |
if grep -q Exif xxd_result; then | |
echo $f.jpg | |
mv $f $f.jpg | |
else | |
if grep -q ftypqt xxd_result; then | |
echo $f.mov | |
mv $f $f.mov |
sudo apt-get install nginx | |
WEB_ROOT=/var/www/html | |
sudo rm -f ${WEB_ROOT}/*.m3u8 | |
sudo rm -f ${WEB_ROOT}/*.ts | |
gst_pid=`ps -A | grep gst-launch-1. | awk '{print $1}'` | |
sudo kill -9 ${gst_pid} | |
sudo gst-launch-1.0 videotestsrc is-live=true ! clockoverlay shaded-background="true" font-desc="Sans, 24" \ |
sudo apt-get install -y build-essential libtool autotools-dev automake | |
sudo apt-get install -y libsoup2.4-dev libjson-glib-dev libssl-dev autopoint gtk-doc-tools libgstreamer1.0-dev | |
sudo apt-get install -y gstreamer1.0-tools gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly | |
gst-inspect-1.0 videotestsrc | |
gst-inspect-1.0 decodebin | |
gst-launch-1.0 filesrc location=test.mp4 ! decodebin ! fakesink | |
# will generate playlist.m3u8 and segment[nnnnn].ts live in current folder, | |
# server these files by HTTP server will get the hls stream. | |
gst-launch-1.0 videotestsrc is-live=true ! x264enc ! mpegtsmux ! hlssink |
[gui] | |
[user] | |
email = [email protected] | |
name = Tao Ren | |
[merge] | |
summary = true | |
[alias] | |
co = checkout | |
br = branch | |
ci = commit |