debug: 修复语音克隆输出错误的bug
This commit is contained in:
1 parent
3b9cc44e4c
commit
e2f3decfae
3 files changed
+37
-19
No files matched your search
@@ -163,19 +163,17 @@ async def get_hardware_handler(hardware_id, db):
|
||||
async def upload_audio_handler(user_id, audio, db):
|
||||
try:
|
||||
audio_data = await audio.read()
|
||||
raw_data = AudioSegment.from_file(io.BytesIO(audio_data), format="mp3").raw_data
|
||||
numpy_data = np.frombuffer(raw_data, dtype=np.int32)
|
||||
emb_data = tts.audio2emb(numpy_data,rate=44100,vad=True).tobytes()
|
||||
new_audio = Audio(user_id=user_id, audio_data=audio_data,emb_data=emb_data) #创建音频
|
||||
db.flush()
|
||||
existing_user = db.query(User).filter(User.id == user_id).first()
|
||||
existing_user.selected_audio_id = new_audio.id #绑定音频到用户
|
||||
emb_data = tts.audio2emb(np.frombuffer(AudioSegment.from_file(io.BytesIO(audio_data), format="mp3").raw_data, dtype=np.int32),rate=44100,vad=True)
|
||||
out = io.BytesIO()
|
||||
np.save(out, emb_data)
|
||||
out.seek(0)
|
||||
emb_binary = out.read()
|
||||
new_audio = Audio(user_id=user_id, audio_data=audio_data,emb_data=emb_binary) #创建音频
|
||||
db.add(new_audio)
|
||||
db.commit()
|
||||
db.refresh(new_audio)
|
||||
except Exception as e:
|
||||
db.rollback()
|
||||
print(str(e))
|
||||
raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e))
|
||||
audio_upload_data = AudioUploadData(audio_id=new_audio.id, uploadedAt=datetime.now().isoformat())
|
||||
return AudioUploadResponse(status="success", message="用户上传音频成功", data=audio_upload_data)
|
||||
|
||||
Reference in new issue
Block a user