1fate-acodec-%: CODEC = $(@:fate-acodec-%=%)
2fate-acodec-%: SRC = tests/data/asynth-44100-2.wav
3fate-acodec-%: CMD = enc_dec wav $(SRC) $(FMT) "-b:a 128k -c $(CODEC) $(ENCOPTS)" wav "-c pcm_s16le $(DECOPTS)" "$(KEEP_OVERRIDE)"
4fate-acodec-%: CMP_UNIT = 2
5fate-acodec-%: REF = $(SRC_PATH)/tests/ref/acodec/$(@:fate-acodec-%=%)
6
7FATE_ACODEC_PCM-$(call ENCDEC, PCM_ALAW,  WAV) += alaw
8FATE_ACODEC_PCM-$(call ENCDEC, PCM_MULAW, WAV) += mulaw
9FATE_ACODEC_PCM-$(call ENCDEC, PCM_S8,    MOV) += s8
10FATE_ACODEC_PCM-$(call ENCDEC, PCM_U8,    WAV) += u8
11FATE_ACODEC_PCM-$(call ENCDEC, PCM_S16BE, MOV) += s16be
12FATE_ACODEC_PCM-$(call ENCDEC, PCM_S16LE, WAV) += s16le
13FATE_ACODEC_PCM-$(call ENCDEC, PCM_U16BE, NUT) += u16be
14FATE_ACODEC_PCM-$(call ENCDEC, PCM_U16LE, NUT) += u16le
15FATE_ACODEC_PCM-$(call ENCDEC, PCM_S24BE, MOV) += s24be
16FATE_ACODEC_PCM-$(call ENCDEC, PCM_S24LE, WAV) += s24le
17FATE_ACODEC_PCM-$(call ENCDEC, PCM_U24BE, NUT) += u24be
18FATE_ACODEC_PCM-$(call ENCDEC, PCM_U24LE, NUT) += u24le
19FATE_ACODEC_PCM-$(call ENCDEC, PCM_S32BE, MOV) += s32be
20FATE_ACODEC_PCM-$(call ENCDEC, PCM_S32LE, WAV) += s32le
21FATE_ACODEC_PCM-$(call ENCDEC, PCM_U32BE, NUT) += u32be
22FATE_ACODEC_PCM-$(call ENCDEC, PCM_U32LE, NUT) += u32le
23FATE_ACODEC_PCM-$(call ENCDEC, PCM_F32BE, AU)  += f32be
24FATE_ACODEC_PCM-$(call ENCDEC, PCM_F32LE, WAV) += f32le
25FATE_ACODEC_PCM-$(call ENCDEC, PCM_F64BE, AU)  += f64be
26FATE_ACODEC_PCM-$(call ENCDEC, PCM_F64LE, WAV) += f64le
27FATE_ACODEC_PCM-$(call ENCDEC, PCM_S8_PLANAR, NUT) += s8_planar
28FATE_ACODEC_PCM-$(call ENCDEC, PCM_S16BE_PLANAR, NUT) += s16be_planar
29FATE_ACODEC_PCM-$(call ENCDEC, PCM_S16LE_PLANAR, NUT) += s16le_planar
30FATE_ACODEC_PCM-$(call ENCDEC, PCM_S24LE_PLANAR, NUT) += s24le_planar
31FATE_ACODEC_PCM-$(call ENCDEC, PCM_S32LE_PLANAR, NUT) += s32le_planar
32
33FATE_ACODEC_PCM := $(FATE_ACODEC_PCM-yes:%=fate-acodec-pcm-%)
34FATE_ACODEC += $(FATE_ACODEC_PCM)
35fate-acodec-pcm: $(FATE_ACODEC_PCM)
36
37fate-acodec-pcm-%: FMT = wav
38fate-acodec-pcm-%_planar: FMT = nut
39fate-acodec-pcm-%: CODEC = pcm_$(@:fate-acodec-pcm-%=%)
40
41fate-acodec-pcm-s8:   FMT = mov
42fate-acodec-pcm-s%be: FMT = mov
43fate-acodec-pcm-u%be: FMT = nut
44fate-acodec-pcm-u%le: FMT = nut
45fate-acodec-pcm-f%be: FMT = au
46
47FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_ADX,     ADX)      += adx
48FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_ARGO,    ARGO_ASF) += argo
49FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_IMA_APM, APM)      += ima_apm
50FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_IMA_ALP, ALP)      += ima_alp
51FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_IMA_QT,  AIFF)     += ima_qt
52FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_IMA_SSI, KVAG)     += ima_ssi
53FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_IMA_WAV, WAV)      += ima_wav
54FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_MS,      WAV)      += ms
55FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_SWF,     FLV)      += swf
56FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_SWF,     WAV)      += swf-wav
57FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_YAMAHA,  WAV)      += yamaha
58
59FATE_ACODEC_ADPCM := $(FATE_ACODEC_ADPCM-yes:%=fate-acodec-adpcm-%)
60FATE_ACODEC += $(FATE_ACODEC_ADPCM)
61fate-acodec-adpcm: $(FATE_ACODEC_ADPCM)
62
63fate-acodec-adpcm-%: CODEC = adpcm_$(@:fate-acodec-adpcm-%=%)
64
65fate-acodec-adpcm-adx:     FMT = adx
66fate-acodec-adpcm-argo:    FMT = argo_asf
67fate-acodec-adpcm-ima_apm: FMT = apm
68fate-acodec-adpcm-ima_qt:  FMT = aiff
69fate-acodec-adpcm-ima_ssi: FMT = kvag
70fate-acodec-adpcm-ima_wav: FMT = wav
71fate-acodec-adpcm-ms:      FMT = wav
72fate-acodec-adpcm-swf:     FMT = flv
73fate-acodec-adpcm-yamaha:  FMT = wav
74
75fate-acodec-adpcm-swf-wav: FMT   = wav
76fate-acodec-adpcm-swf-wav: CODEC = adpcm_swf
77
78fate-acodec-adpcm-ima_alp: FMT     = alp
79fate-acodec-adpcm-ima_alp: ENCOPTS = -type pcm
80
81FATE_ACODEC_ADPCM_TRELLIS-$(call ENCDEC, ADPCM_ADX,     ADX)  += adx
82FATE_ACODEC_ADPCM_TRELLIS-$(call ENCDEC, ADPCM_IMA_QT,  AIFF) += ima_qt
83FATE_ACODEC_ADPCM_TRELLIS-$(call ENCDEC, ADPCM_IMA_WAV, WAV)  += ima_wav
84FATE_ACODEC_ADPCM_TRELLIS-$(call ENCDEC, ADPCM_MS,      WAV)  += ms
85FATE_ACODEC_ADPCM_TRELLIS-$(call ENCDEC, ADPCM_SWF,     FLV)  += swf
86FATE_ACODEC_ADPCM_TRELLIS-$(call ENCDEC, ADPCM_YAMAHA,  WAV)  += yamaha
87
88FATE_ACODEC_ADPCM_TRELLIS := $(FATE_ACODEC_ADPCM_TRELLIS-yes:%=fate-acodec-adpcm-%-trellis)
89FATE_ACODEC += $(FATE_ACODEC_ADPCM_TRELLIS)
90fate-acodec-adpcm-trellis: $(FATE_ACODEC_ADPCM_TRELLIS)
91
92fate-acodec-adpcm-%-trellis: CODEC = adpcm_$(@:fate-acodec-adpcm-%-trellis=%)
93fate-acodec-adpcm-%-trellis: ENCOPTS = -trellis 5
94
95fate-acodec-adpcm-adx-trellis:     FMT = adx
96fate-acodec-adpcm-ima_qt-trellis:  FMT = aiff
97fate-acodec-adpcm-ima_wav-trellis: FMT = wav
98fate-acodec-adpcm-ms-trellis:      FMT = wav
99fate-acodec-adpcm-swf-trellis:     FMT = flv
100fate-acodec-adpcm-yamaha-trellis:  FMT = wav
101
102FATE_ACODEC-$(call ENCDEC, MP2, MP2 MP3) += fate-acodec-mp2
103fate-acodec-mp2: FMT = mp2
104fate-acodec-mp2: CMP_SHIFT = -1924
105fate-acodec-mp2: ENCOPTS = -b:a 128k
106
107FATE_ACODEC-$(call ENCDEC, MP2FIXED MP2 , MP2 MP3) += fate-acodec-mp2fixed
108fate-acodec-mp2fixed: FMT = mp2
109fate-acodec-mp2fixed: CMP_SHIFT = -1924
110fate-acodec-mp2fixed: ENCOPTS = -b:a 384k
111
112FATE_ACODEC-$(call ENCDEC, ALAC, MOV) += fate-acodec-alac
113fate-acodec-alac: FMT = mov
114fate-acodec-alac: CODEC = alac -compression_level 1
115
116FATE_ACODEC-$(call ENCDEC, DCA, DTS) += fate-acodec-dca
117fate-acodec-dca: tests/data/asynth-44100-2.wav
118fate-acodec-dca: SRC = tests/data/asynth-44100-2.wav
119fate-acodec-dca: CMD = md5 -i $(TARGET_PATH)/$(SRC) -c:a dca -strict -2 -f dts -flags +bitexact -af aresample
120fate-acodec-dca: CMP = oneline
121fate-acodec-dca: REF = 2aa580ac67820fce4f581b96ebb34acc
122
123FATE_ACODEC-$(call ENCDEC, DCA, WAV) += fate-acodec-dca2
124fate-acodec-dca2: CMD = enc_dec_pcm dts wav s16le $(SRC) -c:a dca -strict -2 -flags +bitexact -af aresample
125fate-acodec-dca2: REF = $(SRC)
126fate-acodec-dca2: CMP = stddev
127fate-acodec-dca2: CMP_SHIFT = -2048
128fate-acodec-dca2: CMP_TARGET = 535
129fate-acodec-dca2: SIZE_TOLERANCE = 1632
130
131FATE_ACODEC-$(call ENCDEC, FLAC, FLAC) += fate-acodec-flac fate-acodec-flac-exact-rice
132fate-acodec-flac: FMT = flac
133fate-acodec-flac: CODEC = flac -compression_level 2
134
135fate-acodec-flac-exact-rice: FMT = flac
136fate-acodec-flac-exact-rice: CODEC = flac -compression_level 2 -exact_rice_parameters 1
137
138FATE_ACODEC-$(call ENCDEC, G723_1, G723_1) += fate-acodec-g723_1
139fate-acodec-g723_1: tests/data/asynth-8000-1.wav
140fate-acodec-g723_1: SRC = tests/data/asynth-8000-1.wav
141fate-acodec-g723_1: FMT = g723_1
142fate-acodec-g723_1: CODEC = g723_1
143fate-acodec-g723_1: ENCOPTS = -b:a 6.3k
144fate-acodec-g723_1: CMP_SHIFT = 8
145
146FATE_ACODEC-$(call ENCDEC, RA_144, WAV) += fate-acodec-ra144
147fate-acodec-ra144: tests/data/asynth-8000-1.wav
148fate-acodec-ra144: SRC = tests/data/asynth-8000-1.wav
149fate-acodec-ra144: CMD = enc_dec_pcm rm wav s16le $(SRC) -c:a real_144
150fate-acodec-ra144: REF = $(SRC)
151fate-acodec-ra144: CMP = stddev
152fate-acodec-ra144: CMP_TARGET = 4777
153fate-acodec-ra144: CMP_SHIFT = -320
154
155FATE_ACODEC-$(call ENCDEC, ROQ_DPCM, ROQ) += fate-acodec-roqaudio
156fate-acodec-roqaudio: FMT = roq
157fate-acodec-roqaudio: CODEC = roq_dpcm
158fate-acodec-roqaudio: ENCOPTS = -ar 22050
159fate-acodec-roqaudio: DECOPTS = -ar 44100
160
161FATE_ACODEC-$(call ENCDEC, S302M, MPEGTS) += fate-acodec-s302m
162fate-acodec-s302m: FMT = mpegts
163fate-acodec-s302m: CODEC = s302m
164fate-acodec-s302m: ENCOPTS = -ar 48000 -strict -2
165fate-acodec-s302m: DECOPTS = -ar 44100
166
167FATE_ACODEC-$(call ENCDEC, WAVPACK, WV) += fate-acodec-wavpack
168fate-acodec-wavpack: FMT = wv
169fate-acodec-wavpack: CODEC = wavpack -compression_level 1
170
171FATE_ACODEC-$(call ENCDEC, TTA, TTA) += fate-acodec-tta
172fate-acodec-tta: FMT = tta
173
174FATE_ACODEC += $(FATE_ACODEC-yes)
175
176$(FATE_ACODEC): tests/data/asynth-44100-2.wav
177
178FATE_AVCONV += $(FATE_ACODEC)
179fate-acodec: $(FATE_ACODEC)
180