2017-10-11 1 views
0

ich eine Pause Anruf zu tun, das mir als wav Antwort von audio/mpeg Inhaltstyp geben würde, so etwas wieWie .wav Antwort in zu Blob-URL konvertieren, so dass ich als Audio-in Client-Seite mit Javascript spielen kann

ID3.O��^H��B��F�����^H��B��F��� 

Ich möchte dieses Audio auf meiner Client-Seite spielen. Daher möchte ich eine Blob-URL dafür erstellen.

$.ajax({ 
     url: 'texttospeechnew2?text='+text+'&voice=en-US_AllisonVoice&download=true&accept=audio%2Fmp3', 
     type: 'GET', 
     //data: params, 
     success: function(data) { 

      responsefile = data; 
      var byteArray = new Uint8Array(responsefile); 
      var blob = new Blob(byteArray, { type: "audio/mpeg3" }); 
      const url = window.URL.createObjectURL(blob); 

      console.log(url); 


     }, 
     error: function(data, err) { 
      console.log("err"); 
     } 

    }); 

Es gibt mir blob url aber nicht richtiges Format nicht in der Lage, das zu spielen.kann jemand helfen. Dank

Antwort

0

Sie haben XMLHttpRequest

xhr = new XMLHttpRequest(); 
xhr.open('GET', 'texttospeechnew2?text='+text+'&voice=en-US_AllisonVoice&download=true&accept=audio%2Fmp3', true); 
xhr.responseType = 'blob'; 

xhr.onload = function(e) { 
    if (this.status == 200) { 
    const url = window.URL.createObjectURL(this.response); 
    console.log(url); 
    } 
}; 

xhr.send(); 
+0

Hallo zu benutzen ... Ich habe versucht Es gab mir url Blob kann aber nicht die Audio spielen ... Giving folgenden Fehler in console.When öffnen ich, dass bloburl fehlgeschlagen Ressource laden: Der Server reagierte mit dem Status 416 (Angeforderter Bereich nicht erfüllbar) – hammy

+0

Hello.It funktionierte jetzt, eigentlich erwähnten wir Antworttyp als Blob, also wieder Bytearray erstellen und das in Blob konvertieren ist nicht erforderlich – hammy

+0

Auch dies ist nicht erforderlich var blob = neuer Blob (this.response, {t ype: "audio/mpeg3"}); – hammy

Verwandte Themen