提取数字信号的时间包络
项目描述
信封
用于提取信号包络的 Python 模块。
更多信息在Github;
交互式可视化在这里。
功能
该模块实现了 3 个功能:
read_wav("path/to/mono/signal.wav") ,
返回一个元组(W, fps),其中 W 是一个 numpy 数组,fps是一个整数,其值为文件的帧速率。
save_wav(信号,路径=“test.wav”,fps = 44100),
将 NumPy 数组保存为 .wav 文件。
get_frontiers(W, mode=0) ,
当模式=0 时:
返回 NumPy 数组的元组(pos_ids, neg_ids),其中 NumPy 数组的正边界和负边界的索引表示离散波W。
当模式 = 1 时:
X_envelope返回带有 wave 包络索引的 NumPy 数组W。请注意,为了获得这些点的包络值,np.abs(W[X_envelope])建议使用。
如果从兼容的设置(当前为 Windows 64 位)调用此函数,它会通过专门的本机代码更快地计算包络和边界。还提供了纯 Python 的后备版本,在这种情况下会打印一条警告,指示正在使用较慢的模式。在这两种情况下,用法是相同的,结果也是如此。
用法
安装模块:pip install signal-envelope
一个最小的例子是:
import signal_envelope as se
W, _ = se.read_wav("path/to/signal.wav")
X_pos_frontier, X_neg_frontier = se.get_frontiers(W, 0)
print(X_pos_frontier, W[X_pos_frontier])
X_envelope = se.get_frontiers(W, 1)
print(X_envelope, np.abs(W[X_envelope]))
在项目的Github存储库中可以找到许多测试 wav 文件。
资源
此存储库的代码可在Github上找到。
用过的图书馆
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
signal-envelope-1.3.tar.gz
(15.7 kB
查看哈希)
内置分布
signal_envelope-1.3-py3-none-any.whl
(14.9 kB
查看哈希)
关
signal_envelope -1.3-py3-none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 9531f32b7eb8c276e9ac529024e694f57fdecaaf91ef53839109af6ae63bcc40 |
|
| MD5 | 5aa5606e3bd8ec78e444966a7e8a40c4 |
|
| 布莱克2-256 | f09932677de46e11a635e801462bfb4bb7170cf7cf92649059c8ae5cc9a0d384 |