Commit d2bfc5f0 authored by Stefan Westerfeld's avatar Stefan Westerfeld

TESTS: add raw-format-test (using ffmpeg)

Signed-off-by: Stefan Westerfeld's avatarStefan Westerfeld <stefan@space.twc.de>
parent 235256e9
......@@ -3,12 +3,13 @@ CHECKS = detect-speed-test block-decoder-test clip-decoder-test \
key-test wav-pipe-test wav-subformat-test test-programs
if COND_WITH_FFMPEG
CHECKS += hls-test
CHECKS += hls-test raw-format-test
endif
EXTRA_DIST = detect-speed-test.sh block-decoder-test.sh clip-decoder-test.sh \
pipe-test.sh short-payload-test.sh sync-test.sh sample-rate-test.sh \
key-test.sh hls-test.sh wav-pipe-test.sh wav-subformat-test.sh test-programs.sh
key-test.sh hls-test.sh wav-pipe-test.sh wav-subformat-test.sh test-programs.sh \
raw-format-test.sh
check: $(CHECKS)
......@@ -45,5 +46,8 @@ key-test:
hls-test:
Q=1 $(top_srcdir)/tests/hls-test.sh
raw-format-test:
Q=1 $(top_srcdir)/tests/raw-format-test.sh
test-programs:
Q=1 $(top_srcdir)/tests/test-programs.sh
source test-common.sh
IN_WAV=test-raw-format.wav
OUT_WAV=test-raw-format-out.wav
OUT2_WAV=test-raw-format-out2.wav
raw_test()
{
FFMPEG_FMT="$1"
shift
AWM_FMT="$@"
rm -f $IN_WAV $OUT_WAV $OUT2_WAV
audiowmark test-gen-noise --bits 32 $IN_WAV 200 44100
ffmpeg -v quiet -i $IN_WAV -f $FFMPEG_FMT -c:a pcm_$FFMPEG_FMT - | \
audiowmark_add - - $TEST_MSG --format raw --raw-rate 44100 $AWM_FMT --test-no-limiter | \
ffmpeg -v quiet -f $FFMPEG_FMT -ar 44100 -ac 2 -i - $OUT_WAV
audiowmark_cmp --expect-matches 5 $OUT_WAV $TEST_MSG
check_snr $IN_WAV $OUT_WAV 32.4
ffmpeg -v quiet -i $IN_WAV -f $FFMPEG_FMT -c:a pcm_$FFMPEG_FMT - | \
audiowmark_add - $OUT2_WAV $TEST_MSG --input-format raw --raw-rate 44100 $AWM_FMT --test-no-limiter
check_length $IN_WAV $OUT_WAV
check_length $IN_WAV $OUT2_WAV
rm -f $IN_WAV $OUT_WAV $OUT2_WAV
}
raw_test s16le
raw_test s24le --raw-bits 24
raw_test s32le --raw-bits 32
#raw_test u16le --raw-encoding unsigned
#raw_test u24le --raw-bits 24 --raw-encoding unsigned
#raw_test u32le --raw-bits 32 --raw-encoding unsigned
raw_test f32le --raw-encoding float
raw_test f64le --raw-encoding double
raw_test s16be --raw-endian big
raw_test s24be --raw-bits 24 --raw-endian big
raw_test s32be --raw-bits 32 --raw-endian big
#raw_test u16be --raw-encoding unsigned --endian big
#raw_test u24be --raw-bits 24 --raw-encoding unsigned --endian big
#raw_test u32be --raw-bits 32 --raw-encoding unsigned --endian big
raw_test f32be --raw-encoding float --raw-endian big
raw_test f64be --raw-encoding double --raw-endian big
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment