librosa中音频样本的单位是什么?

时间:2018-07-09 11:57:50

标签: audio-processing librosa

这几天,我正在使用librosa,它是一种音频处理库。作为加载音频文件的基本步骤,可以使用下面的功能。

librosa.core.load()
  1. 然后,音频文件表示为音频时间序列。我认为时间序列的每个值都是音频的振幅。但是,我不知道振幅的单位是什么。
  2. 还有,振幅,功率,dB和能量之间的关系是什么?

2 个答案:

答案 0 :(得分:0)

librosa.load返回类型为float32的numpy数组,其值在-1.01.0之间。这些值在现实世界中对应的物理量(或根本不对应)是未知的。因此,它本身就是 unitless

如果使用麦克风录制文件,则这些值与气压的变化呈线性关系。如果您知道记录时的气压(平均值和最小值/最大值),则可以将这些值映射回压力(单位:帕斯卡)。

答案 1 :(得分:0)

Librosa 的文档中没有定义振幅单位。但是,您可以使用以下命令将幅度转换为分贝单位:librosa.amplitude_to_db(S, ref=1.0, amin=1e-05, top_db=80.0)

可在此处找到 Librosa 幅度函数的文档:https://librosa.org/doc/main/core.html#magnitude-scaling