草庐IT

AudioBufferSourceNode

全部标签

javascript - 如何获取 AudioBufferSourceNode 当前时间?

在处理音频元素()或上下文(AudioContext)时,您可以检查它们的currentTime属性来准确知道缓冲区的播放时间。在我在单个AudioBufferSourceNode中创建多个源(或AudioContext)之前,所有这些都很好,花花公子。.源可以在不同的时间播放,因此我需要知道它们对应的currentTime的,以说明:一些基本代码供您使用:buffer1=[0,1,0];//notrealbuffersbuffer2=[1,0,1];ctx=newAudioContext();source1=ctx.createBufferSourceNode();source1.b

javascript - 类型错误 : Failed to set the 'buffer' property on 'AudioBufferSourceNode' : The provided value is not of type 'AudioBuffer

我正在处理现有的codoCircle.调低音量。它按预期运行。现在我想在codepen中使用相同的代码我得到这个错误类型错误:无法在“AudioBufferSourceNode”上设置“缓冲区”属性:提供的值不是“AudioBuffer”类型我做了一些研究,找到了firstanswer有用。答案是当我在playSoundplayer.buffer=buffer中分配时,缓冲区仍未定义,因为加载回调尚未触发。这对我来说很有意义,所以我尝试做一个setTimeout像:setTimeout(playSound,9000);没有成功。你知道解决这个问题的方法吗?为什么在CodeCircle中

javascript - Web Audio 中 AudioNode 的清理

WebAudioAPIdocs不要真正解释用完AudioNode后的用途。例如,如果我用完了一个AudioBufferSourceNode并且我想摆脱它,只调用noteOff()就足够了吗?还是我需要断开连接吗? 最佳答案 只需调用noteOff()就足够了,或者如果AudioBufferSourceNode没有循环,它会在到达样本数据末尾时自行完成(不需要调用noteOff())。无需断开连接。 关于javascript-WebAudio中AudioNode的清理,我们在StackOv

javascript - 播放 AudioBufferSourceNode 两次?

我应该能够使用相同的AudioBufferSourceNode多次播放声音吗?出于某种原因,第二次调用noteGrainOn不会播放音频,即使中间有noteOff。这段代码只播放一次声音:varnode=audioContext.createBufferSource()node.buffer=audioBuffernode.connect(audioContext.destination)varnow=audioContext.currentTimenode.noteGrainOn(now,0,2)node.noteOff(now+2)node.noteGrainOn(now+3,0,