简单来说,我想在Firefox中播放一个blob MP3文件.
我可以访问blob本身:blob(用mime类型音频/ mpeg3切片)及其URL:blobURL = window.URL.createObjectURL(blob).
我试过:
> HTML5音频播放器:
<audio controls="controls"> <source src="[blobURL]" type="audio/mp3"> </audio>
但是我在Firebug中发出警告,告诉我Firefox无法读取audio / mpeg3类型的文件.
>多个音频播放器库(SoundManager,JPlayer等),但没有一个似乎允许blob URL作为输入.
解决方法
这似乎适用于我,虽然我使用音频/ mpeg作为MIME类型:
$scope.player = new window.Audio(); var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { $scope.player.src = window.URL.createObjectURL(this.response); $scope.player.play(); } }; xhr.open('GET',url); xhr.responseType = 'blob'; xhr.send();