Skip to content

Instantly share code, notes, and snippets.

@hawkz
Forked from liamcurry/html5video.sh
Created January 6, 2016 13:53
Show Gist options
  • Save hawkz/13024ca95591033b37bc to your computer and use it in GitHub Desktop.
Save hawkz/13024ca95591033b37bc to your computer and use it in GitHub Desktop.
automated conversion of a file to all three html5 compatible video formats - h.264, ogg, and webm
#!/bin/sh
# Output file for HTML5 video
# requirements: ffmpeg .6+
# usage: ./html5video.sh infile.mp4 640x360
target_directory='converted'
file=`basename $1`
filename=${file%.*}
filepath=`dirname $1`
destination="$filepath/$target_directory"
if ! test -d "$destination"
then
mkdir $destination
fi
# Ogg/Theora
ffmpeg -i $1 \
-acodec libvorbis -ac 2 -ab 96k -ar 44100 \
-b:v 345k -s $2 $destination/$filename.ogv
# WebM/vp8
ffmpeg -i $1 \
-acodec libvorbis -ac 2 -ab 96k -ar 44100 \
-b:v 345k -s $2 $destination/$filename.webm
# MP4/h264
ffmpeg -i $1 \
-acodec libfaac -ab 96k \
-vcodec libx264 \
-level 21 -refs 2 -b:v 345k -bt 345k \
-threads 0 -s $2 $destination/$filename.mp4
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment