gpt4 book ai didi

unity3d - 上传音频文件时统一显示音频频谱(波形)

转载 作者:行者123 更新时间:2023-12-03 00:27:56 30 4
gpt4 key购买 nike

我正在尝试实现一系列音频文件,这些文件是三星语音记录功能的一部分。

像这样
enter image description here

但是,没有显示实时频谱的信息,但是没有显示上传的音频文件的波形的信息。

最佳答案

您可能需要寻找的是显示所获取音频数据的整体幅度。但是,您使用GetSpectrumData从Unity获得的数据是一个数组,显示了一系列不同频率下的振幅。要找到合适的“总”幅度,您可以取平均值,找到最大值,或对该数组的内容求和,然后使用此新值绘制可视化效果。我可能会去寻找最大值,即数组中的最高/最低值。您可以使用Linq来做到这一点:

using System.Linq;
/*...*/
float loudest = yourSpectrumDataArray.Max();

还要注意,您从GetSpectrumData获得的振幅值是整洁的,您可能需要在使用它们之前将其转换为分贝值。我正在使用这个方程式-不记得我在哪里找到的,但是它对我有用:
public float AmplitudeToDB(float value)
{
return 20.0f * Mathf.Log10(value / 2.5f + 1.5849e-13f);
}

关于unity3d - 上传音频文件时统一显示音频频谱(波形),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54947899/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com