В: Я ПОЛУЧИЛ AUDIOBUFFERSOURCENODE, ЧТО Я ПРОСТО ИГРАЛ НАЗАД С NOTEON (), И ХОЧУ ИГРАТЬ В НОВОМУ, НО НОЧЬ () НИЧЕГО НЕ ДЕЛАЕТ! ПОМОГИТЕ!
A: Как только исходный узел закончил воспроизведение, он больше не сможет воспроизводить. Чтобы снова воспроизвести базовый буфер, вы должны создать новый AudioBufferSourceNode и вызвать noteOn ().
Хотя воссоздание исходного узла может показаться неэффективным, исходные узлы сильно оптимизированы для этого шаблона. Кроме того, если вы держите дескриптор AudioBuffer, вам не нужно делать еще один запрос к ресурсу, чтобы снова воспроизвести тот же звук. Если вам нужно повторить этот паттерн, инкапсулируйте воспроизведение с помощью простой вспомогательной функции, например playSound (buffer).
Q: КОГДА ИГРАТЬ НАЗАД ЗВУКА, ПОЧЕМУ ВАМ НУЖНО СДЕЛАТЬ НОВЫЙ УЧАСТОК ИСТОЧНИКА КАЖДЫЙ РАЗ?
A: Идея этой архитектуры состоит в том, чтобы отделить аудио актив от состояния воспроизведения. По аналогии с проигрывателем, буферы аналогичны записям и источникам для игровых голов. Поскольку во многих приложениях одновременно используется несколько версий одного и того же буфера, этот шаблон очень важен.
Источник:
http://updates.html5rocks.com/2012/01/Web-Audio-FAQ