Webaudio 振荡器停止()回调
Webaudio oscillator stop() callback
在网络音频振荡器上调用 stop() 时,振荡器节点只是挂起,断开连接且未使用。
如果我告诉振荡器在 2 秒内停止:
oscillator.stop( audioCtx.currentTime + 2 );
有没有办法设置回调,以便我可以在 stop() 运行 后立即删除振荡器?
我考虑过使用停止时间加半秒左右的 setTimeout,但这可能最终会删除错误的振荡器。
振荡器节点支持在振荡器结束(停止)时调用的 onended 事件。
你为什么还要保留对振荡器的引用?如果您在调用 stop() 后立即释放对振荡器的引用,WA 系统将保留它直到它完成,然后它会被自动收集为垃圾。不需要自己坚持。
在网络音频振荡器上调用 stop() 时,振荡器节点只是挂起,断开连接且未使用。
如果我告诉振荡器在 2 秒内停止:
oscillator.stop( audioCtx.currentTime + 2 );
有没有办法设置回调,以便我可以在 stop() 运行 后立即删除振荡器?
我考虑过使用停止时间加半秒左右的 setTimeout,但这可能最终会删除错误的振荡器。
振荡器节点支持在振荡器结束(停止)时调用的 onended 事件。
你为什么还要保留对振荡器的引用?如果您在调用 stop() 后立即释放对振荡器的引用,WA 系统将保留它直到它完成,然后它会被自动收集为垃圾。不需要自己坚持。