>> Test the new 'dolbyeprobe' AVOption. >> Test dolby_e decoding for 24 bits with program config '5.1+2' >> --- >> tests/Makefile | 1 + >> tests/fate-run.sh | 4 ++++ >> tests/fate/audio.mak | 5 +++++ >> 3 files changed, 10 insertions(+) >> >> diff --git a/tests/Makefile b/tests/Makefile index >> e5f41008d4..65cccac312 100644 >> --- a/tests/Makefile >> +++ b/tests/Makefile >> @@ -75,6 +75,7 @@ ENCDEC2 = $(call ALLYES, $(firstword $(1))_ENCODER >> $(lastword $(1))_DECODER \ >> $(firstword $(3))_MUXER $(lastword $(3))_DEMUXER) >> >> DEMDEC = $(call ALLYES, $(1)_DEMUXER $(2:%=%_DECODER)) >> +DEMDEMDEC = $(call ALLYES, $(1)_DEMUXER $(2)_DEMUXER >> +$(3:%=%_DECODER)) >> ENCMUX = $(call ALLYES, $(1:%=%_ENCODER) $(2)_MUXER) >> >> DEMMUX = $(call ALLYES, $(1)_DEMUXER $(2)_MUXER) diff --git >> a/tests/fate-run.sh b/tests/fate-run.sh index 83cad8cabe..f06b2fd029 >> 100755 >> --- a/tests/fate-run.sh >> +++ b/tests/fate-run.sh >> @@ -162,6 +162,10 @@ pcm(){ >> ffmpeg "$@" -vn -f s16le - >> } >> >> +dolbye2pcm16(){ >> + ffmpeg -dolbyeprobe 1 "$@" -vn -f s16le - } >> + >> fmtstdout(){ >> fmt=$1 >> shift 1 >> diff --git a/tests/fate/audio.mak b/tests/fate/audio.mak index >> c41958ea2d..0e56d401ea 100644 >> --- a/tests/fate/audio.mak >> +++ b/tests/fate/audio.mak >> @@ -24,6 +24,11 @@ fate-dolby-e: CMD = pcm -i >> $(TARGET_SAMPLES)/dolby_e/16-11 >> fate-dolby-e: CMP = oneoff >> fate-dolby-e: REF = $(SAMPLES)/dolby_e/16-11.pcm >> >> +FATE_SAMPLES_AUDIO-$(call DEMDEMDEC, WAV, S337M, DOLBY_E) += >> +fate-dolby-e-wav >> +fate-dolby-e-wav: CMD = dolbye2pcm16 -i >> +$(TARGET_SAMPLES)/dolby_e/512.wav >> +fate-dolby-e-wav: CMP = oneoff >> +fate-dolby-e-wav: REF = $(SAMPLES)/dolby_e/512.wav.pcm >> + >> FATE_SAMPLES_AUDIO-$(call DEMDEC, DSS, DSS_SP) += fate-dss-lp >> fate-dss-sp >> fate-dss-lp: CMD = framecrc -i $(TARGET_SAMPLES)/dss/lp.dss -frames >> 30 >> fate-dss-sp: CMD = framecrc -i $(TARGET_SAMPLES)/dss/sp.dss -frames >> 30 >> >This is missing some kind of hash check on the demuxed data
The "oneoff" tests consists in checking the maximum difference between the raw pcm output samples, it must be 0 or 1 max. This test is done in 16-bit truncated output of the decoded stream. It raises an error too if the duration does not strictly match. I found it appropriate (a strict hash on decoded samples may also break with the many floats of the DolbyE decoder). My idea was to keep a single test for both "wav demux" and "5.1+2" decode. Do you think there should be an additional test focused on demuxed data ? Nicolas _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".