#!/bin/sh
#This is a script for Velocity by Kyle Davis
#NOTE:  we use echo -en for things that go to Velocity to avoid a blank line in our context menus

#Variables:
wav="audio/x-riff"
wavnew="audio/x-wav"
mp3="audio/x-mp3"
mp3new="audio/mpeg"

version="1.5"
name="Convert to Ogg"
authors="Kyle Davis"
about="This script will attempt to convert a normal audio file to an Ogg file"
mimetypes="$wav,$wavnew,$mp3,$mp3new"
dependancies="basename,oggenc,mpg123"
needterm="yes"
multiplefiles="yes"
localonly="yes"

case $1 in
	--get-info)
		#DO NOT CHANGE THIS LINE, THIS IS THE VELOCITY SCRIPT CONFIG FORMAT
		echo -en "$version\n$name\n$authors\n$about\n$mimetypes\n$dependancies\n$needterm\n$multiplefiles\n$localonly"
		;;
	--execute)
		shift;windowx=$1
		shift;windowy=$1
		shift;windowwidth=$1
		shift;windowheight=$1
		shift;location=$1
		shift;dbasename=$1
		shift;dep1=$1
		shift;dep2=$1

		#Setup the encoder...
		#TODO:  Add more encoders...
		case `$dbasename "$dep1"` in
			*)
				encoder="$dep1 -q 1 -o";
				;;
		esac

		#Setup the decoder...
		#TODO:  Add more decoders...
		case $dep2 in
			*)
				decoder="$dep2 -q -w -";
				;;
		esac

		cd "$location"
		while [ $# != 0 ]; do
			shift;file=$1
			shift;mimetype=$1
			echo -en "FILE: $file\nTYPE: $mimetype\n"
			case $mimetype in
				$wav|$wavnew)
					newfile=`basename "$file" .wav`.ogg
					$encoder "$newfile" "$file"
					;;
				$mp3|$mp3new)
					newfile=`basename "$file" .mp3`.ogg
					$decoder "$file" | $encoder "$newfile" -
					;;
			esac
		done
		cd -
		;;
	*)
		echo "This should only be used by Velocity."
		;;
esac
