我目前正在开发基于Web的循环站(例如Boss RC-505)
当前情况:
window.AudioContext = window.AudioContext || window.webkitAudioContext
audioContext = new AudioContext()
let mediaStreamSource = audioContext.createMediaStreamSource(stream)
let inputgain = audioContext.createGain()
let outputgain = audioContext.createGain()
mediaStreamSource.connect(inputgain)
inputgain.connect(outputgain)
outputgain.connect(audioContext.destination)
初始化麦克风输入(具有用户权限)后,创建一个新的audioContext。 由此,我创建MediaStreamSource,并将其与麦克风输入一起输入)。 接下来的两个是GainNode,分别用于音频流的输入和输出。 然后就是目的地,那只是扬声器的输出。
在输入增益和输出增益之间,我现在想要一个音频节点,该节点在给定时间(onclick事件)从mediaStreamSource记录,并在给定时间停止记录。 记录后,它应该一直循环播放。
我在网上找不到任何有用的信息,所以我希望这里的人能回答我的问题。 为了可视化我的工作,这是开发中的网络应用程序: https://corsiin.github.io/LoopToGo/