HTML5移动网络应用上的音频延迟

时间:2013-11-04 22:13:57

标签: javascript ios html5 audio mobile-website

我正在使用HTML5& amp ;;开发移动网络应用程序。的JavaScript。目标是使用HTML5音频标签创建一个页面,其中的按钮可以在触摸事件后播放声音。但是我注意到触摸事件和正在播放的声音之间存在显着延迟,即使在缓存了音频文件之后也是如此。我想这可能是由于iOS Safari处理声音的方式,但我不确定。针对此问题是否有任何解决方案或创意解决方案?如何最小化触摸事件和播放之间的延迟?

1 个答案:

答案 0 :(得分:3)

音频延迟可能是由于iOS中由于蜂窝数据费用而导致的缓冲问题。用户必须明确触发事件才能开始下载内容。

  

在iOS上的Safari(适用于所有设备,包括iPad)中,用户可能位于蜂窝网络上并按数据单元收费,因此会禁用预加载和自动播放。在用户启动数据之前不会加载任何数据。这意味着JavaScript play()和load()方法在用户启动回放之前也处于非活动状态,除非用户操作触发play()或load()方法。换句话说,用户启动的播放按钮有效,但onLoad =“play()”事件不起作用。

- https://developer.apple.com/library/safari/documentation/AudioVideo/Conceptual/Using_HTML5_Audio_Video/Device-SpecificConsiderations/Device-SpecificConsiderations.html#//apple_ref/doc/uid/TP40009523-CH5-SW1

===编辑===

一个潜在的改进是为移动产品使用较低比特率/较高压缩音频。然而,质量将大大降低。仅在您的申请中可以接受时使用。