播放(短)的声音非常频繁? [英] Play a (short) sound extremely frequently?

查看:237
本文介绍了播放(短)的声音非常频繁?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想用的setInterval 以创建一个节拍器。我希望能够达到高BPMS像300 BPM。即使该文件很短,足以播放多次,因为它的需要,它会打嗝的非常的容易。此外,许多浏览器有短的音频文件的问题 - 支持MP3和Firefox为WAV Safari浏览器。
我尝试使用多个文件,你看到下面,都无济于事。

 节拍器=的setInterval(函数(){
        如果(!tick.played){
            tick.play();
        }其他{
            tick2.play();
        }
    },200); // = 300 BMP


  1. 如何播放一个简短的音频文件很频繁?

  2. 什么是最好的文件扩展名这样做呢?


解决方案

使用网络音频API来进行精确定时,JavaScript的setTimeout的最多可以有10ms的偏移量。有使用节拍器演示 audioContext.currentTime 在它的核心。请参阅音频调度信息这文章。看到这个 Plunker 的网络音频节拍器演示。

I want to create a metronome using setInterval. I want to be able to reach high bpms like 300 bpm. Even if the file is short enough to be played as many times as it's needed, it will hiccup very easily. Furthermore, many browsers have issues with short audio files - Safari for MP3 and Firefox for WAV. I tried using multiple files as you see below, to no avail.

    metronome = setInterval(function () {
        if (!tick.played) {
            tick.play();
        } else {
            tick2.play();
        }
    }, 200); // = 300 bmp

  1. How can I play a short audio file very frequently?
  2. What's the best file extension to do so?

解决方案

Use Web Audio API for accurate timing, JavaScript's setTimeout can have up to a 10ms offset. There's a metronome demo using audioContext.currentTime at it's core. See this article for details on audio scheduling. See this Plunker for Web Audio Metronome demo.

这篇关于播放(短)的声音非常频繁?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆