我的应用程序使用带有MIDI.js的网络音频API播放音乐。
应用程序记录用户使用麦克风或网络摄像头播放吉他等乐器。我正在使用getUserMedia和一个来自https://github.com/mattdiamond/Recorderjs的工作人员。
我的问题是延迟问题。 我播放的声音大约是在250ms之后录制的。
我想要的不是缩短这段时间,而是要知道这个时间大约是15ms所以我可以同步两者。
反正有吗? 我可以假设延迟会保持不变吗?
我注意到AudioContext参数调用currentTime:http://www.w3.org/TR/webaudio/#AudioContext-section 我可以用它来了解我的noteOn和硬件上的realTime noteOn之间的延迟吗? 如果是,那么如何以及如何获得吉他演奏和吉他录制之间的延迟。
我需要来自JUCE http://www.juce.com/api/classAudioIODevice.html#a693804fbf5a7cceb31ece10a9f03bd11
的AudioIODevice :: getOutputLatencyInSamples之类的东西感谢您的帮助。
答案 0 :(得分:2)
现在,没有办法做到这一点; currentTime公开是音频硬件时间,没有直接转换。我们有一个未解决的问题,将其添加到规范中。