#!/bin/sh

if [ -z "$1" ]; then
echo "Usage -> $0 audio_file"
exit
fi
spinners="| / - .\\"
ffmpeg -i $1 -f wav $1.wav
echo ""
sox -V $1.wav -r 48000 -c1 left.wav avg -l
sox -V $1.wav -r 48000 -c1 right.wav avg -r
echo "Creating left rear surround channel"
cp -rf left.wav left_surround.wav
echo ""
echo "Creating right rear surround channel"
cp -rf right.wav right_surround.wav
echo ""
soxmix -V left.wav right.wav -r 48000 -c1 centre.wav
sox -V -v 0.5 centre.wav lfe.wav lowp 150
multimux -d 0,0,0,15,15,0 left.wav centre.wav right.wav left_surround.wav right_surround.wav lfe.wav -o $1_final.wav
echo ""
ffmpeg -i $1_final.wav -ab 384 -ar 48000 -ac 6 $1.ac3
echo ""
rm left.wav centre.wav right.wav left_surround.wav right_surround.wav lfe.wav $1_final.wav &
PID=`ps aux | grep "rm left.wav centre.wav right.wav" | grep -v grep | awk '{print $2}'`
echo -n "Cleaning up..."
   until [ -z $PID ]; do
      for spinner in $spinners ; do
        echo -n "$spinner"
        sleep 0.1
        echo -e -n "\b"
      done
    PID=`ps aux | grep "rm left.wav centre.wav right.wav" | grep -v grep | awk '{print $2}'`
   done
echo "Done!"
