跳转到主要内容

计算一个IR以匹配光谱

项目描述

SpecMatch

一个小型的Python 3程序,用于比较两个声音文件的光谱,并从频谱差生成一个(平滑的)脉冲响应文件(IR)。

依赖关系

安装

用户安装(使用pipx)

要从PyPI为您的用户帐户安装SpecMatch,建议使用pipx

pipx install specmatch

这将安装specmatch软件包及其所有依赖项到一个隔离的Python环境中,并在~/.local/bin中安装一个specmatch命令。请确保此目录包含在您的PATH中。

要再次卸载软件包及其pipx环境,运行

pipx uninstall specmatch

系统安装(使用pip)

要全局安装SpecMatch,请运行

sudo pip install specmatch

警告:这将绕过您的发行版的包管理,可能会通过覆盖系统中安装的新版本Python包来干扰您的Python系统安装。因此,此方法 不推荐 使用,并且仅在您了解并接受所涉及的风险时才应使用。在某些发行版中,您可能还需要为该方法添加--break-system-packages选项才能使其正常工作。

要卸载软件包,请运行

sudo pip uninstall specmatch

从源码构建(针对打包者)

要构建wheel软件包,请下载并解压源代码发行版或克隆Git存储库,然后切换到源目录。请确保您已安装Python的buildinstaller软件包,并运行

python3 -m build --wheel

这将创建一个临时Python环境,将构建依赖项安装到其中,并构建wheel。如果您希望构建使用系统安装的包,请使用--no-isolation选项。在这种情况下,您还需要确保已安装Python包hatchling,它用作包构建后端。

要安装wheel软件包,请运行

python3 -m installer ./dist/specmatch-*.whl

您可以使用--destdir选项来设置安装目标根目录,使其不同于/

运行

在全局安装后,SpecMatch可以从您的桌面环境菜单中启动。或者,您也可以在命令行中使用specmatch命令启动。

不安装

SpecMatch可以直接从源树中不安装使用。只需进入源文件夹并运行

python3 -m specmatch

以这种方式运行SpecMatch时,您需要确保所有依赖项都已存在于当前的Python环境中。

用法

SpecMatch与项目文件(扩展名为.specmatch)一起使用。首次启动时,将出现一个文件选择窗口,您需要选择一个项目名称。之后,SpecMatch窗口将出现。在随后的启动中,将自动打开上次选定的项目。您可以使用“更改文件”按钮选择另一个项目文件或创建一个新文件(项目中的更改将自动保存)。

点击“目标声音”。这是您想要匹配的声音文件,并选择一个文件。对于立体声音频,您可以选择一个通道(或总和)或生成立体声IR。

使用“源文件”选择另一个声音文件。这是您想要与目标匹配的声音。

这两个文件可以有不同的尺寸,没关系,因为程序只比较文件的频率谱。

现在您可以为源文件和目标文件进行频率图。该图还显示了差异和生成的平滑IR文件。您还可以显示时间图。

要生成IR文件,您需要设置归一化级别(默认为-25 dBFS),选择结果IR文件的大小(默认为3500个样本)并选择噪声级别,即信号被视为噪声的级别以下(默认为-60 dB)。此外,还可以设置最大幅度差异,即最大幅度以下的最小幅度将被截断(默认为-100dB)。

您可以生成单声道或立体声IR文件。

当您按下“生成IR”时,将弹出文件浏览器,允许您选择要保存生成的IR文件的名字和路径。

作者和许可证

SpecMatch由Hermann Meyer创建,并使用MIT许可证发布。有关详细信息,请参阅文件LICENSE.md

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

specmatch-0.10.0.tar.gz (16.7 kB 查看哈希值)

上传时间

构建分布

specmatch-0.10.0-py2.py3-none-any.whl (25.3 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下支持