#!/bin/sh # # Installation: # # $ git clone git://github.com/johnf/m3u8-segmenter.git # $ cd m3u8-segmenter # $ ./confiugure # $ make # $ sudo cp m3u8-segmenter /usr/local/bin # $ copy start-hls.sh /usr/local/bin # # add following to /etc/fstab # tmpfs /var/www/live tmpfs size=1G,mode=755,uid=flumotion,gid=flumotion 0 0 # if [ -z "$1" ] || [ -z "$2" ] || [ -z "$3" ]; then echo "Usage: $0 (high|medium|low)" exit 1 fi name=$1 quality=$3 stream_name="$name/$2-hls-$quality" src="http://localhost:8000/$2-flash-$quality.flv" segmenter="/usr/local/bin/m3u8-segmenter" len=3 num=3 url="http://live.spreadspace.org/" case "$3" in high) arate=160k ;; medium) arate=128k ;; low) arate=96k ;; *) arate=128k ;; esac cd /var/www ffmpeg -y -i "$src" -f mpegts -acodec libmp3lame -ar 44100 -ab "$arate" -vcodec copy -vbsf h264_mp4toannexb -async 2 - | $segmenter -i - -d $len -n $num -p "$stream_name" -m "$stream_name.m3u8" -u "$url" rm -f "$stream_name"-*.ts rm -f "$stream_name".m3u8 exit 0