2noise / ChatTTS

A generative speech model for daily dialogue.
https://2noise.com
Other
27.21k stars 2.96k forks source link

[laugh]和[uv_break]被识别为invalid,并且不能转成语音 #201

Open hch001 opened 1 month ago

hch001 commented 1 month ago

文本是这样的: python inputs_cn = """ chat T T S 是一款强大的对话式文本转语音模型。它有中英混读和多说话人的能力。 chat T T S 不仅能够生成自然流畅的语音,还能控制[laugh]笑声啊[laugh], 停顿啊[uv_break]语气词啊等副语言现象[uv_break]。这个韵律超越了许多开源模型[uv_break]。 请注意,chat T T S 的使用应遵守法律和伦理准则,避免滥用的安全风险。[uv_break]' """.replace('\n', '')

image

报错如下:

image

注释了 utils/infer_utils.py 中下面第93和94代码,仍然无效。

image
jianchang512 commented 1 month ago

注释的不正确,这里不需要注释,是 123行的 halfwidth_2_fullwidth_map 变量中的

metaimagine commented 1 month ago

我的[laugh]也无法识别,[uv_break]也是

Lowpower commented 1 month ago

我的[laugh] [uv_break] 都无法识别

achaosss commented 1 month ago

我的[laugh] [uv_break] 都无法识别

yanmingcao commented 1 month ago

Same here. 我的环境是MacBook Pro MacOS 14.5, Apple M2 chip, 16GB memory.

input = """
chat T T S 是一款强大的对话式文本转语音模型。它有中英混读和多说话人的能力。
chat T T S 不仅能够生成自然流畅的语音,还能控制[laugh]笑声啊[laugh],
停顿啊[uv_break]语气词啊等副语言现象[uv_break]。这个韵律超越了许多开源模型[uv_break]。
请注意,chat T T S 的使用应遵守法律和伦理准则,避免滥用的安全风险。[uv_break]'
""".replace('\n', '')

params_refine_text = {
  'prompt': '[oral_2][laugh_0][break_4]'
} 
wavs = chat.infer(input, use_decoder=True, params_refine_text=params_refine_text)
torchaudio.save("output1.wav", torch.from_numpy(wavs[0]), 24000)

WARNING:ChatTTS.core:Invalid characters found! : {'‘'}

libukai commented 1 month ago

中文标点符号处理的问题,目前发现的有 ?— … 等,要不自己预处理,要不试试别人处理好的 fork 版本, ChatTTS-Control