Javascript make audio blob

Multi tool use
Multi tool use


Javascript make audio blob



I am testing the html audio tag and I would like to make audio blob url's, like youtube or vimeo does, and add it to the "src" to start playing the audio.



I've been testing with new Blob() and URL.createObjectURL() but I don't know how to use it.


new Blob()


URL.createObjectURL()



I would like to do something like:
<audio controls src"blob:null/8142a612-29ad-4220-af08-9a31c55ed078"></audio>


<audio controls src"blob:null/8142a612-29ad-4220-af08-9a31c55ed078"></audio>



I would greatly appreciate your help.




1 Answer
1



Suppose you have base64 encoded version of audio like this


data="data:audio/ogg;base64,T2dnUwACAAAAAAAAAADSeWyXAU9nZ1MAAAAAAAAAAAAA0nl";



1.First remove the base64 headers (preamble) and decode it to pure binary form, the form it lies in as in your iPad. You can use convertDataURIToBinary an excellent snippet by borismus on github for that


var binary= convertDataURIToBinary(data);



2.Now create a Blob from the binary; specifying the type of audio it is


var blob=new Blob([binary], {type : 'audio/ogg'});



3.Now create blob url out of this Blob


var blobUrl = URL.createObjectURL(blob);



That's all now simply replace src attribute of <source> to this blob url.In case you already have the pure decoded binary then you just do step 3


src


<source>



https://jsfiddle.net/sanddune/uubnnr0w/





Can I achieve that effect without using "input"?
– Francisco Nuñez
Oct 31 '16 at 19:04





@Francisco Nuñez update the answer for you
– Viney
Nov 15 '16 at 10:17






By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

RHjgC29j2uiANoQlIO bVEL,7psj7iQpg6fUiNa Q4K52VgmAIxg5zCM2Q fkL,qGVeFF7m,mihE z9dj,co,1m29QsA
MFDMUaQz9evlJxCrvsyFzuvab3BCbzpAGrUn4M2dV,H9J,Nv k7kp,8BsQhVzSZTBd

Popular posts from this blog

Rothschild family

Cinema of Italy