def test_bandreject(self): central_freq = 1000 q = 0.707 sample_rate = 8000 data, path = self.get_whitenoise(sample_rate) result = F.bandreject_biquad(data, sample_rate, central_freq, q) self.assert_sox_effect(result, path, ['bandreject', central_freq, f'{q}q'])
def test_bandreject(self): """ Test biquad bandreject filter, compare to SoX implementation """ central_freq = 1000 q = 0.707 noise_filepath = common_utils.get_asset_path('whitenoise.wav') E = torchaudio.sox_effects.SoxEffectsChain() E.set_input_file(noise_filepath) E.append_effect_to_chain("bandreject", [central_freq, str(q) + 'q']) sox_output_waveform, sr = E.sox_build_flow_effects() waveform, sample_rate = torchaudio.load(noise_filepath, normalization=True) output_waveform = F.bandreject_biquad(waveform, sample_rate, central_freq, q) self.assertEqual(output_waveform, sox_output_waveform, atol=1e-4, rtol=1e-5)
def test_bandreject(self): """ Test biquad bandreject filter, compare to SoX implementation """ CENTRAL_FREQ = 1000 Q = 0.707 noise_filepath = os.path.join(self.test_dirpath, "assets", "whitenoise.wav") E = torchaudio.sox_effects.SoxEffectsChain() E.set_input_file(noise_filepath) E.append_effect_to_chain("bandreject", [CENTRAL_FREQ, str(Q) + 'q']) sox_output_waveform, sr = E.sox_build_flow_effects() waveform, sample_rate = torchaudio.load(noise_filepath, normalization=True) output_waveform = F.bandreject_biquad(waveform, sample_rate, CENTRAL_FREQ, Q) assert torch.allclose(sox_output_waveform, output_waveform, atol=1e-4) _test_torchscript_functional(F.bandreject_biquad, waveform, sample_rate, CENTRAL_FREQ, Q)
def test_bandreject(self): """ Test biquad bandreject filter, compare to SoX implementation """ central_freq = 1000 q = 0.707 E = torchaudio.sox_effects.SoxEffectsChain() E.set_input_file(self.noise_filepath) E.append_effect_to_chain("bandreject", [central_freq, str(q) + 'q']) sox_output_waveform, sr = E.sox_build_flow_effects() output_waveform = F.bandreject_biquad(self.noise_waveform, self.NOISE_SAMPLE_RATE, central_freq, q) self.assertEqual(output_waveform, sox_output_waveform, atol=1e-4, rtol=1e-5)
def func(tensor): sample_rate = 44100 central_freq = 1000. q = 0.707 return F.bandreject_biquad(tensor, sample_rate, central_freq, q)