liumaolin commited on
Commit ·
4fabb26
1
Parent(s): f973122
Update imports to use `GPT_SoVITS` module paths and replace `torchaudio` with `librosa` for loading reference audio
Browse files- GPT_SoVITS/TTS_infer_pack/TTS.py +15 -10
GPT_SoVITS/TTS_infer_pack/TTS.py
CHANGED
|
@@ -21,20 +21,20 @@ import numpy as np
|
|
| 21 |
import torch
|
| 22 |
import torch.nn.functional as F
|
| 23 |
import yaml
|
| 24 |
-
from AR.models.t2s_lightning_module import Text2SemanticLightningModule
|
| 25 |
-
from BigVGAN.bigvgan import BigVGAN
|
| 26 |
-
from feature_extractor.cnhubert import CNHubert
|
| 27 |
-
from module.mel_processing import mel_spectrogram_torch, spectrogram_torch
|
| 28 |
-
from module.models import SynthesizerTrn, SynthesizerTrnV3, Generator
|
| 29 |
from peft import LoraConfig, get_peft_model
|
| 30 |
-
from process_ckpt import get_sovits_version_from_path_fast, load_sovits_new
|
| 31 |
from transformers import AutoModelForMaskedLM, AutoTokenizer
|
| 32 |
|
| 33 |
from tools.audio_sr import AP_BWE
|
| 34 |
from tools.i18n.i18n import I18nAuto, scan_language_list
|
| 35 |
-
from TTS_infer_pack.text_segmentation_method import splits
|
| 36 |
-
from TTS_infer_pack.TextPreprocessor import TextPreprocessor
|
| 37 |
-
from sv import SV
|
| 38 |
|
| 39 |
resample_transform_dict = {}
|
| 40 |
|
|
@@ -770,7 +770,12 @@ class TTS:
|
|
| 770 |
self.prompt_cache["refer_spec"][0] = spec_audio
|
| 771 |
|
| 772 |
def _get_ref_spec(self, ref_audio_path):
|
| 773 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 774 |
raw_audio = raw_audio.to(self.configs.device).float()
|
| 775 |
self.prompt_cache["raw_audio"] = raw_audio
|
| 776 |
self.prompt_cache["raw_sr"] = raw_sr
|
|
|
|
| 21 |
import torch
|
| 22 |
import torch.nn.functional as F
|
| 23 |
import yaml
|
| 24 |
+
from GPT_SoVITS.AR.models.t2s_lightning_module import Text2SemanticLightningModule
|
| 25 |
+
from GPT_SoVITS.BigVGAN.bigvgan import BigVGAN
|
| 26 |
+
from GPT_SoVITS.feature_extractor.cnhubert import CNHubert
|
| 27 |
+
from GPT_SoVITS.module.mel_processing import mel_spectrogram_torch, spectrogram_torch
|
| 28 |
+
from GPT_SoVITS.module.models import SynthesizerTrn, SynthesizerTrnV3, Generator
|
| 29 |
from peft import LoraConfig, get_peft_model
|
| 30 |
+
from GPT_SoVITS.process_ckpt import get_sovits_version_from_path_fast, load_sovits_new
|
| 31 |
from transformers import AutoModelForMaskedLM, AutoTokenizer
|
| 32 |
|
| 33 |
from tools.audio_sr import AP_BWE
|
| 34 |
from tools.i18n.i18n import I18nAuto, scan_language_list
|
| 35 |
+
from GPT_SoVITS.TTS_infer_pack.text_segmentation_method import splits
|
| 36 |
+
from GPT_SoVITS.TTS_infer_pack.TextPreprocessor import TextPreprocessor
|
| 37 |
+
from GPT_SoVITS.sv import SV
|
| 38 |
|
| 39 |
resample_transform_dict = {}
|
| 40 |
|
|
|
|
| 770 |
self.prompt_cache["refer_spec"][0] = spec_audio
|
| 771 |
|
| 772 |
def _get_ref_spec(self, ref_audio_path):
|
| 773 |
+
raw_audio_np, raw_sr = librosa.load(ref_audio_path, sr=None, mono=False)
|
| 774 |
+
# Convert numpy array to torch tensor and ensure shape matches torchaudio output
|
| 775 |
+
if raw_audio_np.ndim == 1:
|
| 776 |
+
raw_audio = torch.from_numpy(raw_audio_np).unsqueeze(0)
|
| 777 |
+
else:
|
| 778 |
+
raw_audio = torch.from_numpy(raw_audio_np)
|
| 779 |
raw_audio = raw_audio.to(self.configs.device).float()
|
| 780 |
self.prompt_cache["raw_audio"] = raw_audio
|
| 781 |
self.prompt_cache["raw_sr"] = raw_sr
|