网络音频API分析节点getByteFrequencyData返回空白阵列 [英] Web Audio API analyser node getByteFrequencyData returning blank array

查看:1646
本文介绍了网络音频API分析节点getByteFrequencyData返回空白阵列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图使用 analyser.getByteFrequencyData(阵列)分析仪的节点访问FFT数据,但它似乎返回一个空数组:

I'm trying to access FFT data from the analyser node using analyser.getByteFrequencyData(array) but it seems to return a blank array:

var array = new Uint8Array(analyser.frequencyBinCount);
analyser.getByteFrequencyData(array);

不过使用 analyser.getFloatFrequencyData(阵列)返回数据的数组:

var array = new Float32Array(analyser.frequencyBinCount);
analyser.getFloatFrequencyData(array);

我使用的是信号链如下:

I'm using a signal chain as follows:

来源 - > 分析仪 - > ScriptProcessor ​​ - > 上下文目标

Source -> Analyser -> ScriptProcessor -> Context Destination

那么,为什么我不能以字节形式获取频率数据?

So why can I not get frequency data in byte form?

先谢谢了。

推荐答案

在没有看到您更多的code的,我最好的猜测是,你必须设置为超过你的数据的范围minDecibels和maxDecibels通过分析抽水,所以它变得清零。

Without seeing more of your code, my best guess is that you have the minDecibels and maxDecibels set to a range that is over the data you're pumping through the analyser, so it's getting zeroed out.

这篇关于网络音频API分析节点getByteFrequencyData返回空白阵列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆