Я играл с несколькими различными библиотеками API веб-аудио, и у меня были смешанные результаты. Мой фаворит на данный момент — Timbre.js. Я обычно получаю «жужжание» из динамика на iOS (даже при использовании AudioContextMonkeyPatch). Иногда этого не происходит. Например, перезагрузите телефон, запустите приложение, нажмите кнопку «Перейти», и звук будет таким же (на мой слух), как и в моем настольном браузере. Внесите изменения (например, измените темп) и жужжит, жужжит, жужжит. Однако, как правило, аудиовыход представляет собой гудение, гудение, гудение.
Пример кода:
var freqs = T(function(count) {
return [220, 440, 660, 880][count % 4];
});
var osc = T("sin", {freq:freqs, mul:0.5});
var env = T("perc", {a:50, r:500}, osc).bang();
var interval = T("param", {value:500}).linTo(50, "30sec");
T("interval", {interval:interval}, freqs, env).start();
env.play();