- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的应用程序中,我有一个长达一小时的音频文件,完全是音效。不幸的是,我确实需要它们——它们是特定于物种的声音,所以我无法删除它们中的任何一个。它们之前是分开的,但我将它们全部放入一个大文件中。
导出文件压缩后约为 20MB,但对于网速较慢的用户来说,下载量仍然很大。我需要这个文件位于 AudioBuffer
中,因为我正在寻找 audioSprite 的部分并使用 loopStart
/loopEnd
仅循环该部分。我或多或少需要在播放开始之前下载整个内容,因为请求的物种是在应用程序启动时随机选择的。他们可能会在文件的开头或末尾查找声音。
我想知道的是,如果我要把这个文件分成四份,我可以并行加载它们,然后将它们缝合到完整的 AudioBuffer
中吗?一旦加载完成?我猜我会合并多个数组,但只执行 decodeAudioData()
一次?请求约 100 个单独的文件(太多)是我首先使用 audiosprites 的原因,但我想知道是否有一种方法可以利用一定量的异步加载来减少所需的时间。我想过有四个<audio>
元素并使用createMediaElementSource()
加载它们,但我的理解是我不能(?)打开 MediaElementSource
进入AudioBuffer
.
最佳答案
考虑立即播放文件,而不是等待整个文件下载。您可以使用 Streams API 来执行此操作:
AudioBuffer
播放解码的 PCM 音频。See examples用于在接收文件 block 时进行低延迟音频播放。
关于javascript - 将大文件加载分成 block ,拼接到 AudioBuffer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57418447/
我正在开发一个 voip 调用应用程序。我需要做的是在接到来电时将 Activity 带到前台。我在应用程序中使用 Twilio,并在收到推送消息时开始调用。 问题是我试图在接到任何电话时显示 Act
我是一名优秀的程序员,十分优秀!