Ошибка загрузки звукового файла из HTMLAudioElement в Safari с размещенного сервера, но не из localhost или Chrome - PullRequest
0 голосов
/ 23 апреля 2020

Я пытаюсь добавить звук щелчка к своему приложению ionic5, используя HTMLAudioElement. Он загружается динамически, но в DOM он выглядит следующим образом:

<audio preload="auto" id="audio-player" controls="" src="assets/audio/448080__breviceps__wet-click.wav"></audio>

Он отлично работает в Chrome в любой среде, а также работает в Safari, когда размещается на localhost:8100 с ioni c dev сервер (см .: https://ionicframework.com/docs/cli/commands/serve)

Но когда я пытаюсь воспроизвести звук в Safari с хостинга Firebase https://fishbowl-the-game.firebaseapp.com, происходит сбой со следующей ошибкой:

this.audioPlayer.play().catch(
(err)=>{
   console.warn("audioPlayer, err=",err)
});
// error message from Safari 
[Warning] audioPlayer, err= – NotSupportedError: The operation is not supported. (common-es2015.js, line 1548)
Not SupportedError: The operation is not supported.

И когда я go загружаю файл .wav напрямую, он работает на Chrome, И Safari на localhost, но НЕ на Safari от firebaseapp.com

, см .: https://fishbowl-the-game.firebaseapp.com/assets/audio/448080__breviceps__wet-click.wav

// error message from Safari when loading the resource directly
[Error] Failed to load resource: Plug-in handled load (448080__breviceps__wet-click.wav, line 0)

Я знаю, что есть другие сообщения о HTML5 проблемах со звуком в Safari, но мой код работает поверх localhost, поэтому я предполагаю, что это может быть что-то остальное.

есть идеи?

...