python+Whisper+edge-tts搭建免费离线运行语音识别与文字转语音合成web api

python+Whisper+edge-tts库搭建免费可离线运行的语音识别与文字转语音合成http api服务


看了一下百度、讯飞、阿里等云服务器,语音识别和合成都是收费的,经济下行,还是自己搭建一个免费的语音识别与语音合成http api接口服务,配合阿里云的99元一年的云服务器不要太香了。

我们使用openai发布的 Whisper 进行语音识别,并结合微软的 edge-tts 实现文字转语音合成。这需要以下几个步骤:

1. 环境配置

安装必要的 Python 库,包括 Whisperedge-tts,以及 Flask 作为 HTTP API 框架。

pip install flask openai-whisper edge-tts

2. Whisper 语音识别

Whisper 是 OpenAI 的一个语音识别模型,支持多语言的语音转文字功能。我们可以利用它的离线模型进行识别。

3. Edge-TTS 文字转语音合成

edge-tts 使用了微软的 Edge 浏览器的文字转语音技术,它支持多种语音和语言选择。该库也可以离线运行,适合本地化部署。

4. 创建 HTTP API 服务

以下是示例代码,将语音文件(如 .wav 文件)上传后调用 Whisper 进行语音识别,并使用 edge-tts 进行文字转语音合成,最终返回合成后的音频文件。

from flask import Flask, request, jsonify, send_file
import whisper
import edge_tts
import asyncio
import os

app = Flask(__name__)

# 加载 Whisper 模型
model = whisper.load_model("base")  # 使用 base 模型,你可以根据需求换成其他模型

# Whisper 语音识别功能
def transcribe_audio(audio_path):
    result ...

点击查看剩余70%

{{collectdata}}

网友评论0