window.AudioContext播放音乐

let sound,audioContext ;
class Sound{
static start(buffer){
        if (!audioContext) {
            window.AudioContext = window.AudioContext || window.webkitAudioContext || window.mozAudioContext || window.msAudioContext || window.oAudioContext;
            audioContext = new window.AudioContext();
            sound.destination = audioContext.destination;
            sound.src = audioContext.createBufferSource();
            if (audioContext.createGain) {
                sound._gain = audioContext.createGain();
            } else {
                sound._gain = audioContext.createGainNode();
            }
            //设置音量
            sound._gain.gain.value = 0.8;
            sound._gain.connect(sound.destination);
        }
        //buffer就是用ajax get方式获取的音乐文件资源
        sound.src.buffer = buffer;
        sound.src.connect(sound._gain);
        //播放
        if (sound.src.start) {
            sound.src.start(0, 0, buffer.duration - 0 - 1.192e-7);
        } else {
            sound.src.noteGrainOn(0, 0, buffer.duration - 0 - 1.192e-7);
        }
        //是否循环
        sound.src.loop = true;
        console.log(sound);
    }
}

好啦,纯js版音乐播放完成

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,293评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,204评论 4 61
  • 人这一生很多路注定要自己一个人走,没有谁是谁的依靠,我若不坚强,没有人能替我坚强。 一 小的时候,父母特别的疼爱我...
    又见艳阳天yan阅读 3,610评论 0 3
  • 你在哪一个瞬间对他心动? 我看到一个评论说,你偷偷看他发现他也在看你的时候。 心动确实就是这么简单。勾一个笑容,眨...
    摇晃阅读 2,144评论 0 0
  • 聊得来。谈得来。吃得来。玩得来。出行是个太需要共性的事情了。
    黑骑士_路西法_丸子阅读 968评论 0 0