使用RecordRTC创建“频谱”可视化

时间:2020-02-10 13:46:58

标签: javascript spectrum recordrtc

我正在使用RecordRTC(https://github.com/muaz-khan/RecordRTC)收听:在浏览器中录制用户Microphone;但我想同时绘制频谱(基于CSS)。

我不知道该怎么办;我发现了很多使用AudioContext API的示例,但是从RecordRTC只能得到一个Blob数据,而且我不知道如何将其转换为Uint8Array来使用它...

我所做的:

  const audioContext = new AudioContext();
  const analyserNode = audioContext.createAnalyser();
  this.recorder = RecordRTC(microphone, {
    type: 'audio',
    mimeType: 'audio/wav',
    recorderType: RecordRTC.StereoAudioRecorder,
    desiredSampRate: 16000,
    numberOfAudioChannels: 1,
    audioBitsPerSecond: 256000,
    disableLogs: true,
    timeSlice: 100,
    ondataavailable: (data) => {
      data.arrayBuffer().then(buffer => {
        const freq = analyserNode.getByteFrequencyData(new Uint8Array(buffer));
        console.log(freq);
      });
    }
  });

我的console.log每转一次返回“ undefined”:/

是否有一种方法可以每100毫秒从RecordRTC或Blob二进制文件中获取频谱(声音可视化)?

谢谢!

0 个答案:

没有答案