rendered paste body#!/bin/bashX264="subq=6:4x4mv:8x8dct:frameref=3:me=3:weight_b:b_pyramid:bframes=3:mixed_refs:b_pyramid:brdo:bime:trellis=2:qcomp=1"VB=$2[ "$#" -lt 2 ] && exec echo "usage: $0 <file> <bitrate> [outfile]"clean_tmp(){ [ -z "$KEEPTEMP" ] && rm -f /tmp/audio.$$.wav /tmp/audio.$$.aac /tmp/video.$$.264 /tmp/mkmp4pass.$$.log exit 0}OUTFILE="${1%.*}.mp4"[ "$#" -gt 2 ] && OUTFILE="$3"trap clean_tmp SIGINTtrap clean_tmp SIGQUITtrap clean_tmp SIGKILLecho -e "\e[32mRipping Audio...\e[39;49m"mplayer "$1" -novideo -ao pcm:fast:file=/tmp/audio.$$.wav -af lavcresample=44100 -msglevel all=0:avsync=5 || clean_tmpnormalize-audio --peak /tmp/audio.$$.wav || clean_tmpecho -e "\e[32mEncoding Audio...\e[39;49m"aacplusenc /tmp/audio.$$.wav /tmp/audio.$$.aac 32000 s || clean_tmpecho -e "\e[32mEncoding Video (1° pass)\e[39;49m"mencoder "$1" -o /dev/null -of rawvideo -ovc x264 -nosound $VF -x264encopts $X264:bitrate=$VB:turbo=1:pass=1 -passlogfile /tmp/mkmp4pass.$$.log -msglevel all=0:avsync=5 || clean_tmpecho -e "\e[32mEncoding Video (2° pass)\e[39;49m"mencoder "$1" -o /tmp/video.$$.264 -of rawvideo -ovc x264 -nosound $VF -x264encopts $X264:bitrate=$VB:pass=2 -passlogfile /tmp/mkmp4pass.$$.log -msglevel all=0:avsync=5 || clean_tmpecho -e "\e[32mPutting all together\e[39;49m"MP4Box $FPS -sbrx -new -add /tmp/audio.$$.aac -add /tmp/video.$$.264 "$OUTFILE" || clean_tmpecho -e "Saved to \e[32m$OUTFILE\e[39;49m"clean_tmp