Skip to content

最新的代码,长文本生成的语言完全不正常,短文本可以正常生成 #1196

Open
@hjj-lmx

Description

@hjj-lmx

长文本生成的语言完全不正常,
下面是我的文本
"在前不久临空市票选的十大黄金单身汉活动中,秦彻以极高的票数成功入榜。虽然他是N109区的老大,但真容几乎没什么人见过。也不知道是哪个胆大包天的人把偷拍的照片放到了网上,引起了一阵热议。原来这就是暗点的首领秦彻!好帅好帅!虽然知道他危险,但长得实在迷人!”底下的留言建起了高楼,小迷妹们一口一个秦彻赛高更是直接把秦彻的排名顶到了第一位。但更不怕死的大有人在,比如你。在深入群众了解了大家对秦彻开通私人号的高度渴望后,你瞅了眼身边的男人。秦彻秦彻,你开通个私人社交账号呗,发发动态什么的。正在忙工作的男人难得的架起了金丝框眼镜,有点斯文败类的味道。"

clone_model = CosyVoice2(os.path.join("checkpoints", "CosyVoice2-0.5B"), True, True, True, False)
parsed_text = pause(tts_text)
audio_data: torch.Tensor = None
for i, t in enumerate(parsed_text):
text = t.get("text").strip()
if not text.strip():
# 生成静音语音
# 定义停顿参数(示例使用0.5秒停顿)
pause_duration = t.get("pause") # 单位:秒
sample_rate = sample_rate # 获取采样率
pause_samples = int(pause_duration * sample_rate) # 计算静音采样点数
pause_tensor = torch.zeros(1, pause_samples) # 创建静音片段(单声道)
if audio_data is not None:
audio_data = torch.concat([audio_data, pause_tensor], dim=1)
else:
audio_data = pause_tensor
else:
for chunk in clone_model.inference_zero_shot(text, prompt_text, prompt_speech_16k, "",
False, speed, False):
chunk_speech = chunk['tts_speech']
if audio_data is not None:
audio_data = torch.concat([audio_data, chunk_speech], dim=1)
else:
audio_data = chunk_speech
torchaudio.save(audio_data_path, audio_data, sample_rate)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions