diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2012-11-29 13:45:57 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-11-29 13:45:57 +0100 |
commit | 076300bf8b43d5d56a91cd2ad845d596969c87cf (patch) | |
tree | 487b8a917a0125e4cc086ccbcf575727ebb0b289 | |
parent | 7dc0ed80e877a16a11ba45d747723d88e8a92cd8 (diff) | |
parent | bfe5454cd238b16e7977085f880205229103eccb (diff) | |
download | ffmpeg-076300bf8b43d5d56a91cd2ad845d596969c87cf.tar.gz |
Merge commit 'bfe5454cd238b16e7977085f880205229103eccb'
* commit 'bfe5454cd238b16e7977085f880205229103eccb':
lavf: move ff_codec_get_tag() and ff_codec_get_id() definitions to internal.h
lavf: move "MP3 " fourcc from riff to nut
fate: vpx: Add dependencies
fate: Fix wavpack-matroskamode test dependencies
x86: dsputilenc: port to cpuflags
Conflicts:
libavformat/internal.h
libavformat/nut.c
tests/fate/vpx.mak
Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/x86/dsputilenc.asm | 112 | ||||
-rw-r--r-- | libavformat/aiff.h | 2 | ||||
-rw-r--r-- | libavformat/au.c | 1 | ||||
-rw-r--r-- | libavformat/cafdec.c | 1 | ||||
-rw-r--r-- | libavformat/gxfenc.c | 1 | ||||
-rw-r--r-- | libavformat/internal.h | 4 | ||||
-rw-r--r-- | libavformat/isom.c | 1 | ||||
-rw-r--r-- | libavformat/lxfdec.c | 1 | ||||
-rw-r--r-- | libavformat/nsvdec.c | 1 | ||||
-rw-r--r-- | libavformat/nut.c | 1 | ||||
-rw-r--r-- | libavformat/nut.h | 2 | ||||
-rw-r--r-- | libavformat/nutdec.c | 1 | ||||
-rw-r--r-- | libavformat/nutenc.c | 1 | ||||
-rw-r--r-- | libavformat/omadec.c | 1 | ||||
-rw-r--r-- | libavformat/riff.c | 1 | ||||
-rw-r--r-- | libavformat/riff.h | 2 | ||||
-rw-r--r-- | libavformat/rmdec.c | 1 | ||||
-rw-r--r-- | libavformat/rsodec.c | 1 | ||||
-rw-r--r-- | libavformat/smjpegenc.c | 1 | ||||
-rw-r--r-- | libavformat/swf.h | 2 | ||||
-rw-r--r-- | libavformat/voc.h | 2 | ||||
-rw-r--r-- | tests/fate/vpx.mak | 32 | ||||
-rw-r--r-- | tests/fate/wavpack.mak | 8 |
23 files changed, 87 insertions, 93 deletions
diff --git a/libavcodec/x86/dsputilenc.asm b/libavcodec/x86/dsputilenc.asm index ff9733fec3..3e7990d0a8 100644 --- a/libavcodec/x86/dsputilenc.asm +++ b/libavcodec/x86/dsputilenc.asm @@ -99,35 +99,33 @@ SECTION .text paddusw m0, m1 %endmacro -; FIXME: HSUM_* saturates at 64k, while an 8x8 hadamard or dct block can get up to +; FIXME: HSUM saturates at 64k, while an 8x8 hadamard or dct block can get up to ; about 100k on extreme inputs. But that's very unlikely to occur in natural video, ; and it's even more unlikely to not have any alternative mvs/modes with lower cost. -%macro HSUM_MMX 3 - mova %2, %1 - psrlq %1, 32 +%macro HSUM 3 +%if cpuflag(sse2) + movhlps %2, %1 paddusw %1, %2 - mova %2, %1 - psrlq %1, 16 + pshuflw %2, %1, 0xE + paddusw %1, %2 + pshuflw %2, %1, 0x1 paddusw %1, %2 movd %3, %1 -%endmacro - -%macro HSUM_MMXEXT 3 +%elif cpuflag(mmxext) pshufw %2, %1, 0xE paddusw %1, %2 pshufw %2, %1, 0x1 paddusw %1, %2 movd %3, %1 -%endmacro - -%macro HSUM_SSE2 3 - movhlps %2, %1 - paddusw %1, %2 - pshuflw %2, %1, 0xE +%elif cpuflag(mmx) + mova %2, %1 + psrlq %1, 32 paddusw %1, %2 - pshuflw %2, %1, 0x1 + mova %2, %1 + psrlq %1, 16 paddusw %1, %2 movd %3, %1 +%endif %endmacro %macro STORE4 5 @@ -144,30 +142,30 @@ SECTION .text mova %5, [%1+mmsize*3] %endmacro -%macro hadamard8_16_wrapper 3 -cglobal hadamard8_diff_%1, 4, 4, %2 +%macro hadamard8_16_wrapper 2 +cglobal hadamard8_diff, 4, 4, %1 %ifndef m8 - %assign pad %3*mmsize-(4+stack_offset&(mmsize-1)) + %assign pad %2*mmsize-(4+stack_offset&(mmsize-1)) SUB rsp, pad %endif - call hadamard8x8_diff_%1 + call hadamard8x8_diff %+ SUFFIX %ifndef m8 ADD rsp, pad %endif RET -cglobal hadamard8_diff16_%1, 5, 6, %2 +cglobal hadamard8_diff16, 5, 6, %1 %ifndef m8 - %assign pad %3*mmsize-(4+stack_offset&(mmsize-1)) + %assign pad %2*mmsize-(4+stack_offset&(mmsize-1)) SUB rsp, pad %endif - call hadamard8x8_diff_%1 + call hadamard8x8_diff %+ SUFFIX mov r5d, eax add r1, 8 add r2, 8 - call hadamard8x8_diff_%1 + call hadamard8x8_diff %+ SUFFIX add r5d, eax cmp r4d, 16 @@ -175,12 +173,12 @@ cglobal hadamard8_diff16_%1, 5, 6, %2 lea r1, [r1+r3*8-8] lea r2, [r2+r3*8-8] - call hadamard8x8_diff_%1 + call hadamard8x8_diff %+ SUFFIX add r5d, eax add r1, 8 add r2, 8 - call hadamard8x8_diff_%1 + call hadamard8x8_diff %+ SUFFIX add r5d, eax .done: @@ -191,7 +189,25 @@ cglobal hadamard8_diff16_%1, 5, 6, %2 RET %endmacro -%macro HADAMARD8_DIFF_MMX 1 +%macro HADAMARD8_DIFF 0-1 +%if cpuflag(sse2) +hadamard8x8_diff %+ SUFFIX: + lea r0, [r3*3] + DIFF_PIXELS_8 r1, r2, 0, r3, r0, rsp+gprsize + HADAMARD8 +%if ARCH_X86_64 + TRANSPOSE8x8W 0, 1, 2, 3, 4, 5, 6, 7, 8 +%else + TRANSPOSE8x8W 0, 1, 2, 3, 4, 5, 6, 7, [rsp+gprsize], [rsp+mmsize+gprsize] +%endif + HADAMARD8 + ABS_SUM_8x8 rsp+gprsize + HSUM m0, m1, eax + and eax, 0xFFFF + ret + +hadamard8_16_wrapper %1, 3 +%elif cpuflag(mmx) ALIGN 16 ; int hadamard8_diff_##cpu(void *s, uint8_t *src1, uint8_t *src2, ; int stride, int h) @@ -199,7 +215,7 @@ ALIGN 16 ; note how r1, r2 and r3 are not clobbered in this function, so 16x16 ; can simply call this 2x2x (and that's why we access rsp+gprsize ; everywhere, which is rsp of calling func -hadamard8x8_diff_%1: +hadamard8x8_diff %+ SUFFIX: lea r0, [r3*3] ; first 4x8 pixels @@ -236,53 +252,35 @@ hadamard8x8_diff_%1: and rax, 0xFFFF ret -hadamard8_16_wrapper %1, 0, 14 -%endmacro - -%macro HADAMARD8_DIFF_SSE2 2 -hadamard8x8_diff_%1: - lea r0, [r3*3] - DIFF_PIXELS_8 r1, r2, 0, r3, r0, rsp+gprsize - HADAMARD8 -%if ARCH_X86_64 - TRANSPOSE8x8W 0, 1, 2, 3, 4, 5, 6, 7, 8 -%else - TRANSPOSE8x8W 0, 1, 2, 3, 4, 5, 6, 7, [rsp+gprsize], [rsp+mmsize+gprsize] +hadamard8_16_wrapper 0, 14 %endif - HADAMARD8 - ABS_SUM_8x8 rsp+gprsize - HSUM_SSE2 m0, m1, eax - and eax, 0xFFFF - ret - -hadamard8_16_wrapper %1, %2, 3 %endmacro -INIT_MMX +INIT_MMX mmx %define ABS1 ABS1_MMX -%define HSUM HSUM_MMX -HADAMARD8_DIFF_MMX mmx +HADAMARD8_DIFF +INIT_MMX mmxext %define ABS1 ABS1_MMXEXT -%define HSUM HSUM_MMXEXT -HADAMARD8_DIFF_MMX mmxext +HADAMARD8_DIFF -INIT_XMM +INIT_XMM sse2 %define ABS2 ABS2_MMXEXT %if ARCH_X86_64 %define ABS_SUM_8x8 ABS_SUM_8x8_64 %else %define ABS_SUM_8x8 ABS_SUM_8x8_32 %endif -HADAMARD8_DIFF_SSE2 sse2, 10 +HADAMARD8_DIFF 10 +INIT_XMM ssse3 %define ABS2 ABS2_SSSE3 %define ABS_SUM_8x8 ABS_SUM_8x8_64 -HADAMARD8_DIFF_SSE2 ssse3, 9 +HADAMARD8_DIFF 9 -INIT_XMM +INIT_XMM sse2 ; sse16_sse2(void *v, uint8_t * pix1, uint8_t * pix2, int line_size, int h) -cglobal sse16_sse2, 5, 5, 8 +cglobal sse16, 5, 5, 8 shr r4d, 1 pxor m0, m0 ; mm0 = 0 pxor m7, m7 ; mm7 holds the sum diff --git a/libavformat/aiff.h b/libavformat/aiff.h index bd428029c0..5521568202 100644 --- a/libavformat/aiff.h +++ b/libavformat/aiff.h @@ -28,7 +28,7 @@ #define AVFORMAT_AIFF_H #include "avformat.h" -#include "riff.h" +#include "internal.h" static const AVCodecTag ff_codec_aiff_tags[] = { { AV_CODEC_ID_PCM_S16BE, MKTAG('N','O','N','E') }, diff --git a/libavformat/au.c b/libavformat/au.c index d4d4ff3432..6797c3c479 100644 --- a/libavformat/au.c +++ b/libavformat/au.c @@ -31,7 +31,6 @@ #include "internal.h" #include "avio_internal.h" #include "pcm.h" -#include "riff.h" /* if we don't know the size in advance */ #define AU_UNKNOWN_SIZE ((uint32_t)(~0)) diff --git a/libavformat/cafdec.c b/libavformat/cafdec.c index 7fd9c6b8d1..718942bd8a 100644 --- a/libavformat/cafdec.c +++ b/libavformat/cafdec.c @@ -27,7 +27,6 @@ #include "avformat.h" #include "internal.h" -#include "riff.h" #include "isom.h" #include "mov_chan.h" #include "libavutil/intreadwrite.h" diff --git a/libavformat/gxfenc.c b/libavformat/gxfenc.c index 9bec3d52cf..28acb74db9 100644 --- a/libavformat/gxfenc.c +++ b/libavformat/gxfenc.c @@ -27,7 +27,6 @@ #include "avformat.h" #include "internal.h" #include "gxf.h" -#include "riff.h" #include "audiointerleave.h" #define GXF_AUDIO_PACKET_SIZE 65536 diff --git a/libavformat/internal.h b/libavformat/internal.h index 4a9ed53def..4f740c99d1 100644 --- a/libavformat/internal.h +++ b/libavformat/internal.h @@ -355,6 +355,10 @@ void ff_compute_frame_duration(int *pnum, int *pden, AVStream *st, int ff_get_audio_frame_size(AVCodecContext *enc, int size, int mux); +unsigned int ff_codec_get_tag(const AVCodecTag *tags, enum AVCodecID id); + +enum AVCodecID ff_codec_get_id(const AVCodecTag *tags, unsigned int tag); + /** * Chooses a timebase for muxing the specified stream. * diff --git a/libavformat/isom.c b/libavformat/isom.c index 32710569a3..2c412dda29 100644 --- a/libavformat/isom.c +++ b/libavformat/isom.c @@ -26,7 +26,6 @@ #include "avformat.h" #include "internal.h" #include "isom.h" -#include "riff.h" #include "libavcodec/mpeg4audio.h" #include "libavcodec/mpegaudiodata.h" diff --git a/libavformat/lxfdec.c b/libavformat/lxfdec.c index 3137cda851..90c49749a6 100644 --- a/libavformat/lxfdec.c +++ b/libavformat/lxfdec.c @@ -23,7 +23,6 @@ #include "libavcodec/bytestream.h" #include "avformat.h" #include "internal.h" -#include "riff.h" #define LXF_MAX_PACKET_HEADER_SIZE 256 #define LXF_HEADER_DATA_SIZE 120 diff --git a/libavformat/nsvdec.c b/libavformat/nsvdec.c index 3015d84491..b6984a68a2 100644 --- a/libavformat/nsvdec.c +++ b/libavformat/nsvdec.c @@ -23,7 +23,6 @@ #include "libavutil/mathematics.h" #include "avformat.h" #include "internal.h" -#include "riff.h" #include "libavutil/dict.h" #include "libavutil/intreadwrite.h" diff --git a/libavformat/nut.c b/libavformat/nut.c index fc300fe378..62a650dbed 100644 --- a/libavformat/nut.c +++ b/libavformat/nut.c @@ -149,6 +149,7 @@ const AVCodecTag ff_nut_video_tags[] = { static const AVCodecTag nut_audio_extra_tags[] = { { AV_CODEC_ID_PCM_ALAW, MKTAG('A', 'L', 'A', 'W') }, { AV_CODEC_ID_PCM_MULAW, MKTAG('U', 'L', 'A', 'W') }, + { AV_CODEC_ID_MP3, MKTAG('M', 'P', '3', ' ') }, { AV_CODEC_ID_NONE, 0 } }; diff --git a/libavformat/nut.h b/libavformat/nut.h index deb3c901e3..ab31c27429 100644 --- a/libavformat/nut.h +++ b/libavformat/nut.h @@ -26,7 +26,7 @@ //#include "libavutil/adler32.h" //#include "libavcodec/mpegaudio.h" #include "avformat.h" -#include "riff.h" +#include "internal.h" #include "metadata.h" #define MAIN_STARTCODE (0x7A561F5F04ADULL + (((uint64_t)('N'<<8) + 'M')<<48)) diff --git a/libavformat/nutdec.c b/libavformat/nutdec.c index 9954583fc2..ac3ef7d909 100644 --- a/libavformat/nutdec.c +++ b/libavformat/nutdec.c @@ -28,6 +28,7 @@ #include "libavutil/tree.h" #include "avio_internal.h" #include "nut.h" +#include "riff.h" #define NUT_MAX_STREAMS 256 /* arbitrary sanity check value */ diff --git a/libavformat/nutenc.c b/libavformat/nutenc.c index 72e28b8d26..46711528a0 100644 --- a/libavformat/nutenc.c +++ b/libavformat/nutenc.c @@ -28,6 +28,7 @@ #include "nut.h" #include "internal.h" #include "avio_internal.h" +#include "riff.h" static int find_expected_header(AVCodecContext *c, int size, int key_frame, uint8_t out[64]) diff --git a/libavformat/omadec.c b/libavformat/omadec.c index e8b74ed7f0..8d29675c1c 100644 --- a/libavformat/omadec.c +++ b/libavformat/omadec.c @@ -46,7 +46,6 @@ #include "libavutil/des.h" #include "oma.h" #include "pcm.h" -#include "riff.h" #include "id3v2.h" diff --git a/libavformat/riff.c b/libavformat/riff.c index 5ad0eb01c8..cddbec477c 100644 --- a/libavformat/riff.c +++ b/libavformat/riff.c @@ -389,7 +389,6 @@ const AVCodecTag ff_codec_wav_tags[] = { // for NuppelVideo (nuv.c) { AV_CODEC_ID_PCM_S16LE, MKTAG('R', 'A', 'W', 'A') }, { AV_CODEC_ID_MP3, MKTAG('L', 'A', 'M', 'E') }, - { AV_CODEC_ID_MP3, MKTAG('M', 'P', '3', ' ') }, { AV_CODEC_ID_NONE, 0 }, }; diff --git a/libavformat/riff.h b/libavformat/riff.h index 6f2eeac176..8579a953c8 100644 --- a/libavformat/riff.h +++ b/libavformat/riff.h @@ -54,8 +54,6 @@ int ff_get_wav_header(AVIOContext *pb, AVCodecContext *codec, int size); extern const AVCodecTag ff_codec_bmp_tags[]; extern const AVCodecTag ff_codec_wav_tags[]; -unsigned int ff_codec_get_tag(const AVCodecTag *tags, enum AVCodecID id); -enum AVCodecID ff_codec_get_id(const AVCodecTag *tags, unsigned int tag); void ff_parse_specific_params(AVCodecContext *stream, int *au_rate, int *au_ssize, int *au_scale); typedef uint8_t ff_asf_guid[16]; diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c index bcfff41422..2bfa5ceeda 100644 --- a/libavformat/rmdec.c +++ b/libavformat/rmdec.c @@ -26,7 +26,6 @@ #include "libavutil/dict.h" #include "avformat.h" #include "internal.h" -#include "riff.h" #include "rmsipr.h" #include "rm.h" diff --git a/libavformat/rsodec.c b/libavformat/rsodec.c index 1b3a536245..19c21e0291 100644 --- a/libavformat/rsodec.c +++ b/libavformat/rsodec.c @@ -25,7 +25,6 @@ #include "avformat.h" #include "internal.h" #include "pcm.h" -#include "riff.h" #include "rso.h" static int rso_read_header(AVFormatContext *s) diff --git a/libavformat/smjpegenc.c b/libavformat/smjpegenc.c index 13095bc23d..0a2768785a 100644 --- a/libavformat/smjpegenc.c +++ b/libavformat/smjpegenc.c @@ -26,7 +26,6 @@ #include "avformat.h" #include "internal.h" -#include "riff.h" #include "smjpeg.h" typedef struct SMJPEGMuxContext { diff --git a/libavformat/swf.h b/libavformat/swf.h index 6ecd0da2fe..b9722c1c9a 100644 --- a/libavformat/swf.h +++ b/libavformat/swf.h @@ -32,7 +32,7 @@ #include "libavutil/fifo.h" #include "avformat.h" #include "avio.h" -#include "riff.h" /* for CodecTag */ +#include "internal.h" /* should have a generic way to indicate probable size */ #define DUMMY_FILE_SIZE (100 * 1024 * 1024) diff --git a/libavformat/voc.h b/libavformat/voc.h index 90178b3175..08db970ae6 100644 --- a/libavformat/voc.h +++ b/libavformat/voc.h @@ -23,7 +23,7 @@ #define AVFORMAT_VOC_H #include "avformat.h" -#include "riff.h" /* for CodecTag */ +#include "internal.h" typedef struct voc_dec_context { int64_t remaining_size; diff --git a/tests/fate/vpx.mak b/tests/fate/vpx.mak index d3f9cc79ae..fd9c905b4e 100644 --- a/tests/fate/vpx.mak +++ b/tests/fate/vpx.mak @@ -1,34 +1,34 @@ -FATE_VP3 += fate-vp31 +FATE_VP3-$(CONFIG_AVI_DEMUXER) += fate-vp31 fate-vp31: CMD = framecrc -i $(SAMPLES)/vp3/vp31.avi -FATE_VP3 += fate-vp3-coeff-level64 +FATE_VP3-$(CONFIG_MATROSKA_DEMUXER) += fate-vp3-coeff-level64 fate-vp3-coeff-level64: CMD = framecrc -i $(SAMPLES)/vp3/coeff_level64.mkv -FATE_SAMPLES_AVCONV += $(FATE_VP3) -fate-vp3: $(FATE_VP3) +FATE_SAMPLES_AVCONV-$(CONFIG_VP3_DECODER) += $(FATE_VP3-yes) +fate-vp3: $(FATE_VP3-yes) -FATE_SAMPLES_AVCONV += fate-vp5 +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, VP5) += fate-vp5 fate-vp5: CMD = framecrc -i $(SAMPLES)/vp5/potter512-400-partial.avi -an -FATE_VP6 += fate-vp60 +FATE_VP6-$(call DEMDEC, EA, VP6) += fate-vp60 fate-vp60: CMD = framecrc -i $(SAMPLES)/ea-vp6/g36.vp6 -FATE_VP6 += fate-vp61 +FATE_VP6-$(call DEMDEC, EA, VP6) += fate-vp61 fate-vp61: CMD = framecrc -i $(SAMPLES)/ea-vp6/MovieSkirmishGondor.vp6 -t 4 -FATE_VP6 += fate-vp6a +FATE_VP6-$(call DEMDEC, FLV, VP6A) += fate-vp6a fate-vp6a: CMD = framecrc -i $(SAMPLES)/flash-vp6/300x180-Scr-f8-056alpha.flv -FATE_VP6 += fate-vp6f +FATE_VP6-$(call DEMDEC, FLV, VP6F) += fate-vp6f fate-vp6f: CMD = framecrc -i $(SAMPLES)/flash-vp6/clip1024.flv -FATE_SAMPLES_AVCONV += $(FATE_VP6) -fate-vp6: $(FATE_VP6) +FATE_SAMPLES_AVCONV += $(FATE_VP6-yes) +fate-vp6: $(FATE_VP6-yes) VP8_SUITE = 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 define FATE_VP8_SUITE -FATE_VP8 += fate-vp8-test-vector$(2)-$(1) +FATE_VP8-$(CONFIG_IVF_DEMUXER) += fate-vp8-test-vector$(2)-$(1) fate-vp8-test-vector$(2)-$(1): CMD = framemd5 $(3) -i $(SAMPLES)/vp8-test-vectors-r1/vp80-00-comprehensive-$(1).ivf fate-vp8-test-vector$(2)-$(1): REF = $(SRC_PATH)/tests/ref/fate/vp8-test-vector-$(1) endef @@ -38,16 +38,16 @@ $(foreach N,$(VP8_SUITE),$(eval $(call FATE_VP8_SUITE,$(N),$(1),$(2)))) # FIXME this file contains two frames with identical timestamps, # so ffmpeg drops one of them -FATE_VP8 += fate-vp8-sign-bias$(1) +FATE_VP8-$(CONFIG_IVF_DEMUXER) += fate-vp8-sign-bias$(1) fate-vp8-sign-bias$(1): CMD = framemd5 $(2) -i $(SAMPLES)/vp8/sintel-signbias.ivf fate-vp8-sign-bias$(1): REF = $(SRC_PATH)/tests/ref/fate/vp8-sign-bias -FATE_VP8 += fate-vp8-size-change$(1) +FATE_VP8-$(CONFIG_MATROSKA_DEMUXER) += fate-vp8-size-change$(1) fate-vp8-size-change$(1): CMD = framemd5 $(2) -flags +bitexact -i $(SAMPLES)/vp8/frame_size_change.webm -frames:v 30 -sws_flags bitexact+bilinear fate-vp8-size-change$(1): REF = $(SRC_PATH)/tests/ref/fate/vp8-size-change endef $(eval $(call FATE_VP8_FULL)) $(eval $(call FATE_VP8_FULL,-emu-edge,-flags +emu_edge)) -FATE_SAMPLES_AVCONV += $(FATE_VP8) -fate-vp8: $(FATE_VP8) +FATE_SAMPLES_AVCONV-$(CONFIG_VP8_DECODER) += $(FATE_VP8-yes) +fate-vp8: $(FATE_VP8-yes) diff --git a/tests/fate/wavpack.mak b/tests/fate/wavpack.mak index afc84d0fd2..ef190fa89e 100644 --- a/tests/fate/wavpack.mak +++ b/tests/fate/wavpack.mak @@ -83,8 +83,10 @@ fate-wavpack-clipping: CMD = md5 -i $(SAMPLES)/wavpack/special/clipping.wv -f s1 FATE_WAVPACK += fate-wavpack-falsestereo fate-wavpack-falsestereo: CMD = md5 -i $(SAMPLES)/wavpack/special/false_stereo.wv -f s16le -FATE_WAVPACK += fate-wavpack-matroskamode +FATE_WAVPACK-$(call DEMDEC, WV, WAVPACK) += $(FATE_WAVPACK) + +FATE_WAVPACK-$(call DEMDEC, MATROSKA, WAVPACK) += fate-wavpack-matroskamode fate-wavpack-matroskamode: CMD = md5 -i $(SAMPLES)/wavpack/special/matroska_mode.mka -f s16le -FATE_SAMPLES_AVCONV-$(call DEMDEC, WV, WAVPACK) += $(FATE_WAVPACK) -fate-wavpack: $(FATE_WAVPACK) +FATE_SAMPLES_AVCONV += $(FATE_WAVPACK-yes) +fate-wavpack: $(FATE_WAVPACK-yes) |