#!/bin/bash

ADDOPT=""

. "${BASH_SOURCE%/*}/funcs.sh" "$1"

check_audio() {
    if [ "$2" != "${FILEEXT}" ]
    then
        TGTFILE="$1.$2.${FILEEXT}"
    else
        TGTFILE="$1.${FILEEXT}"
    fi
    SRCFILE="$1.$2"
    EXPECTED="$3"

    cp -v "${DIRNAME}/${TGTFILE}" /dev/null > /dev/null

    RESULT="$(./fpcompare "${SRCDIR}/${SRCFILE}" "${DIRNAME}/${TGTFILE}")"

    SIZE=$(stat -c %s "${DIRNAME}/${TGTFILE}")
    echo "File  : ${TGTFILE}"
    echo "Result: ${RESULT} (expected ${EXPECTED})"

    if [ $(echo "${RESULT} <= ${EXPECTED}" | bc) -eq 1 ]
    then
        echo "Pass"
    else
        echo "FAIL!"
        exit 1
    fi
}

if [ "${DESTTYPE}" == "mp4" ];
then
	# mp4
        check_audio "raven_e" "flac" 0.04
        check_audio "raven_d" "ogg" 0.05
elif [ "${DESTTYPE}" == "mp3" ];
then
	# mp3
        check_audio "raven_e" "flac" 0.04
        check_audio "raven_d" "ogg" 0.08
elif [ "${DESTTYPE}" == "wav" ];
then
	# wav
	check_audio "raven_e" "flac" 0.0
	check_audio "raven_d" "ogg" 0.0
elif [ "${DESTTYPE}" == "ogg" ];
then
	# ogg
	check_audio "raven_e" "flac" 0.2
	check_audio "raven_d" "ogg" 0.0
elif [ "${DESTTYPE}" == "webm" ];
then
	# webm
	check_audio "raven_e" "flac" 0.03
	check_audio "raven_d" "ogg" 0.03
elif [ "${DESTTYPE}" == "opus" ];
then
	# opus
	check_audio "raven_e" "flac" 0.4
	check_audio "raven_d" "ogg" 0.03
elif [ "${DESTTYPE}" == "mov" ];
then
	# mov
	check_audio "raven_e" "flac" 0.04
	check_audio "raven_d" "ogg" 0.05
elif [ "${DESTTYPE}" == "aiff" ];
then
	# aiff
	check_audio "raven_e" "flac" 0.0
	check_audio "raven_d" "ogg" 0.0
elif [ "${DESTTYPE}" == "prores" ];
then
	# prores
	check_audio "raven_e" "flac" 0.0
	check_audio "raven_d" "ogg" 0.0
elif [ "${DESTTYPE}" == "alac" ];
then
	# alac
	check_audio "raven_e" "flac" 0.0
	check_audio "raven_d" "ogg" 0.0
elif [ "${DESTTYPE}" == "ts" ];
then
	# ts
	check_audio "raven_e" "flac" 0.039136
	check_audio "raven_d" "ogg" 0.050
elif [ "${DESTTYPE}" == "flac" ];
then
	# flac
	check_audio "raven_e" "flac" 0.0
	check_audio "raven_d" "ogg" 0.0
else
        echo "Internal error, unknown type ${DESTTYPE}. Fix script!"
	exit 99
fi

echo "OK"
