2020-05-30 16:09:25 +00:00
|
|
|
import os
|
|
|
|
import torch
|
|
|
|
|
|
|
|
import soundfile as sf
|
|
|
|
from librosa.core import load
|
|
|
|
|
2020-07-16 13:05:36 +00:00
|
|
|
from tests import get_tests_path, get_tests_input_path
|
2020-09-09 10:27:23 +00:00
|
|
|
from TTS.vocoder.layers.pqmf import PQMF
|
2020-05-30 16:09:25 +00:00
|
|
|
|
|
|
|
|
|
|
|
TESTS_PATH = get_tests_path()
|
|
|
|
WAV_FILE = os.path.join(get_tests_input_path(), "example_1.wav")
|
|
|
|
|
|
|
|
|
|
|
|
def test_pqmf():
|
|
|
|
w, sr = load(WAV_FILE)
|
|
|
|
|
|
|
|
layer = PQMF(N=4, taps=62, cutoff=0.15, beta=9.0)
|
|
|
|
w, sr = load(WAV_FILE)
|
|
|
|
w2 = torch.from_numpy(w[None, None, :])
|
|
|
|
b2 = layer.analysis(w2)
|
|
|
|
w2_ = layer.synthesis(b2)
|
|
|
|
|
|
|
|
print(w2_.max())
|
|
|
|
print(w2_.min())
|
|
|
|
print(w2_.mean())
|
|
|
|
sf.write('pqmf_output.wav', w2_.flatten().detach(), sr)
|