2

在 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父类中获取任何声音的文档。

那么如何从MediaStreamAPI 录制的声音中获取 FFT 样本呢?

4

0 回答 0