2015-08-14 53 views
0

我创建了一个AudioBufferSourceNode:var source = audioCtx.createBufferSource();。接下来,我通过XHR以Soundcloud的音轨加载缓冲区。我可以使所有方法正常工作,并可以调整大多数属性,如loopbufferplaybackRate.value等。它在文档中说detune.value是另一个可以调整的属性。但是,当我尝试它时,期望它改变轨道的音高,没有任何反应。控制台告诉我source.detune是不确定的,当它应该是和对象,如果我没有弄错。我能够使振荡器在振荡器上完美工作,但不能通过XHR加载缓冲器。那么detune属性仅限于某些类型的AudioBufferSourceNodes(或缓冲区)和Oscillators,还有另外一种方法可以在不调整playbackRate的情况下改变轨道音高吗?Web Audio API AudioBufferSourceNode detune

回答

1

有人猜测,您使用的是Chrome稳定版。 Detune是相当新的,并且尚未稳定下来。它适用于Chrome Canary(和Firefox)。