Простой осциллятор, но без звука с Web audio API на IOS
вот супер простой пример, который я пытаюсь запустить на iphone в chrome. Другие примеры веб-аудио API, как этотhttp://alxgbsn.co.uk/wavepad/ работа, но не моя: (
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<script>
var audioContext, osc
audioContext = new (window.AudioContext || window.webkitAudioContext);
osc = audioContext.createOscillator()
osc.connect(audioContext.destination)
if (osc.noteOn) osc.start = osc.noteOn
osc.start(0)
osc.frequency.value = 440
</script>
</body>
</html>
есть идеи, что случилось?
редактировать
подводя итог ответу:
- запустить аудио в ответ на взаимодействие с пользователем
- убедитесь, что переключатель отключения звука
1 ответов
iOS позволит вам начать воспроизведение звука с помощью API Web Audio только в результате действия пользователя.
Попробуйте поместить этот код внутри какого-то обработчика событий.
var elem = document.getElementById('play'),
audioContext = new (window.AudioContext || window.webkitAudioContext),
osc = audioContext.createOscillator();
osc.connect(audioContext.destination);
if (osc.noteOn) osc.start = osc.noteOn
osc.frequency.value = 440;
play.addEventListener('click', function() {
osc.start(0);
}, false);