【问题标题】:iOS AudioKit / EZAudio FFT valuesiOS AudioKit / EZAudio FFT 值
【发布时间】:2016-11-06 01:51:26
【问题描述】:

我有一个基于 Web 音频 API 的信号处理应用程序,我必须使用 AudioKit(基于 EZAudio)框架将它移植到 iOS。

我只需要在 Web Audio API 中包含 0-255 之间数字的频率域。

但在 AudioKit 中,AKFFTTap fftData 让我返回 -6 到 6 之间的浮点数,有时

这是我已经在 ios 上尝试过的:

初始化进程...

let mic = AKMicrophone()
let fftTap = AKFFTTap.init(mic)

请求...

return fftTap.fftData

关于网络音频 API: 初始化...

var analyser = audioContext.createAnalyser();

请求...

let freqDomain = new Uint8Array(analyser.frequencyBinCount);
analyser.getByteFrequencyData(freqDomain);
return freqDomain

我怎样才能取回相同的数据?

【问题讨论】:

    标签: ios fft ezaudio web-audio-api audiokit


    【解决方案1】:

    您的网络场景中有两点与 AKFFTap 不同... 首先它返回一个 256 大小的数组。这可能意味着被捕获的 bufferSize 是 512 个样本。您可以使用此自定义 AKFFTTap 解决此问题:

    https://gist.github.com/denisb411/3e832a592ff8b79cca2afdbed432a0d0

    其次,WebAudio 读取样本二进制文件的方式似乎不同。我建议您在网络上使用 Float32,因为 AudioKit 使用这种格式。参考this了解更多。

    【讨论】:

      猜你喜欢
      • 2018-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-03
      • 2014-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多