Mercurial > hg > pmhd
annotate ffmpeg/tests/regression-funcs.sh @ 13:844d341cf643 tip
Back up before ISMIR
author | Yading Song <yading.song@eecs.qmul.ac.uk> |
---|---|
date | Thu, 31 Oct 2013 13:17:06 +0000 |
parents | f445c3017523 |
children |
rev | line source |
---|---|
yading@11 | 1 #!/bin/sh |
yading@11 | 2 # |
yading@11 | 3 # common regression functions for ffmpeg |
yading@11 | 4 # |
yading@11 | 5 # |
yading@11 | 6 |
yading@11 | 7 test="${1#regtest-}" |
yading@11 | 8 test_ref=$2 |
yading@11 | 9 raw_src_dir=$3 |
yading@11 | 10 target_exec=$4 |
yading@11 | 11 target_path=$5 |
yading@11 | 12 threads=${6:-1} |
yading@11 | 13 cpuflags=${8:-all} |
yading@11 | 14 samples=$9 |
yading@11 | 15 |
yading@11 | 16 datadir="./tests/data" |
yading@11 | 17 target_datadir="${target_path}/${datadir}" |
yading@11 | 18 |
yading@11 | 19 this="$test.$test_ref" |
yading@11 | 20 outfile="$datadir/$test_ref/" |
yading@11 | 21 |
yading@11 | 22 # various files |
yading@11 | 23 ffmpeg="$target_exec ${target_path}/ffmpeg" |
yading@11 | 24 raw_src="${target_path}/$raw_src_dir/%02d.pgm" |
yading@11 | 25 raw_dst="$datadir/$this.out.yuv" |
yading@11 | 26 pcm_src="$target_datadir/asynth1.sw" |
yading@11 | 27 pcm_src_1ch="$target_datadir/asynth-16000-1.wav" |
yading@11 | 28 pcm_ref_1ch="$datadir/$test_ref-16000-1.ref.wav" |
yading@11 | 29 crcfile="$datadir/$this.crc" |
yading@11 | 30 target_crcfile="$target_datadir/$this.crc" |
yading@11 | 31 |
yading@11 | 32 cleanfiles="$raw_dst $crcfile" |
yading@11 | 33 trap 'rm -f -- $cleanfiles' EXIT |
yading@11 | 34 |
yading@11 | 35 mkdir -p "$datadir" |
yading@11 | 36 mkdir -p "$outfile" |
yading@11 | 37 |
yading@11 | 38 [ "${V-0}" -gt 0 ] && echov=echov || echov=: |
yading@11 | 39 |
yading@11 | 40 echov(){ |
yading@11 | 41 echo "$@" >&3 |
yading@11 | 42 } |
yading@11 | 43 |
yading@11 | 44 . $(dirname $0)/md5.sh |
yading@11 | 45 |
yading@11 | 46 AVCONV_OPTS="-nostats -y -cpuflags $cpuflags" |
yading@11 | 47 COMMON_OPTS="-flags +bitexact -idct simple -sws_flags +accurate_rnd+bitexact" |
yading@11 | 48 DEC_OPTS="$COMMON_OPTS -threads $threads" |
yading@11 | 49 ENC_OPTS="$COMMON_OPTS -threads 1 -dct fastint" |
yading@11 | 50 |
yading@11 | 51 run_avconv() |
yading@11 | 52 { |
yading@11 | 53 $echov $ffmpeg $AVCONV_OPTS $* |
yading@11 | 54 $ffmpeg $AVCONV_OPTS $* |
yading@11 | 55 } |
yading@11 | 56 |
yading@11 | 57 do_avconv() |
yading@11 | 58 { |
yading@11 | 59 f="$1" |
yading@11 | 60 shift |
yading@11 | 61 set -- $* ${target_path}/$f |
yading@11 | 62 run_avconv $* |
yading@11 | 63 do_md5sum $f |
yading@11 | 64 echo $(wc -c $f) |
yading@11 | 65 } |
yading@11 | 66 |
yading@11 | 67 do_avconv_nomd5() |
yading@11 | 68 { |
yading@11 | 69 f="$1" |
yading@11 | 70 shift |
yading@11 | 71 set -- $* ${target_path}/$f |
yading@11 | 72 run_avconv $* |
yading@11 | 73 if [ $f = $raw_dst ] ; then |
yading@11 | 74 $tiny_psnr $f $raw_ref |
yading@11 | 75 elif [ $f = $pcm_dst ] ; then |
yading@11 | 76 $tiny_psnr $f $pcm_ref 2 |
yading@11 | 77 else |
yading@11 | 78 echo $(wc -c $f) |
yading@11 | 79 fi |
yading@11 | 80 } |
yading@11 | 81 |
yading@11 | 82 do_avconv_crc() |
yading@11 | 83 { |
yading@11 | 84 f="$1" |
yading@11 | 85 shift |
yading@11 | 86 run_avconv $* -f crc "$target_crcfile" |
yading@11 | 87 echo "$f $(cat $crcfile)" |
yading@11 | 88 } |