]> git.sesse.net Git - ffmpeg/blob - tests/fate/filter-audio.mak
fate/vcodec: use the encoder private option for frame skip compare function
[ffmpeg] / tests / fate / filter-audio.mak
1 FATE_AFILTER-$(call FILTERDEMDECENCMUX, ADELAY, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-adelay
2 fate-filter-adelay: tests/data/asynth-44100-2.wav
3 fate-filter-adelay: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
4 fate-filter-adelay: CMD = framecrc -i $(SRC) -af adelay=42
5
6 FATE_AFILTER-$(call FILTERDEMDECENCMUX, AECHO, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-aecho
7 fate-filter-aecho: tests/data/asynth-44100-2.wav
8 fate-filter-aecho: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
9 fate-filter-aecho: CMD = framecrc -i $(SRC) -af aecho=0.5:0.5:32:0.5
10
11 FATE_FILTER_AEMPHASIS += fate-filter-aemphasis-50fm
12 fate-filter-aemphasis-50fm: tests/data/asynth-44100-2.wav
13 fate-filter-aemphasis-50fm: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
14 fate-filter-aemphasis-50fm: CMD = framecrc -i $(SRC) -af aemphasis=1:5:reproduction:50fm
15
16 FATE_FILTER_AEMPHASIS += fate-filter-aemphasis-75kf
17 fate-filter-aemphasis-75kf: tests/data/asynth-44100-2.wav
18 fate-filter-aemphasis-75kf: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
19 fate-filter-aemphasis-75kf: CMD = framecrc -i $(SRC) -af aemphasis=2:8:reproduction:75kf
20
21 FATE_AFILTER-$(call FILTERDEMDECENCMUX, AEMPHASIS, WAV, PCM_S16LE, PCM_S16LE, WAV) += $(FATE_FILTER_AEMPHASIS)
22
23 FATE_FILTER_AFADE += fate-filter-afade-qsin
24 fate-filter-afade-qsin: tests/data/asynth-44100-2.wav
25 fate-filter-afade-qsin: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
26 fate-filter-afade-qsin: CMD = framecrc -i $(SRC) -af afade=t=in:ss=0:d=2:curve=qsin
27
28 FATE_FILTER_AFADE += fate-filter-afade-iqsin
29 fate-filter-afade-iqsin: tests/data/asynth-44100-2.wav
30 fate-filter-afade-iqsin: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
31 fate-filter-afade-iqsin: CMD = framecrc -i $(SRC) -af afade=t=in:ss=0:d=2:curve=iqsin
32
33 FATE_FILTER_AFADE += fate-filter-afade-esin
34 fate-filter-afade-esin: tests/data/asynth-44100-2.wav
35 fate-filter-afade-esin: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
36 fate-filter-afade-esin: CMD = framecrc -i $(SRC) -af afade=t=in:ss=0:d=2:curve=esin
37
38 FATE_FILTER_AFADE += fate-filter-afade-hsin
39 fate-filter-afade-hsin: tests/data/asynth-44100-2.wav
40 fate-filter-afade-hsin: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
41 fate-filter-afade-hsin: CMD = framecrc -i $(SRC) -af afade=t=in:ss=0:d=2:curve=hsin
42
43 FATE_FILTER_AFADE += fate-filter-afade-exp
44 fate-filter-afade-exp: tests/data/asynth-44100-2.wav
45 fate-filter-afade-exp: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
46 fate-filter-afade-exp: CMD = framecrc -i $(SRC) -af afade=t=in:ss=0:d=2:curve=exp
47
48 FATE_FILTER_AFADE += fate-filter-afade-log
49 fate-filter-afade-log: tests/data/asynth-44100-2.wav
50 fate-filter-afade-log: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
51 fate-filter-afade-log: CMD = framecrc -i $(SRC) -af afade=t=in:ss=1:d=2.5:curve=log
52
53 FATE_AFILTER-$(call FILTERDEMDECENCMUX, AFADE, WAV, PCM_S16LE, PCM_S16LE, WAV) += $(FATE_FILTER_AFADE)
54
55 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, ACROSSFADE, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-acrossfade
56 fate-filter-acrossfade: tests/data/asynth-44100-2.wav
57 fate-filter-acrossfade: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
58 fate-filter-acrossfade: SRC2 = $(TARGET_SAMPLES)/audio-reference/luckynight_2ch_44kHz_s16.wav
59 fate-filter-acrossfade: CMD = framecrc -i $(SRC) -i $(SRC2) -filter_complex acrossfade=d=2:c1=log:c2=exp
60
61 FATE_AFILTER-$(call FILTERDEMDECENCMUX, AFADE, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-agate
62 fate-filter-agate: tests/data/asynth-44100-2.wav
63 fate-filter-agate: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
64 fate-filter-agate: CMD = framecrc -i $(SRC) -af agate=level_in=10:range=0:threshold=1:ratio=1:attack=1:knee=1:makeup=4
65
66 FATE_AFILTER-$(call FILTERDEMDECENCMUX, AFADE, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-alimiter
67 fate-filter-alimiter: tests/data/asynth-44100-2.wav
68 fate-filter-alimiter: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
69 fate-filter-alimiter: CMD = framecrc -i $(SRC) -af alimiter=level_in=1:level_out=2:limit=0.2
70
71 FATE_AFILTER-$(call FILTERDEMDECENCMUX, AMERGE, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-amerge
72 fate-filter-amerge: tests/data/asynth-44100-1.wav
73 fate-filter-amerge: SRC = $(TARGET_PATH)/tests/data/asynth-44100-1.wav
74 fate-filter-amerge: CMD = framecrc -i $(SRC) -i $(SRC) -filter_complex "[0:a][1:a]amerge=inputs=2[aout]" -map "[aout]"
75
76 FATE_AFILTER-$(call FILTERDEMDECENCMUX, APAD, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-apad
77 fate-filter-apad: tests/data/asynth-44100-2.wav
78 fate-filter-apad: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
79 fate-filter-apad: CMD = framecrc -i $(SRC) -af apad=pad_len=10
80
81 FATE_AFILTER-$(call FILTERDEMDECENCMUX, ANEQUALIZER, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-anequalizer
82 fate-filter-anequalizer: tests/data/asynth-44100-2.wav
83 fate-filter-anequalizer: tests/data/filtergraphs/anequalizer
84 fate-filter-anequalizer: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
85 fate-filter-anequalizer: CMD = framecrc -i $(SRC) -filter_complex_script $(TARGET_PATH)/tests/data/filtergraphs/anequalizer
86
87 FATE_AFILTER-$(call FILTERDEMDECENCMUX, ASETNSAMPLES, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-asetnsamples-pad
88 fate-filter-asetnsamples-pad: tests/data/asynth-44100-2.wav
89 fate-filter-asetnsamples-pad: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
90 fate-filter-asetnsamples-pad: CMD = framecrc -i $(SRC) -af asetnsamples=512:p=1
91
92 FATE_AFILTER-$(call FILTERDEMDECENCMUX, ASETNSAMPLES, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-asetnsamples-nopad
93 fate-filter-asetnsamples-nopad: tests/data/asynth-44100-2.wav
94 fate-filter-asetnsamples-nopad: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
95 fate-filter-asetnsamples-nopad: CMD = framecrc -i $(SRC) -af asetnsamples=512:p=0
96
97 FATE_AFILTER-$(call FILTERDEMDECENCMUX, ASETRATE, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-asetrate
98 fate-filter-asetrate: tests/data/asynth-44100-2.wav
99 fate-filter-asetrate: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
100 fate-filter-asetrate: CMD = framecrc -i $(SRC) -frames:a 20 -af asetrate=20000
101
102 FATE_AFILTER-$(call FILTERDEMDECENCMUX, CHORUS, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-chorus
103 fate-filter-chorus: tests/data/asynth-22050-1.wav
104 fate-filter-chorus: SRC = $(TARGET_PATH)/tests/data/asynth-22050-1.wav
105 fate-filter-chorus: CMD = framecrc -i $(SRC) -frames:a 10 -af chorus=0.050001:0.050002:64:0.050001:0.025003:2.00004
106
107 FATE_AFILTER-$(call FILTERDEMDECENCMUX, DCSHIFT, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-dcshift
108 fate-filter-dcshift: tests/data/asynth-44100-2.wav
109 fate-filter-dcshift: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
110 fate-filter-dcshift: CMD = framecrc -i $(SRC) -frames:a 20 -af dcshift=shift=0.25:limitergain=0.05
111
112 FATE_AFILTER-$(call FILTERDEMDECENCMUX, EARWAX, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-earwax
113 fate-filter-earwax: tests/data/asynth-44100-2.wav
114 fate-filter-earwax: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
115 fate-filter-earwax: CMD = framecrc -i $(SRC) -frames:a 20 -af earwax
116
117 FATE_AFILTER-$(call FILTERDEMDECENCMUX, EXTRASTEREO, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-extrastereo
118 fate-filter-extrastereo: tests/data/asynth-44100-2.wav
119 fate-filter-extrastereo: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
120 fate-filter-extrastereo: CMD = framecrc -i $(SRC) -frames:a 20 -af extrastereo=m=2
121
122 FATE_AFILTER-$(call FILTERDEMDECENCMUX, FIREQUALIZER ATRIM VOLUME, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-firequalizer
123 fate-filter-firequalizer: tests/data/asynth-44100-2.wav
124 fate-filter-firequalizer: tests/data/filtergraphs/firequalizer
125 fate-filter-firequalizer: REF = tests/data/asynth-44100-2.wav
126 fate-filter-firequalizer: CMD = ffmpeg -i $(TARGET_PATH)/tests/data/asynth-44100-2.wav -filter_script $(TARGET_PATH)/tests/data/filtergraphs/firequalizer -f wav -c:a pcm_s16le -
127 fate-filter-firequalizer: CMP = oneoff
128 fate-filter-firequalizer: CMP_UNIT = s16
129 fate-filter-firequalizer: SIZE_TOLERANCE = 1058400 - 1097208
130
131 FATE_AFILTER-$(call FILTERDEMDECENCMUX, PAN, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-pan-mono1
132 fate-filter-pan-mono1: tests/data/asynth-44100-2.wav
133 fate-filter-pan-mono1: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
134 fate-filter-pan-mono1: CMD = framecrc -ss 3.14 -i $(SRC) -frames:a 20 -filter:a "pan=mono|FC=FL"
135
136 FATE_AFILTER-$(call FILTERDEMDECENCMUX, PAN, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-pan-mono2
137 fate-filter-pan-mono2: tests/data/asynth-44100-2.wav
138 fate-filter-pan-mono2: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
139 fate-filter-pan-mono2: CMD = framecrc -ss 3.14 -i $(SRC) -frames:a 20 -filter:a "pan=1C|c0=c0+c1"
140
141 FATE_AFILTER-$(call FILTERDEMDECENCMUX, PAN, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-pan-stereo1
142 fate-filter-pan-stereo1: tests/data/asynth-44100-3.wav
143 fate-filter-pan-stereo1: SRC = $(TARGET_PATH)/tests/data/asynth-44100-3.wav
144 fate-filter-pan-stereo1: CMD = framecrc -ss 3.14 -i $(SRC) -frames:a 20 -filter:a "pan=2c|FL=FR|FR=FL"
145
146 FATE_AFILTER-$(call FILTERDEMDECENCMUX, PAN, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-pan-stereo2
147 fate-filter-pan-stereo2: tests/data/asynth-44100-3.wav
148 fate-filter-pan-stereo2: SRC = $(TARGET_PATH)/tests/data/asynth-44100-3.wav
149 fate-filter-pan-stereo2: CMD = framecrc -ss 3.14 -i $(SRC) -frames:a 20 -filter:a "pan=stereo|c0=c0-c2|c1=c1-c2"
150
151 FATE_AFILTER-$(call FILTERDEMDECENCMUX, PAN, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-pan-stereo3
152 fate-filter-pan-stereo3: tests/data/asynth-44100-2.wav
153 fate-filter-pan-stereo3: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
154 fate-filter-pan-stereo3: CMD = framecrc -ss 3.14 -i $(SRC) -frames:a 20 -filter:a "pan=FL+FR|FL<3*c0+2*c1|FR<2*c0+3*c1"
155
156 FATE_AFILTER-$(call FILTERDEMDECENCMUX, PAN, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-pan-stereo4
157 fate-filter-pan-stereo4: tests/data/asynth-44100-2.wav
158 fate-filter-pan-stereo4: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
159 fate-filter-pan-stereo4: CMD = framecrc -ss 3.14 -guess_layout_max 0 -i $(SRC) -frames:a 20 -filter:a "pan=2C|c0=c0-0.5*c1|c1=c1+0.5*c0"
160
161 FATE_AFILTER-$(call FILTERDEMDECENCMUX, PAN, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-pan-upmix1
162 fate-filter-pan-upmix1: tests/data/asynth-44100-2.wav
163 fate-filter-pan-upmix1: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
164 fate-filter-pan-upmix1: CMD = framecrc -ss 3.14 -guess_layout_max 0 -i $(SRC) -frames:a 20 -filter:a "pan=4C|c0=c0-0.5*c1|c1=c1+0.5*c0|c2=0*c0|c3=0*c0"
165
166 FATE_AFILTER-$(call FILTERDEMDECENCMUX, PAN, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-pan-upmix2
167 fate-filter-pan-upmix2: tests/data/asynth-44100-4.wav
168 fate-filter-pan-upmix2: SRC = $(TARGET_PATH)/tests/data/asynth-44100-4.wav
169 fate-filter-pan-upmix2: CMD = framecrc -ss 3.14 -i $(SRC) -frames:a 20 -filter:a "pan=9C|c0=c0-c1|c1=c2+c3|c2=c0+c1|c3=c2-c3|c4=c1-c0|c5=c3+c2|c6=c1+c0|c7=c3-c2|c8=c0-c3"
170
171 FATE_AFILTER-$(call FILTERDEMDECENCMUX, PAN, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-pan-downmix1
172 fate-filter-pan-downmix1: tests/data/asynth-44100-4.wav
173 fate-filter-pan-downmix1: SRC = $(TARGET_PATH)/tests/data/asynth-44100-4.wav
174 fate-filter-pan-downmix1: CMD = framecrc -ss 3.14 -i $(SRC) -frames:a 20 -filter:a "pan=2c|FL<FL+0.5*FC+0.6*BL+0.6*SL|FR<FR+0.5*FC+0.6*BR+0.6*SR"
175
176 FATE_AFILTER-$(call FILTERDEMDECENCMUX, PAN, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-pan-downmix2
177 fate-filter-pan-downmix2: tests/data/asynth-44100-11.wav
178 fate-filter-pan-downmix2: SRC = $(TARGET_PATH)/tests/data/asynth-44100-11.wav
179 fate-filter-pan-downmix2: CMD = framecrc -ss 3.14 -i $(SRC) -frames:a 20 -filter:a "pan=5C|c0=0.7*c0+0.7*c10|c1=c9|c2=c8|c3=c7|c4=c6"
180
181 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, SILENCEREMOVE, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-silenceremove
182 fate-filter-silenceremove: SRC = $(TARGET_SAMPLES)/audio-reference/divertimenti_2ch_96kHz_s24.wav
183 fate-filter-silenceremove: CMD = framecrc -i $(SRC) -frames:a 30 -af silenceremove=start_periods=0:start_duration=0:start_threshold=0:stop_periods=-1:stop_duration=0:stop_threshold=-90dB
184
185 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, STEREOTOOLS, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-stereotools
186 fate-filter-stereotools: SRC = $(TARGET_SAMPLES)/audio-reference/luckynight_2ch_44kHz_s16.wav
187 fate-filter-stereotools: CMD = framecrc -i $(SRC) -frames:a 20 -af stereotools=mlev=0.015625
188
189 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, TREMOLO, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-tremolo
190 fate-filter-tremolo: tests/data/asynth-44100-2.wav
191 fate-filter-tremolo: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
192 fate-filter-tremolo: CMD = ffmpeg -i $(SRC) -frames:a 20 -af tremolo -f wav -f s16le -
193 fate-filter-tremolo: REF = $(SAMPLES)/filter/tremolo.pcm
194 fate-filter-tremolo: CMP = oneoff
195 fate-filter-tremolo: CMP_UNIT = s16
196
197 FATE_AFILTER-$(call FILTERDEMDECENCMUX, COMPAND, WAV, PCM_S16LE, PCM_S16LE, WAV) += fate-filter-compand
198 fate-filter-compand: tests/data/asynth-44100-2.wav
199 fate-filter-compand: tests/data/filtergraphs/compand
200 fate-filter-compand: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
201 fate-filter-compand: CMD = framecrc -i $(SRC) -frames:a 20 -filter_complex_script $(TARGET_PATH)/tests/data/filtergraphs/compand
202
203 tests/data/hls-list.m3u8: TAG = GEN
204 tests/data/hls-list.m3u8: ffmpeg$(PROGSSUF)$(EXESUF) | tests/data
205         $(M)$(TARGET_EXEC) $(TARGET_PATH)/$< \
206         -f lavfi -i "aevalsrc=cos(2*PI*t)*sin(2*PI*(440+4*t)*t):d=20" -f segment -segment_time 10 -map 0 -flags +bitexact -codec:a mp2fixed \
207         -segment_list $(TARGET_PATH)/$@ -y $(TARGET_PATH)/tests/data/hls-out-%03d.ts 2>/dev/null
208
209 FATE_AFILTER-$(call ALLYES, HLS_DEMUXER MPEGTS_MUXER MPEGTS_DEMUXER AEVALSRC_FILTER LAVFI_INDEV MP2FIXED_ENCODER) += fate-filter-hls
210 fate-filter-hls: tests/data/hls-list.m3u8
211 fate-filter-hls: CMD = framecrc -flags +bitexact -i $(TARGET_PATH)/tests/data/hls-list.m3u8
212
213 tests/data/hls-list-append.m3u8: TAG = GEN
214 tests/data/hls-list-append.m3u8: ffmpeg$(PROGSSUF)$(EXESUF) | tests/data
215         $(M)$(TARGET_EXEC) $(TARGET_PATH)/$< \
216         -f lavfi -i "aevalsrc=cos(2*PI*t)*sin(2*PI*(440+4*t)*t):d=20" -f segment -segment_time 10 -map 0 -flags +bitexact -codec:a mp2fixed \
217         -segment_list $(TARGET_PATH)/$@ -y $(TARGET_PATH)/tests/data/hls-append-out-%03d.ts 2>/dev/null; \
218         $(TARGET_EXEC) $(TARGET_PATH)/$< \
219         -f lavfi -i "aevalsrc=cos(2*PI*t)*sin(2*PI*(440+4*t)*t):d=20" -f hls -hls_time 10 -map 0 -flags +bitexact \
220         -hls_flags append_list -codec:a mp2fixed -hls_segment_filename $(TARGET_PATH)/tests/data/hls-append-out-%03d.ts \
221         $(TARGET_PATH)/tests/data/hls-list-append.m3u8 2>/dev/null
222
223 FATE_AFILTER-$(call ALLYES, HLS_DEMUXER MPEGTS_MUXER MPEGTS_DEMUXER AEVALSRC_FILTER LAVFI_INDEV MP2FIXED_ENCODER) += fate-filter-hls-append
224 fate-filter-hls-append: tests/data/hls-list-append.m3u8
225 fate-filter-hls-append: CMD = framecrc -flags +bitexact -i $(TARGET_PATH)/tests/data/hls-list-append.m3u8 -af asetpts=N*23
226
227 FATE_AMIX += fate-filter-amix-simple
228 fate-filter-amix-simple: CMD = ffmpeg -filter_complex amix -i $(SRC) -ss 3 -i $(SRC1) -f f32le -
229 fate-filter-amix-simple: REF = $(SAMPLES)/filter/amix_simple.pcm
230
231 FATE_AMIX += fate-filter-amix-first
232 fate-filter-amix-first: CMD = ffmpeg -filter_complex amix=duration=first -ss 4 -i $(SRC) -i $(SRC1) -f f32le -
233 fate-filter-amix-first: REF = $(SAMPLES)/filter/amix_first.pcm
234
235 FATE_AMIX += fate-filter-amix-transition
236 fate-filter-amix-transition: tests/data/asynth-44100-2-3.wav
237 fate-filter-amix-transition: SRC2 = $(TARGET_PATH)/tests/data/asynth-44100-2-3.wav
238 fate-filter-amix-transition: CMD = ffmpeg -filter_complex amix=inputs=3:dropout_transition=0.5 -i $(SRC) -ss 2 -i $(SRC1) -ss 4 -i $(SRC2) -f f32le -
239 fate-filter-amix-transition: REF = $(SAMPLES)/filter/amix_transition.pcm
240
241 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, AMIX, WAV, PCM_S16LE, PCM_F32LE, PCM_F32LE) += $(FATE_AMIX)
242 $(FATE_AMIX): tests/data/asynth-44100-2.wav tests/data/asynth-44100-2-2.wav
243 $(FATE_AMIX): SRC  = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
244 $(FATE_AMIX): SRC1 = $(TARGET_PATH)/tests/data/asynth-44100-2-2.wav
245 $(FATE_AMIX): CMP  = oneoff
246 $(FATE_AMIX): CMP_UNIT = f32
247
248 FATE_AFILTER_SAMPLES-$(CONFIG_ARESAMPLE_FILTER) += fate-filter-aresample
249 fate-filter-aresample: SRC = $(TARGET_SAMPLES)/nellymoser/nellymoser-discont.flv
250 fate-filter-aresample: CMD = pcm -analyzeduration 10000000 -i $(SRC) -af aresample=min_comp=0.001:min_hard_comp=0.1:first_pts=0
251 fate-filter-aresample: CMP = oneoff
252 fate-filter-aresample: REF = $(SAMPLES)/nellymoser/nellymoser-discont.pcm
253
254 FATE_ATRIM += fate-filter-atrim-duration
255 fate-filter-atrim-duration: CMD = framecrc -i $(SRC) -af atrim=start=0.1:duration=0.01
256 FATE_ATRIM += fate-filter-atrim-mixed
257 fate-filter-atrim-mixed: CMD = framecrc -i $(SRC) -af atrim=start=0.05:start_sample=1025:end=0.1:end_sample=4411
258
259 FATE_ATRIM += fate-filter-atrim-samples
260 fate-filter-atrim-samples: CMD = framecrc -i $(SRC) -af atrim=start_sample=26:end_sample=80
261
262 FATE_ATRIM += fate-filter-atrim-time
263 fate-filter-atrim-time: CMD = framecrc -i $(SRC) -af atrim=0.1:0.2
264
265 $(FATE_ATRIM): tests/data/asynth-44100-2.wav
266 $(FATE_ATRIM): SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
267
268 FATE_AFILTER-$(call FILTERDEMDECENCMUX, ATRIM, WAV, PCM_S16LE, PCM_S16LE, WAV) += $(FATE_ATRIM)
269
270 FATE_FILTER_CHANNELMAP += fate-filter-channelmap-one-int
271 fate-filter-channelmap-one-int: tests/data/filtergraphs/channelmap_one_int
272 fate-filter-channelmap-one-int: SRC = $(TARGET_PATH)/tests/data/asynth-44100-6.wav
273 fate-filter-channelmap-one-int: tests/data/asynth-44100-6.wav
274 fate-filter-channelmap-one-int: CMD = md5 -i $(SRC) -filter_complex_script $(TARGET_PATH)/tests/data/filtergraphs/channelmap_one_int -f wav -fflags +bitexact
275 fate-filter-channelmap-one-int: CMP = oneline
276 fate-filter-channelmap-one-int: REF = 8cfe553d65ed4696756d8c1b824fcdd3
277
278 FATE_FILTER_CHANNELMAP += fate-filter-channelmap-one-str
279 fate-filter-channelmap-one-str: tests/data/filtergraphs/channelmap_one_str
280 fate-filter-channelmap-one-str: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
281 fate-filter-channelmap-one-str: tests/data/asynth-44100-2.wav
282 fate-filter-channelmap-one-str: CMD = md5 -i $(SRC) -filter_complex_script $(TARGET_PATH)/tests/data/filtergraphs/channelmap_one_str -f wav -fflags +bitexact
283 fate-filter-channelmap-one-str: CMP = oneline
284 fate-filter-channelmap-one-str: REF = 0ea3052e482c95d5d3bd9da6dac1b5fa
285
286 FATE_AFILTER-$(call FILTERDEMDECENCMUX, CHANNELMAP, WAV, PCM_S16LE, PCM_S16LE, WAV) += $(FATE_FILTER_CHANNELMAP)
287
288 FATE_AFILTER-$(call FILTERDEMDECENCMUX, CHANNELSPLIT, WAV, PCM_S16LE, PCM_S16LE, PCM_S16LE) += fate-filter-channelsplit
289 fate-filter-channelsplit: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
290 fate-filter-channelsplit: tests/data/asynth-44100-2.wav
291 fate-filter-channelsplit: CMD = md5 -i $(SRC) -filter_complex channelsplit -f s16le
292 fate-filter-channelsplit: CMP = oneline
293 fate-filter-channelsplit: REF = d92988d0fe2dd92236763f47b07ab597
294
295 FATE_AFILTER-$(call FILTERDEMDECENCMUX, JOIN, WAV, PCM_S16LE, PCM_S16LE, PCM_S16LE) += fate-filter-join
296 fate-filter-join: SRC1 = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
297 fate-filter-join: SRC2 = $(TARGET_PATH)/tests/data/asynth-44100-3.wav
298 fate-filter-join: tests/data/asynth-44100-2.wav tests/data/asynth-44100-3.wav
299 fate-filter-join: CMD = md5 -i $(SRC1) -i $(SRC2) -filter_complex join=channel_layout=5c -f s16le
300 fate-filter-join: CMP = oneline
301 fate-filter-join: REF = 88b0d24a64717ba8635b29e8dac6ecd8
302
303 FATE_AFILTER-$(call ALLYES, WAV_DEMUXER PCM_S16LE_DECODER PCM_S16LE_ENCODER PCM_S16LE_MUXER APERMS_FILTER VOLUME_FILTER) += fate-filter-volume
304 fate-filter-volume: SRC = $(TARGET_PATH)/tests/data/asynth-44100-2.wav
305 fate-filter-volume: tests/data/asynth-44100-2.wav
306 fate-filter-volume: CMD = md5 -i $(SRC) -af aperms=random,volume=precision=fixed:volume=0.5 -f s16le
307 fate-filter-volume: CMP = oneline
308 fate-filter-volume: REF = 4d6ba75ef3e32d305d066b9bc771d6f4
309
310 # hdcd-mix.flac is a mix of three different sources which are interesting for various reasons:
311 # first 5 seconds uses packet format A and max LLE of -7.0db
312 # second 5 seconds uses packet format B and has a gain mismatch between channels
313 # last 10 seconds is not HDCD but has a coincidental HDCD packet, it needs to be 10 seconds because it also tests the cdt expiration
314 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-mix
315 fate-filter-hdcd-mix: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac
316 fate-filter-hdcd-mix: CMD = md5 -i $(SRC) -af hdcd -f s24le
317 fate-filter-hdcd-mix: CMP = oneline
318 fate-filter-hdcd-mix: REF = 77443573e0bd3532de52a8bc0e825da7
319
320 # output will be different because of the gain mismatch in the second and third parts
321 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-mix-psoff
322 fate-filter-hdcd-mix-psoff: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac
323 fate-filter-hdcd-mix-psoff: CMD = md5 -i $(SRC) -af hdcd=process_stereo=false -f s24le
324 fate-filter-hdcd-mix-psoff: CMP = oneline
325 fate-filter-hdcd-mix-psoff: REF = 89e57885917a436b30855db4d478cefb
326
327 # test the different analyze modes
328 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-analyze-pe
329 fate-filter-hdcd-analyze-pe: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac
330 fate-filter-hdcd-analyze-pe: CMD = md5 -i $(SRC) -af hdcd=analyze_mode=pe -f s24le
331 fate-filter-hdcd-analyze-pe: CMP = oneline
332 fate-filter-hdcd-analyze-pe: REF = 2d839d8a1cf73b10a566ce3d4cfaa79e
333 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-analyze-lle
334 fate-filter-hdcd-analyze-lle: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac
335 fate-filter-hdcd-analyze-lle: CMD = md5 -i $(SRC) -af hdcd=analyze_mode=lle -f s24le
336 fate-filter-hdcd-analyze-lle: CMP = oneline
337 fate-filter-hdcd-analyze-lle: REF = b4b185332b7025c191062f49a2c015f1
338 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-analyze-cdt
339 fate-filter-hdcd-analyze-cdt: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac
340 fate-filter-hdcd-analyze-cdt: CMD = md5 -i $(SRC) -af hdcd=analyze_mode=cdt -f s24le
341 fate-filter-hdcd-analyze-cdt: CMP = oneline
342 fate-filter-hdcd-analyze-cdt: REF = afa6577675c63e87da3edbd442b7b6e2
343 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-analyze-tgm
344 fate-filter-hdcd-analyze-tgm: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac
345 fate-filter-hdcd-analyze-tgm: CMD = md5 -i $(SRC) -af hdcd=analyze_mode=tgm -f s24le
346 fate-filter-hdcd-analyze-tgm: CMP = oneline
347 fate-filter-hdcd-analyze-tgm: REF = 285f0fd2249b4903cd5e1ad5ce004219
348 # the two additional analyze modes from libhdcd
349 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-analyze-ltgm
350 fate-filter-hdcd-analyze-ltgm: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac
351 fate-filter-hdcd-analyze-ltgm: CMD = md5 -i $(SRC) -af hdcd=analyze_mode=lle:process_stereo=false -f s24le
352 fate-filter-hdcd-analyze-ltgm: CMP = oneline
353 fate-filter-hdcd-analyze-ltgm: REF = 404dc2301ea97e9f96c3d6d2ebcfeaa5
354 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-analyze-pel
355 fate-filter-hdcd-analyze-pel: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac
356 fate-filter-hdcd-analyze-pel: CMD = md5 -i $(SRC) -af hdcd=analyze_mode=pe:force_pe=true -f s24le
357 fate-filter-hdcd-analyze-pel: CMP = oneline
358 fate-filter-hdcd-analyze-pel: REF = 9342983208ec1a7f2b3e332ac4dcb723
359
360 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-false-positive
361 fate-filter-hdcd-false-positive: SRC = $(TARGET_SAMPLES)/filter/hdcd-false-positive.flac
362 fate-filter-hdcd-false-positive: CMD = md5 -i $(SRC) -af hdcd -f s24le
363 fate-filter-hdcd-false-positive: CMP = grep
364 fate-filter-hdcd-false-positive: REF = HDCD detected: no
365
366 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-detect-errors
367 fate-filter-hdcd-detect-errors: SRC = $(TARGET_SAMPLES)/filter/hdcd-encoding-errors.flac
368 fate-filter-hdcd-detect-errors: CMD = md5 -i $(SRC) -af hdcd -f s24le
369 fate-filter-hdcd-detect-errors: CMP = grep
370 fate-filter-hdcd-detect-errors: REF = detectable errors: [1-9]
371
372 # 20bit HDCD
373 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S32LE, PCM_S32LE) += fate-filter-hdcd-20bit
374 fate-filter-hdcd-20bit: SRC = $(TARGET_SAMPLES)/filter/hdcd-fake20bit.flac
375 fate-filter-hdcd-20bit: CMD = md5 -i $(SRC) -af hdcd=bits_per_sample=20 -f s32le
376 fate-filter-hdcd-20bit: CMP = oneline
377 fate-filter-hdcd-20bit: REF = 365ded883a4a92483b15b69babc81390
378
379 # non-hdcd tests of different input formats for code coverage
380 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, WAV, PCM_S16LE, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-mono
381 fate-filter-hdcd-mono: SRC = $(TARGET_SAMPLES)/audiomatch/tones_44100_mono.wav
382 fate-filter-hdcd-mono: CMD = md5 -i $(SRC) -af hdcd -f s24le
383 fate-filter-hdcd-mono: CMP = oneline
384 fate-filter-hdcd-mono: REF = f51b114b20728e6a463a9491c643d166
385 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, WV, WAVPACK, PCM_S32LE, PCM_S32LE) += fate-filter-hdcd-s16p
386 fate-filter-hdcd-s16p: SRC = $(TARGET_SAMPLES)/wavpack/lossless/16bit-partial.wv
387 fate-filter-hdcd-s16p: CMD = md5 -i $(SRC) -af hdcd -f s32le
388 fate-filter-hdcd-s16p: CMP = oneline
389 fate-filter-hdcd-s16p: REF = 4e767f436b891ac59810a8b2b1d7e96b
390 FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, WV, WAVPACK, PCM_S32LE, PCM_S32LE) += fate-filter-hdcd-s32p
391 fate-filter-hdcd-s32p: SRC = $(TARGET_SAMPLES)/wavpack/lossless/24bit-partial.wv
392 fate-filter-hdcd-s32p: CMD = md5 -i $(SRC) -af hdcd -f s32le
393 fate-filter-hdcd-s32p: CMP = oneline
394 fate-filter-hdcd-s32p: REF = 0c5513e83eedaa10ab6fac9ddc173cf5
395
396 FATE_AFILTER-yes += fate-filter-formats
397 fate-filter-formats: libavfilter/tests/formats$(EXESUF)
398 fate-filter-formats: CMD = run libavfilter/tests/formats$(EXESUF)
399
400 FATE_SAMPLES_AVCONV += $(FATE_AFILTER_SAMPLES-yes)
401 FATE_FFMPEG += $(FATE_AFILTER-yes)
402 fate-afilter: $(FATE_AFILTER-yes) $(FATE_AFILTER_SAMPLES-yes)