我将mp3文件的内容保存为变量,(这不是实用的,仅适用于我的一个小项目),我希望将此变量的内容作为音频文件播放。这将是一个简单的任务,像节点,但不幸的是,我必须完全这样做客户端。
请注意我不能将字符串的内容保存为mp3文件,我需要能够从变量中播放它。
我已经研究过了,但是从我发现的情况来看,似乎无法做到这一点。如果您有任何解决方案,我将不胜感激。
答案 0 :(得分:2)
这不是很实用,因为您将在JS引擎中获得非常高的内存占用,并且可能会导致不必要的垃圾回收...但是有可能是base64对MP3进行编码,然后将其输入src
标记的<audio>
属性。
因为在答案中提供base64编码的MP3是不现实的,我会提供一个小提琴:https://jsfiddle.net/4t6bg95z/1/
但代码的要点可能是:
var audio = document.getElementById('audio');
audio.src = "data:audio/mp3;base64,..."; //This is a base64 encoded string of an MP3 file
window.beep = function() {
audio.play();
}
显然,更好的做法是提供音频源的URL,因为这是音频API的预期用途。