mirror of
https://github.com/wassname/TTS.git
synced 2026-09-11 12:00:24 +08:00
bug fix for synthesize.py for multi-speaker model case and no wavernn
This commit is contained in:
+16
-3
@@ -9,8 +9,6 @@ from utils.generic_utils import load_config, setup_model
|
||||
from utils.text.symbols import symbols, phonemes
|
||||
from utils.audio import AudioProcessor
|
||||
|
||||
from WaveRNN.models.wavernn import Model as VocoderModel
|
||||
|
||||
|
||||
def tts(model,
|
||||
vocoder_model,
|
||||
@@ -77,10 +75,18 @@ if __name__ == "__main__":
|
||||
type=bool,
|
||||
help="If True, vocoder model uses faster batch processing.",
|
||||
default=True)
|
||||
parser.add_argument(
|
||||
'--speakers_json',
|
||||
type=str,
|
||||
help="JSON file for multi-speaker model.",
|
||||
default=""
|
||||
)
|
||||
args = parser.parse_args()
|
||||
|
||||
if args.vocoder_path != "":
|
||||
assert args.use_cuda, " [!] Enable cuda for vocoder."
|
||||
from WaveRNN.models.wavernn import Model as VocoderModel
|
||||
|
||||
# load the config
|
||||
C = load_config(args.config_path)
|
||||
C.forward_attn_mask = True
|
||||
@@ -88,9 +94,16 @@ if __name__ == "__main__":
|
||||
# load the audio processor
|
||||
ap = AudioProcessor(**C.audio)
|
||||
|
||||
# load speakers
|
||||
if args.speakers_json != '':
|
||||
speakers = json.load(open(args.speakers_json, 'r'))
|
||||
num_speakers = len(speakers)
|
||||
else:
|
||||
num_speakers = 0
|
||||
|
||||
# load the model
|
||||
num_chars = len(phonemes) if C.use_phonemes else len(symbols)
|
||||
model = setup_model(num_chars, C)
|
||||
model = setup_model(num_chars, num_speakers, C)
|
||||
cp = torch.load(args.model_path)
|
||||
model.load_state_dict(cp['model'])
|
||||
model.eval()
|
||||
|
||||
Reference in New Issue
Block a user