Воспроизведение MP3 файла, сохраненного как blob
Проще говоря, я хотел бы воспроизвести файл blob MP3 в Firefox.
У меня есть доступ к самому блобу: blob
(нарезанный типом mime audio/mpeg3
) и его URL: blobURL = window.URL.createObjectURL(blob)
.
Я пробовал с:
-
аудиоплеер HTML5:
<audio controls="controls">
<source src="[blobURL]" type="audio/mp3">
</audio>
но я получаю предупреждение в Firebug, говорящее мне, что Firefox не может читать файлы типа audio/mpeg3
.
-
несколько библиотек аудиоплееров (SoundManager, JPlayer и т.д.)., но ни один из них не позволяет использовать URL-адреса blob в качестве входных данных.
Я делаю это неправильно? Или кто-нибудь знает обходное решение или библиотеку, которая может воспроизводить файлы MP3 из blobs?
Ответы
Ответ 1
Мне кажется, что это работает отлично, хотя я использую audio/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();