在MDN文档中,navigator.getUserMedia
被标记为已弃用,建议使用navigator.mediaDevices.getUserMedia
。
但是绝对没有任何有用的文档。
我有一个旧的脚本,该脚本用于获取音频的FFT以绘制频谱图,如下所示:
我现在想做类似的事情。我想获取音频的FFT,对其进行一些数学运算,然后再播放。
因此,按照新的API,我发现了这一点:
const media = await navigator.mediaDevices.getUserMedia({ audio: true });
const audio_track = media.getAudioTracks()[0];
如果我在控制台中登录,它将显示一个AudioStreamTrack
:
AudioStreamTrack {
kind: "audio",
id: "{93774f91-7eae-4fe8-8183-d7adee83174b}",
label: "default: Microphone (Realtek High Definition Audio)",
enabled: true,
muted: false,
onmute: null,
onunmute: null,
readyState: "live",
onended: null
}
关于此类,绝对没有文档。也没有关于从MediaStreamTrack
(父类)获取声音的文档。
那么如何从MediaStream
API记录的声音中获取FFT采样?