[FFmpeg-devel] [PATCH] dca: add new fate tests based on the dcadec-samples test suite
James Almer
jamrial at gmail.com
Tue Feb 2 16:51:44 CET 2016
On 2/2/2016 7:36 AM, Hendrik Leppkes wrote:
> diff --git a/tests/fate/dca.mak b/tests/fate/dca.mak
> index d8c1117..0790799 100644
> --- a/tests/fate/dca.mak
> +++ b/tests/fate/dca.mak
> @@ -1,3 +1,67 @@
> +# dcadec test samples
> +DCADEC_SUITE_LOSSLESS_16 = xll_51_16_192_768_0 \
> + xll_51_16_192_768_1 \
> +
> +DCADEC_SUITE_LOSSLESS_24 = xll_51_24_48_768 \
> + xll_51_24_48_none \
> + xll_71_24_48_768_0 \
> + xll_71_24_48_768_1 \
> + xll_71_24_96_768 \
> + xll_x96_51_24_96_1509 \
> + xll_xch_61_24_48_768 \
> +
> +DCADEC_SUITE_LOSSY = core_51_24_48_768_0 \
> + core_51_24_48_768_1 \
> + x96_51_24_96_1509 \
> + x96_xch_61_24_96_3840 \
> + x96_xxch_71_24_96_3840 \
> + xbr_51_24_48_3840 \
> + xbr_xch_61_24_48_3840 \
> + xbr_xxch_71_24_48_3840 \
> + xch_61_24_48_768 \
> + xxch_71_24_48_2046 \
> +
> +define FATE_DCADEC_LOSSLESS_SUITE
> +FATE_DCADEC_LOSSLESS += fate-dca-$(1) fate-dca-$(1)-dmix_2 fate-dca-$(1)-dmix_6
> +fate-dca-$(1): CMD = framemd5 -i $(TARGET_SAMPLES)/dts/dcadec-suite/$(1).dtshd -c:a pcm_$(2)
> +fate-dca-$(1)-dmix_2: CMD = framemd5 -request_channel_layout 0x3 -i $(TARGET_SAMPLES)/dts/dcadec-suite/$(1).dtshd -c:a pcm_$(2)
> +fate-dca-$(1)-dmix_6: CMD = framemd5 -request_channel_layout 0x60f -i $(TARGET_SAMPLES)/dts/dcadec-suite/$(1).dtshd -c:a pcm_$(2)
> +endef
> +
> +define FATE_DCADEC_LOSSY_SUITE
> +FATE_DCADEC_LOSSY += fate-dca-$(1)
> +fate-dca-$(1): CMD = ffmpeg -i $(TARGET_SAMPLES)/dts/dcadec-suite/$(1).dtshd -f f32le -
> +fate-dca-$(1): REF = $(SAMPLES)/dts/dcadec-suite/$(1).f32
> +endef
> +
> +$(foreach N,$(DCADEC_SUITE_LOSSLESS_16),$(eval $(call FATE_DCADEC_LOSSLESS_SUITE,$(N),s16le)))
> +$(foreach N,$(DCADEC_SUITE_LOSSLESS_24),$(eval $(call FATE_DCADEC_LOSSLESS_SUITE,$(N),s24le)))
> +$(foreach N,$(DCADEC_SUITE_LOSSY),$(eval $(call FATE_DCADEC_LOSSY_SUITE,$(N))))
> +
> +# lossy downmix tests
> +FATE_DCADEC_LOSSY += fate-dca-core_51_24_48_768_1-dmix_2
> +fate-dca-core_51_24_48_768_1-dmix_2: CMD = ffmpeg -request_channel_layout 3 -i $(TARGET_SAMPLES)/dts/dcadec-suite/core_51_24_48_768_1.dtshd -f f32le -
> +fate-dca-core_51_24_48_768_1-dmix_2: REF = $(SAMPLES)/dts/dcadec-suite/core_51_24_48_768_1-dmix_2.f32
> +
> +FATE_DCADEC_LOSSY += fate-dca-x96_xxch_71_24_96_3840-dmix_2
> +fate-dca-x96_xxch_71_24_96_3840-dmix_2: CMD = ffmpeg -request_channel_layout 3 -i $(TARGET_SAMPLES)/dts/dcadec-suite/x96_xxch_71_24_96_3840.dtshd -f f32le -
> +# intentionally uses the dmix_6 reference because the sample does not contain stereo downmix coefficients
> +fate-dca-x96_xxch_71_24_96_3840-dmix_2: REF = $(SAMPLES)/dts/dcadec-suite/x96_xxch_71_24_96_3840-dmix_6.f32
> +
> +FATE_DCADEC_LOSSY += fate-dca-x96_xxch_71_24_96_3840-dmix_6
> +fate-dca-x96_xxch_71_24_96_3840-dmix_6: CMD = ffmpeg -request_channel_layout 0x60f -i $(TARGET_SAMPLES)/dts/dcadec-suite/x96_xxch_71_24_96_3840.dtshd -f f32le -
> +fate-dca-x96_xxch_71_24_96_3840-dmix_6: REF = $(SAMPLES)/dts/dcadec-suite/x96_xxch_71_24_96_3840-dmix_6.f32
> +
> +FATE_DCADEC_LOSSY += fate-dca-xch_61_24_48_768-dmix_6
> +fate-dca-xch_61_24_48_768-dmix_6: CMD = ffmpeg -request_channel_layout 0x60f -i $(TARGET_SAMPLES)/dts/dcadec-suite/xch_61_24_48_768.dtshd -f f32le -
> +fate-dca-xch_61_24_48_768-dmix_6: REF = $(SAMPLES)/dts/dcadec-suite/xch_61_24_48_768-dmix_6.f32
> +
> +$(FATE_DCADEC_LOSSY): CMP = oneoff
> +$(FATE_DCADEC_LOSSY): CMP_UNIT = f32
> +$(FATE_DCADEC_LOSSY): FUZZ = 9
I generated the ref files using cpuflags 0 on a mingw-w64 build, and FUZZ 7 was
enough to make the tests succeed when using sse, avx or fma3.
arm/aarch64 or some obscure arches we support will probably need more, so i guess
9 is a good start.
Should be good, thanks.
More information about the ffmpeg-devel
mailing list