| OLD | NEW |
| 1 #!/bin/sh | 1 #!/bin/sh |
| 2 # | 2 # |
| 3 # common regression functions for ffmpeg | 3 # common regression functions for ffmpeg |
| 4 # | 4 # |
| 5 # | 5 # |
| 6 | 6 |
| 7 test="${1#regtest-}" | 7 test="${1#regtest-}" |
| 8 test_ref=$2 | 8 test_ref=$2 |
| 9 raw_src_dir=$3 | 9 raw_src_dir=$3 |
| 10 outfile_prefix=$4 | 10 target_exec=$4 |
| 11 target_exec=$5 | 11 target_path=$5 |
| 12 target_path=$6 | |
| 13 | 12 |
| 14 datadir="./tests/data" | 13 datadir="./tests/data" |
| 15 target_datadir="${target_path}/${datadir}" | 14 target_datadir="${target_path}/${datadir}" |
| 16 | 15 |
| 17 this="$test.$test_ref" | 16 this="$test.$test_ref" |
| 18 logfile="$datadir/$this.regression" | 17 logfile="$datadir/$this.regression" |
| 19 outfile="$datadir/${outfile_prefix}-" | 18 outfile="$datadir/$test_ref/" |
| 20 errfile="$datadir/$this.err" | 19 errfile="$datadir/$this.err" |
| 21 | 20 |
| 22 # various files | 21 # various files |
| 23 ffmpeg="$target_exec ${target_path}/ffmpeg_g" | 22 ffmpeg="$target_exec ${target_path}/ffmpeg" |
| 24 tiny_psnr="tests/tiny_psnr" | 23 tiny_psnr="tests/tiny_psnr" |
| 25 benchfile="$datadir/$this.bench" | 24 benchfile="$datadir/$this.bench" |
| 26 bench="$datadir/$this.bench.tmp" | 25 bench="$datadir/$this.bench.tmp" |
| 27 bench2="$datadir/$this.bench2.tmp" | 26 bench2="$datadir/$this.bench2.tmp" |
| 28 raw_src="${target_path}/$raw_src_dir/%02d.pgm" | 27 raw_src="${target_path}/$raw_src_dir/%02d.pgm" |
| 29 raw_dst="$datadir/$this.out.yuv" | 28 raw_dst="$datadir/$this.out.yuv" |
| 30 raw_ref="$datadir/$test_ref.ref.yuv" | 29 raw_ref="$datadir/$test_ref.ref.yuv" |
| 31 pcm_src="$target_datadir/asynth1.sw" | 30 pcm_src="$target_datadir/asynth1.sw" |
| 32 pcm_dst="$datadir/$this.out.wav" | 31 pcm_dst="$datadir/$this.out.wav" |
| 33 pcm_ref="$datadir/$test_ref.ref.wav" | 32 pcm_ref="$datadir/$test_ref.ref.wav" |
| 34 crcfile="$datadir/$this.crc" | 33 crcfile="$datadir/$this.crc" |
| 35 target_crcfile="$target_datadir/$this.crc" | 34 target_crcfile="$target_datadir/$this.crc" |
| 36 | 35 |
| 37 mkdir -p "$datadir" | 36 mkdir -p "$datadir" |
| 37 mkdir -p "$outfile" |
| 38 | 38 |
| 39 [ "${V-0}" -gt 0 ] && echov=echo || echov=: | 39 [ "${V-0}" -gt 0 ] && echov=echo || echov=: |
| 40 [ "${V-0}" -gt 1 ] || exec 2>$errfile | 40 [ "${V-0}" -gt 1 ] || exec 2>$errfile |
| 41 | 41 |
| 42 if [ X"$(echo | md5sum 2> /dev/null)" != X ]; then | 42 . $(dirname $0)/md5.sh |
| 43 do_md5sum() { md5sum -b $1; } | |
| 44 elif [ X"$(echo | md5 2> /dev/null)" != X ]; then | |
| 45 do_md5sum() { md5 $1 | sed 's#MD5 (\(.*\)) = \(.*\)#\2 *\1#'; } | |
| 46 elif [ -x /sbin/md5 ]; then | |
| 47 do_md5sum() { /sbin/md5 -r $1 | sed 's# \**\./# *./#'; } | |
| 48 else | |
| 49 do_md5sum() { echo No md5sum program found; } | |
| 50 fi | |
| 51 | 43 |
| 52 FFMPEG_OPTS="-v 0 -y -flags +bitexact -dct fastint -idct simple -sws_flags +accu
rate_rnd+bitexact" | 44 FFMPEG_OPTS="-v 0 -y -flags +bitexact -dct fastint -idct simple -sws_flags +accu
rate_rnd+bitexact" |
| 53 | 45 |
| 54 do_ffmpeg() | 46 do_ffmpeg() |
| 55 { | 47 { |
| 56 f="$1" | 48 f="$1" |
| 57 shift | 49 shift |
| 58 set -- $* ${target_path}/$f | 50 set -- $* ${target_path}/$f |
| 59 $echov $ffmpeg $FFMPEG_OPTS $* | 51 $echov $ffmpeg $FFMPEG_OPTS $* |
| 60 $ffmpeg $FFMPEG_OPTS -benchmark $* > $bench | 52 $ffmpeg $FFMPEG_OPTS -benchmark $* > $bench |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 123 do_audio_encoding() | 115 do_audio_encoding() |
| 124 { | 116 { |
| 125 file=${outfile}$1 | 117 file=${outfile}$1 |
| 126 do_ffmpeg $file -ab 128k -ac 2 -f s16le -i $pcm_src $3 | 118 do_ffmpeg $file -ab 128k -ac 2 -f s16le -i $pcm_src $3 |
| 127 } | 119 } |
| 128 | 120 |
| 129 do_audio_decoding() | 121 do_audio_decoding() |
| 130 { | 122 { |
| 131 do_ffmpeg $pcm_dst -i $target_path/$file -sample_fmt s16 -f wav | 123 do_ffmpeg $pcm_dst -i $target_path/$file -sample_fmt s16 -f wav |
| 132 } | 124 } |
| OLD | NEW |