Как и в Chrome 71 WebAudioContext, кажется, что AudioContext запускается как приостановленный на странице, пока не будут выполнены некоторые требования.
Один из них заключается в том, что пользователь должен взаимодействовать со страницей, чтобы AudioContext работал должным образом.
Моя компания поддерживает веб-сайт с различными типами игр, и, поскольку многие из них могут быть из разных инструментов разработки игр, мы используем iFrames для их загрузки.
Моя проблема в том, что я не могу найти способ включить/отключить приостановленный звук из iFrame, что потребовало бы от пользователя взаимодействия с iFrame, а не только с самой страницей.
Наши игры просто не могут воспроизвести звук до тех пор, пока воспроизведение не щелкнет внутри iFrame, и это ужасно, особенно для игр с музыкой/звуками в меню.
Я не смог найти НИКАКИХ способов подписать, что эти iFrames подходят для воспроизведения их аудио, на моей собственной веб-странице.






У меня была эта проблема с Soundcloud Widget API. Мое решение состояло в том, чтобы добавить атрибут allow="autoplay" в iframe!
Для тех, у кого есть эта проблема, как прокомментировал Каин, разрешение «автовоспроизведения» во фрейме действительно работает.
Моя настоящая проблема, которую я заметил намного позже, заключалась в том, что в Chrome 71 была ошибка при перезагрузке игры, в которой контекст снова блокировался, как если бы пользователь пришел с другой страницы.
Если бы я щелкнул игру на своем веб-сайте и дождался загрузки страницы, я бы освободил аудиоконтекст. Если бы на странице игры я перезагрузил страницу, контекст был бы заблокирован, как если бы я пришел с другой страницы.
Ну баг. Возможно, Chrome исправит это в будущих обновлениях.
Спасибо, KainLaVey, ваше решение действительно было решением, но оно уже было в моем iframe. Кажется, я столкнулся с ошибкой Chrome. Я ответил на свой вопрос, чтобы люди с такой же проблемой могли знать об этом.