feat: 调用百炼服务合成语音
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
import sys
|
||||
import threading
|
||||
from io import BufferedWriter
|
||||
|
||||
from fastapi import FastAPI, Query
|
||||
from starlette.websockets import WebSocket
|
||||
|
||||
import dashscope
|
||||
from dashscope.audio.tts import SpeechSynthesizer
|
||||
|
||||
from app.config.env import env
|
||||
|
||||
dashscope.api_key = env.llm_key_bailian
|
||||
|
||||
|
||||
def add_websocket_voice_generate_route(app: FastAPI):
|
||||
@app.post("/ws_voice_generate")
|
||||
async def ws_voice_generate():
|
||||
|
||||
# dashscope.api_key = "apiKey"
|
||||
result = SpeechSynthesizer.call(model='sambert-zhichu-v1',
|
||||
text='今天天气怎么样',
|
||||
sample_rate=16000,
|
||||
format='mp3')
|
||||
if result.get_audio_data() is not None:
|
||||
with open('output.mp3', 'wb') as f:
|
||||
f.write(result.get_audio_data())
|
||||
print('SUCCESS: get audio data: %dbytes in output.mp3' %
|
||||
(sys.getsizeof(result.get_audio_data())))
|
||||
else:
|
||||
print('ERROR: response is %s' % (result.get_response()))
|
||||
@@ -19,6 +19,7 @@ from app.controller.add_reimburse_route import add_reimburse_route
|
||||
from app.controller.add_sqlmodel_route import add_sqlmodel_route
|
||||
from app.controller.add_user_route import add_user_route
|
||||
from app.controller.add_websocket_route import add_websocket_route
|
||||
from app.controller.add_websocket_voice_generate_route import add_websocket_voice_generate_route
|
||||
from app.controller.add_websocket_voice_recognise_route import add_websocket_voice_recognise_route
|
||||
from app.controller.custom_chat_playground import add_custom_chat_playground_route
|
||||
from app.controller.custom_stream_api import add_custom_stream_api_route
|
||||
@@ -82,6 +83,7 @@ add_redis_route(app)
|
||||
add_general_route(app)
|
||||
add_websocket_route(app)
|
||||
add_websocket_voice_recognise_route(app)
|
||||
add_websocket_voice_generate_route(app)
|
||||
|
||||
|
||||
@app.get("/get_env")
|
||||
|
||||
Reference in New Issue
Block a user