我正在编写一个使用Web Audio的应用程序,用于播放音轨的不同区域作为循环。假设有一个区域在15和45之间另一个区域在10和14之间。我希望用户能够在循环之间跳跃。
如何以最好的精度做到这一点?在一段时间内获取当前时间的最佳实践是什么?
您可以设置一个频繁观察currentTime
的间隔:
const interval = setInterval(() => {
if (baseAudioContext.currentTime < 10 && baseAudioContext.currentTime > 4) {
// here you should seek to sec 1s
}
else if (baseAudioContext.currentTime > 14) {
// here you should seek to sec 10s
}
}, 20); // here you can change the interval
重要的是要找到一个合适的地方来清除这个间隔。