2noise / ChatTTS

A generative speech model for daily dialogue.

Home Page:https://2noise.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

流模式下定义API返回音频无法播放,麻烦问下是什么原因

zhangxlgithub opened this issue · comments

@app.route('/streamchat', methods=['GET'])
def streamchat_api():
    texts = "会议强调,开展知识产权综合管理改革试点,要紧扣创新发展需求,发挥专利、商标版权等知识产权的引领作用,打通知识产权、创造、运用、保护管理服务全链条,建立高效的知识产权综合管理体制,构建便民利民的知识产权公共服务体系,探索支撑创新发展的知识产权运行机制,推动形成权界清晰、分工合理、责权一致、运转高效的体制机制。"

    rand_spk = chat.sample_random_speaker()
    params_infer_code = ChatTTS.Chat.InferCodeParams(
        spk_emb=rand_spk,
        temperature=0.3,
        top_P=0.7,
        top_K=20,
    )

    streamchat = chat.infer(
        texts,
        skip_refine_text=True,
        stream=True,
        params_infer_code=params_infer_code,
    )

    def generate_stream():
        for i in ChatStreamer().generate(streamchat, output_format="PCM16_byte"):
            yield i

    return Response(generate_stream(), content_type='audio/wav')


@app.route('/local_audio', methods=['GET'])
def local_audio():
    def generate_local_audio_stream():
        with open('/data/ChatTTS/voice/ttt.wav', 'rb') as f:
            data = f.read(1024)
            while data:
                yield data
                data = f.read(1024)

    return Response(generate_local_audio_stream(), mimetype='audio/wav')

定义的流模式返回的api,streamchat接口为流模式生成返回 local_audio接口为读取本地音频文件返回,流模式生成的前端不能播放,但是读取本地音频文件的接口可以在前端页面播放,麻烦问下这是什么原因呢???

流式接口本身已经过测试没有问题,请仔细检查自己代码的写法。