javascript - 在html音频javascript中复制汽车引擎声音

标签 javascript html loops audio

有一段时间我开始研究一个基于 js 的小型浏览器赛车游戏。
我在 javascript 方面没有太多经验,但我学得很快。游戏是基于php和一点js的动画。还尝试实现 node.js 以使其成为实时。

游戏可以运行,但想添加声音,这样会更有趣……但我遇到了一个小问题,无间隙声音循环。尝试了几种方法和框架,但没有结果,只有在 chrome 中有一些,但这还不够。

请提供一些想法/解决方案/示例,说明您将如何做到这一点。提前致谢。

最佳答案

我设法通过以 250 RPM 增量录制真实引擎来制作合理的引擎声音,然后通过音高变换和增加音量创建额外的非常高 RPM wav 文件。然后,我使用多个 HTML5 网络音频增益节点在这些持续播放的 wav 文件之间进行混合。

音高变化仍然很明显,但还不错。如果您想要完美的声音,您将需要添加额外的 wav 文件,这些文件从一个音高开始并逐渐转移到另一个音高,然后逻辑适本地淡入/淡出这些。

循环音频是通过让两个 wav 文件稍微重叠并通过重叠在它们之间淡化来完成的,因此您不会听到咔嗒声。或者,使用这种技术预先创建一个长 wav 文件,这样点击次数就很少了。

关于javascript - 在html音频javascript中复制汽车引擎声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19129384/

相关文章:

将 Markdown/Textile 转换为 HTML 的 Javascript(理想情况下,返回 Markdown/Textile)

php - 如何截取整个桌面?

javascript - Vue-js 记住每个问题的复选框选择

html - 如何更改 Angular-UI-grid 的字体?

ruby - 当用 Ruby 写入文件时,为什么它有时会发生在我接下来的几行代码之后?

javascript - 离开 JsFiddle 环境时,JSFiddle 代码无法运行

html - 无法单击链接,因为它们被框遮住了

javascript - Bootstrap - 如何在导航栏中使用等宽?

Java 项目可能因循环错误而崩溃

loops - 非法语法错误