Dźwięk HTML5: Jak szybko zatrzymać i ponownie uruchomić klip?

Zobacz tytuł. Próbuję odtworzyć plik audio 4 razy z rzędu, co 300 milisekund. Jednak klip jest dłuższy niż 300 ms, więc ignoruje nowe żądania odtwarzania do momentu zakończenia odtwarzania. Szukam jakiegoś sposobu na zatrzymanie i ponowne uruchomienie klipu co 300 ms.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
    <meta http-equiv="content-type" content="text/html;charset=UTF-8" />
</head>
<body>
    <audio id="note0440"><source src="0440.a4.wav" type="audio/wav"></audio>
    <script type="text/javascript">
        function playNote (loop) {
            var n = document.getElementById("note0440")
            if (loop > 4)
                return
            n.volume = 0.05
            // n.currentTime = 0
            n.pause()
            n.play()
            setTimeout("playNote("+(loop + 1)+")", 300)
        }
    </script>
    <div style="margin:50px"><button onclick="playNote(1)">Play Note</button></div>
</body>
</html>

To nie działa. Nie zatrzymuje się i nie uruchamia ponownie, nawet jeślin.currentTime = 0 jest używany.

Oto plik WAV, jeśli potrzebujesz go do testowania:http://popstrip.com/misc/0440.a4.wav

questionAnswers(3)

yourAnswerToTheQuestion