Я пытаюсь отправить аудиоблок в серверную службу после преобразования его в файл WAV.Служба принимает только файл .wav в качестве данных формы.
Это часть моего кода, в которой я пытаюсь выполнить преобразование из bob в файл .wav.
// Create the audio blob
const audioBlob = new Blob(audioChunks, { 'type' : 'audio/wav; codecs=0' });
//Convert blob to a file
var convertedfile = new File([audioBlob], "voiceclip.wav");
//Send the converted file to the service
sendAudio(convertedfile);
Это мой сервисный звонок.
function sendBlob(wavFile) {
var serviceRequest= new XMLHttpRequest();
var formdata = new FormData();
formdata.append("file", wavFile);
serviceRequest.open("POST", "https://someurl/api/");
serviceRequest.setRequestHeader('API_SECRET', 'eyJhbGK7P6tjaUNko9Cppya_dycgsalptJ-_en8');
serviceRequest.send(formdata);
}
Ответ, который я получаю от службы, следующий:
{"error": "expected string or bytes-like object"}
Я не могу понять, что я делаю здесь неправильно.Должен ли я преобразовать WAV-файл, который я сгенерировал из аудио-двоичного объекта, в двоичный массив или какой-либо другой формат перед отправкой?Служба работает нормально, когда ему отправляется файл .wav.Этот вопрос должен быть в конверсии.