首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在不构建“音频可视化工具”的情况下,将JavaScript动画与歌曲的节奏同步?

如何在不构建“音频可视化工具”的情况下,将JavaScript动画与歌曲的节奏同步?
EN

Stack Overflow用户
提问于 2011-12-01 06:36:25
回答 2查看 3.9K关注 0票数 4

根据我的基本理解,JavaScript音频可视化工具是根据实际的声波反射音乐的。我想构建一个类似于节拍器(http://bl.ocks.org/1399233)的东西,在其中我为每个x节拍的一些DOM元素设置动画。

我现在这样做的方式是,我手动计算出歌曲的节奏,假设是120bpm,然后我将其转换为毫秒来运行setInterval回调。但这似乎不起作用,因为浏览器的性能导致它不精确。有没有更好的方法来确保回调完全按照歌曲的节奏执行?

如果没有,有什么其他的策略来同步JavaScript动画与歌曲的节奏,而不是一个音频可视化工具?

更新:看起来像这样的东西?https://github.com/bestiejs/benchmark.js/blob/master/benchmark.js#L1606

EN

Stack Overflow用户

发布于 2011-12-01 06:41:22

这篇文章可能是相关的:

要点是,您在setInterval()中运行函数的速度略快于您的节奏,例如,每隔100ms。长例简而言之,您可以通过检查(new Date()).getMilliseconds()的值并查看是否已经过了相当于毫秒一个节拍的时间,而不是依赖不太准确的setTimeoutsetInterval函数,来跟踪是否到了播放“节拍”的时候。

即使这样,音乐本身,除非由计算机产生,否则可能不会有完美或一致的节奏,所以对你来说,计算错误的节拍可能是一个障碍,这可能就是为什么使用音频分析来找出实际节拍将发生在哪里可能是一个更好的方法。

票数 2
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8333981

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档