Safari 在使用 <amp-audio> 时只播放一次音频

Safari plays audio only once when using <amp-audio>

我正在尝试通过 AMP 上的播放按钮播放 多次 的短声音。在 Safari(桌面和移动设备)上,声音只会播放一次。

声音应该在用户单击按钮时触发。

我已经按照 amp-audio and the audio events

的 amp 文档进行操作
<amp-audio preload="none" id="audio" controlslist="nodownload" hidden>
<div fallback><p>Your browser doesn't support HTML5 audio</p></div>
    <source type="audio/mpeg" src="/media/shortSound.mp3">
    <source type="audio/ogg" src="/media/shortSound.ogg">
</amp-audio>

"native" 音频按钮被隐藏并通过点击以下按钮触发(使用 on:tap 事件)

<div class="button" on="tap: audio.play" role="button" tabindex="0"></div>

我也试过用没用,用播放前的暂停功能也没用。

注意:不幸的是,没有 .load 事件来规避 Safari 上 HTML5 的问题(这就是我在非放大器版本的 Safari 上播放它的方式)

实际结果:声音播放一次(我第一次点击它)。其余时间没有任何反应,控制台中也没有任何消息。我做错了什么?

我发现问题出在我的文件的 mp3 编码上。它使用 VBR 而不是 CBR,使用 CBR 编码的 mp3 文件时不会发生此问题。要检查您的编码,我建议使用 https://checkmate.gissen.nl/download.php

编辑:实际上是因为 Safari 使用 HTTPRange 而不是经典的 get 方法来获取资源。

希望 <amp-audio> 上的 loop 属性可以在此处提供帮助:https://amp.dev/documentation/components/amp-audio/?format=websites