Thursday, 20 November 2014

How to store audio file in browser local storage


Using below code we can store audio file in browser local storage

1. Create XHR and FileReader objects

var xhr = new XMLHttpRequest(),
fileReader = new FileReader();
xhr.open("GET", url_audio, true);


2. Set responseType to blob

xhr.responseType = "blob";


3. add addEventListener

xhr.addEventListener("load", function () 
{
if (xhr.status === 200)
{
fileReader.onload = function (evt) 
{
// Read out file contents as a Data URL
var result = evt.target.result;
var audioElement = document.createElement('audio');
audioElement.setAttribute('src',result);
audioElement.setAttribute('autoplay', 'autoplay');
try 
{
localStorage.setItem(key, result);
}
catch (e) 
{
console.log("Storage failed: " + e);
}
};
// Load blob as Data URL
fileReader.readAsDataURL(xhr.response);
}
}, false);
xhr.send();

No comments:

Post a Comment