Verwenden von HTTP-Anfragen zum Aktualisieren der Wave-Audiodatei und der Parameter auf Servern unter FastAPI [geschlossPython

Python-Programme
Anonymous
 Verwenden von HTTP-Anfragen zum Aktualisieren der Wave-Audiodatei und der Parameter auf Servern unter FastAPI [geschloss

Post by Anonymous »

Ich habe ein Problem mit der Verwendung von HTTP-Anfragen zum Aktualisieren der Wave-Audiodatei und der Parameter auf Servern unter FastAPI.
Die Anfragen werden unten angezeigt:

Code: Select all

file_id = {
"audio_id": "f7d0a1d2-095d-432a-bf0f-22c445a433c0"
}

def file_upload():

with wave.open(f"..\\audioFilePath\\{file_id['audio_id']}.wav", "rb") as f:
audio_files = f.readframes(f.getnframes())
params = f.getparams()

response = requests.post(
"http://127.0.0.1:8000/save",
data={
"audio_file":audio_files,
"audio_id":file_id['audio_id'],
"channle":params[0],
"sampwidth":params[1],
"framerate":params[2],
"nframes":params[3],
},
)

print(response)

Ich möchte nur eine Wav-Audiodatei lesen und ihre Parameter abrufen und die Binärdatei und Parameter an meinen Server senden, um einige Operationen daran durchzuführen.
der Beitrag meines Servers unter FastAPI:

Code: Select all

@app.post("/save")
async def file_save(
audio_file: bytes = Body(..., title="wav_binary_file"),
audio_id: str = Body(..., title="uuid"),
channle: int = Body(..., title="channle"),
sampwidth: int = Body(..., title="sampwidth"),
framerate: int = Body(..., title="framerate"),
nframes: int = Body(..., title="nframes"),
):
sound_id.Audio_Id = audio_id

print(audio_file)

# write .wav file
with wave.open(f"..\\temp_audio\\{audio_id}.wav", mode="wb") as w:
w.setnchannels(channle)
w.setsampwidth(sampwidth)
w.setframerate(framerate)
w.setnframes(nframes)
w.writeframes(audio_file)
Das Problem ist, dass ich, wenn ich die Binärdatei und die Parameter an meinen Server senden möchte, die Antwort [422] bekomme. Ich versuche, die WAV-Binärdatei in einen String umzuwandeln. Es kann erfolgreich sein, die Datei an den Server zu senden, aber ich habe Probleme beim Umwandeln des Strings in die ursprüngliche Binärdatei und beim Speichern der Datei im WAV-Format. Ich habe die WAV-Datei nach der Transformation abgespielt und ihr Inhalt ist verrauscht.
Könnten Sie mir einen Rat geben?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post