Spaces:
Runtime error
Runtime error
| #!/usr/bin/env python3 | |
| # Copyright 2021 Tomoki Hayashi | |
| # MIT License (https://opensource.org/licenses/MIT) | |
| """Test code for Mel-spectrogram loss modules.""" | |
| import numpy as np | |
| import torch | |
| from parallel_wavegan.bin.preprocess import logmelfilterbank | |
| from parallel_wavegan.losses import MelSpectrogram | |
| def test_mel_spectrogram_is_equal(): | |
| x = np.random.randn(22050) | |
| x = np.abs(x) / np.max(np.abs(x)) | |
| mel_npy = logmelfilterbank( | |
| x, | |
| 22050, | |
| fft_size=1024, | |
| hop_size=256, | |
| win_length=None, | |
| window="hann", | |
| num_mels=80, | |
| fmin=80, | |
| fmax=7600, | |
| eps=1e-10, | |
| ) | |
| mel_spectrogram = MelSpectrogram( | |
| fs=22050, | |
| fft_size=1024, | |
| hop_size=256, | |
| win_length=None, | |
| window="hann", | |
| num_mels=80, | |
| fmin=80, | |
| fmax=7600, | |
| eps=1e-10, | |
| ).to(dtype=torch.double) | |
| mel_torch = mel_spectrogram(torch.from_numpy(x).unsqueeze(0)) | |
| np.testing.assert_array_almost_equal( | |
| mel_npy.transpose(1, 0).astype(np.float32), | |
| mel_torch[0].numpy().astype(np.float32), | |
| ) | |