2) - cdio_get_cdtext no longer takes track as an argument - cdtext_get, cdtext_get_const, cdtext_set require track argument 3) Language, Genre, Genre Code and Encoding Fields are now properly parsed and stored in the cdtext object 4) Added public function cdio_get_cdtext_raw to extract the binary CD-Text 5) Added CDTEXTFILE keyword logic in cue sheet parser. Parses binary/raw CD-Text files 6) Added cdtext_genre2str to convert genre code 7) altered the example programs, test drivers, cdda-player and cd-info to work with these changes 8) Added test case 9) A few smaller changes A disc either holds CD-Text for all the tracks or does not hold any. Therefore a CD-Text object for the whole disc seems more natural to me. It also enables us to store global fields, like genre, encoding, language. Patch was tested on GNU/Linux 32 bit running Gentoo.
143 lines
4.4 KiB
Bash
143 lines
4.4 KiB
Bash
#!/bin/sh
|
|
#$Id: check_cue.sh.in,v 1.31 2007/12/28 02:11:01 rocky Exp $
|
|
# Tests to see that BIN/CUE and cdrdao TOC file iamge reading is correct
|
|
# (via cd-info).
|
|
|
|
if test "@VCDINFO_LIBS@X" != "X" ; then
|
|
vcd_opt='--no-vcd'
|
|
fi
|
|
|
|
if test "X$srcdir" = "X" ; then
|
|
srcdir=`pwd`
|
|
fi
|
|
|
|
if test "X$top_srcdir" = "X" ; then
|
|
top_srcdir=`pwd`/..
|
|
fi
|
|
|
|
if test "X$top_builddir" = "X" ; then
|
|
top_builddir=`pwd`/..
|
|
fi
|
|
|
|
. ${top_builddir}/test/check_common_fn
|
|
|
|
if test ! -x $top_srcdir/src/cd-info ; then
|
|
exit 77
|
|
fi
|
|
|
|
BASE=`basename $0 .sh`
|
|
|
|
fname=cdda
|
|
testnum=CD-DA
|
|
opts="--quiet --no-device-info --cue-file ${srcdir}/data/${fname}.cue --no-cddb"
|
|
test_cdinfo "$opts" ${fname}.dump ${srcdir}/${fname}.right
|
|
RC=$?
|
|
check_result $RC "cd-info CUE test $testnum" "${CD_INFO} $opts"
|
|
|
|
|
|
opts="--quiet --no-device-info --bin-file ${srcdir}/data/${fname}.bin --no-cddb"
|
|
test_cdinfo "$opts" ${fname}.dump ${srcdir}/${fname}.right
|
|
RC=$?
|
|
check_result $RC "cd-info BIN test $testnum" "${CD_INFO} $opts"
|
|
|
|
opts="--quiet --no-device-info --toc-file ${srcdir}/data/${fname}.toc --no-cddb"
|
|
test_cdinfo "$opts" ${fname}.dump ${srcdir}/${fname}.right
|
|
RC=$?
|
|
check_result $RC "cd-info TOC test $testnum" "${CD_INFO} $opts"
|
|
|
|
fname=cdtext
|
|
testnum="CD-Text binary parser"
|
|
if test -f ${srcdir}/data/${fname}.bin ; then
|
|
if test -f ${srcdir}/data/${fname}.cdt ; then
|
|
opts="--quiet --no-device-info --cue-file ${srcdir}/data/${fname}.cue --no-cddb"
|
|
cp ${srcdir}/data/${fname}.cdt ${srcdir}/${fname}.cdt
|
|
test_cdinfo "$opts" ${fname}.dump ${srcdir}/${fname}.right
|
|
rm ${srcdir}/${fname}.cdt
|
|
RC=$?
|
|
check_result $RC "cd-info CD-Text CUE test $testnum" "${CD_INFO} $opts"
|
|
else
|
|
echo "Don't see CD-Text file ${srcdir}/data/${fname}.cdt. Test $testnum skipped."
|
|
fi
|
|
else
|
|
echo "Don't see binary file ${srcdir}/data/${fname}.bin. Test $testnum skipped."
|
|
fi
|
|
|
|
fname=isofs-m1
|
|
testnum='ISO 9660 mode1 CUE'
|
|
if test -f ${srcdir}/data/${fname}.bin ; then
|
|
if test -n "@HAVE_ROCK@"; then
|
|
opts="-q --no-device-info --no-disc-mode --cue-file ${srcdir}/data/${fname}.cue --iso9660"
|
|
test_cdinfo "$opts" ${fname}.dump ${srcdir}/${fname}.right
|
|
RC=$?
|
|
check_result $RC "cd-info Rock-Ridge CUE test $testnum" "${CD_INFO} $opts"
|
|
|
|
opts="-q --no-device-info --no-disc-mode --no-rock-ridge --cue-file ${srcdir}/data/${fname}.cue --iso9660"
|
|
test_cdinfo "$opts" ${fname}.dump ${srcdir}/${fname}-no-rr.right
|
|
RC=$?
|
|
check_result $RC "cd-info no Rock-Ridge CUE test $testnum" "${CD_INFO} $opts"
|
|
fi
|
|
|
|
else
|
|
echo "Don't see CUE file ${srcdir}/data/${fname}.bin. Test $testnum skipped."
|
|
fi
|
|
|
|
if test -n "@HAVE_ROCK@"; then
|
|
testnum='ISO 9660 mode1 TOC'
|
|
if test -f ${srcdir}/data/${fname}.bin ; then
|
|
opts="-q --no-device-info --no-disc-mode --toc-file ${srcdir}/data/${fname}.toc --iso9660"
|
|
test_cdinfo "$opts" ${fname}.dump ${srcdir}/${fname}.right
|
|
RC=$?
|
|
check_result $RC "cd-info TOC test $testnum" "${CD_INFO} $opts"
|
|
else
|
|
echo "Don't see TOC file ${srcdir}/data/${fname}.bin. Test $testnum skipped."
|
|
fi
|
|
fi
|
|
|
|
fname=vcd_demo
|
|
if test -z "@VCDINFO_LIBS@" ; then
|
|
right=${srcdir}/${fname}.right
|
|
else
|
|
right=${srcdir}/${fname}_vcdinfo.right
|
|
fi
|
|
testnum='Video CD'
|
|
if test -f ${srcdir}/data/${fname}.bin ; then
|
|
opts="-q --no-device-info --no-disc-mode -c ${srcdir}/data/${fname}.cue --iso9660"
|
|
test_cdinfo "$opts" ${fname}.dump $right
|
|
RC=$?
|
|
check_result $RC "cd-info CUE test $testnum" "${CD_INFO} $opts"
|
|
|
|
if test -z "@VCDINFO_LIBS@" ; then
|
|
right=${srcdir}/${fname}.right
|
|
else
|
|
right=${srcdir}/${fname}_vcdinfo.right
|
|
fi
|
|
opts="-q --no-device-info --no-disc-mode -t ${srcdir}/data/${fname}.toc --iso9660"
|
|
if test -f ${srcdir}/${fname}.toc ; then
|
|
test_cdinfo "$opts" ${fname}.dump $right
|
|
RC=$?
|
|
check_result $RC "cd-info TOC test $testnum" "${CD_INFO} $opts"
|
|
else
|
|
echo "Don't see TOC file ${srcdir}/data/${fname}.toc. Test $testnum skipped."
|
|
fi
|
|
else
|
|
echo "Don't see BIN file ${srcdir}/data/${fname}.bin. Test $testnum skipped."
|
|
fi
|
|
|
|
fname=svcd_ogt_test_ntsc
|
|
testnum='Super Video CD'
|
|
if test -f ${srcdir}/data/${fname}.bin ; then
|
|
opts="-q --no-device-info --no-disc-mode --cue-file ${srcdir}/data/${fname}.cue $vcd_opt --iso9660"
|
|
test_cdinfo "$opts" ${fname}.dump ${srcdir}/${fname}.right
|
|
RC=$?
|
|
check_result $RC "cd-info CUE test $testnum" "${CD_INFO} $opts"
|
|
else
|
|
echo "Don't see CUE file ${srcdir}/data/${fname}.bin. Test $testnum skipped."
|
|
fi
|
|
|
|
exit $RC
|
|
|
|
#;;; Local Variables: ***
|
|
#;;; mode:shell-script ***
|
|
#;;; eval: (sh-set-shell "bash") ***
|
|
#;;; End: ***
|