编辑:可在HeSuVi Wiki中找到本指南的更新和改进版本:https://sourceforge.net/p/hesuvi/wiki/How-To%20Record%20Impulse%20Responses%20Digitally/
音乐厅,扬声器,均衡器,电影和家庭影院等大多数声学和声音系统都可以通过其对脉冲的响应(输出)进行完美建模。 捕获系统的脉冲响应并将其应用于任何信号(通过称为卷积的过程),例如音乐,游戏或电影音轨,可以使我们实时体验捕获的系统。 如果您将音乐厅的冲动响应应用于歌曲,您会听到这首歌,就像在该音乐厅中播放一样。
- 使用R(时域)进行声音处理
- 出售您的DAW模板
- Massdrop x THX AAA 789耳机放大器,评论
- S mixerabàn搅拌机DynacordtạiHàNộibảohànhmiễnphí
- 最大化播客的装备价值
一个非常有趣的应用是带耳机的环绕声虚拟化。 人类只有两只耳朵,但是可以从各个方向定位声音,因此人们会认为,用两只耳朵的单个信号实现相同的定位是可能的。 一个人是正确的。 HeSuVi是一款免费软件,可对耳机进行环绕声虚拟化。 HeSuVi已经从不同的耳机环绕虚拟化软件和声卡获得了各种各样的脉冲响应,以选择最适合您的耳朵的声音。 如果HeSuVi中尚未列出您自己的内容,您也可以录制自己的内容。
本教程将指导您直接使用音频环回在PC中捕获任何耳机环绕虚拟化软件的脉冲响应。 尽管本指南是针对耳机虚拟化和HeSuVi编写的,但是相同的原理和技术也可以应用于其他系统。 记录现实世界系统的冲激响应遵循相同的一般原理,但是冲激响应捕获方法有所不同,稍后将进行介绍。
下载文件并安装软件
我们在本指南中使用MPC-HC和Audacity播放和记录脉冲响应。 我建议您使用MPC-HC来实现频道映射的一致性,尽管任何能够进行7.1 FLAC和OGG播放的媒体播放器都可以完成此工作。 使用的测试文件中保存有频道映射,因此所有播放器都应类似地播放频道。
HeSuVi的Dirac增量序列文件(HeSuVi_Dirac_Delta_7.1.flac)正在按以下顺序播放所有8个通道的Dirac增量信号(数字脉冲逼近):1、7、5、3、2、8、6、4。与MPC-一起播放时HC脉冲响应序列的信道顺序为:L,Ls,Lb,C,R,Rs,Rb,LFE。
在某些情况下,HeSuVi,均衡器APO,Voicemeeter和您现有的环绕声处理软件可能无法很好地配合使用,Windows的音频有时可能会有些敏感。 如果已安装HeSuVi,请确保已选中“停用所有功能”,则您不希望两个处理器来改变声音。 删除或重命名Equalizer APO安装文件夹中的config.txt文件可能会有所帮助。 如果没有其他效果,您可能想要尝试卸载HeSuVi,Equalizer APO和Voicemeeter,但这应该是最后的选择。
当我安装了HeSuVi,Equalizer APO和Voicemeeter并没有出现任何失真时,我在脉冲响应间隔方面遇到了一些奇怪的不一致。 峰之间的一些静默期比其他的更长。 仅在卸载了所有内容之后,我才获得间隔持续时间的完美一致性。
一步步:
- 将处理软件设置为工作状态。
- 安装Audacity。
- 安装MPC-HC。
- 下载HeSuVi的Dirac delta序列以获得7.1环绕声。
- 下载HeSuVi的环绕声测试文件。
录制处理后的环绕声测试
我们正在使用Audacity记录脉冲响应和经过处理的环绕声测试文件。 Audacity是一种流行的免费软件,可用于音频处理,并具有许多有用的功能。 当使用WASAPI作为音频主机时,它可以纯数字环回形式记录来自声卡的音频流。 还有其他记录回送音频的方法,例如使用从声卡的输出到输入的物理电缆,但是进行直接数字回送将给出完美的结果。
Audacity还可以进行配音,在录制新曲目时播放现有曲目,但无法播放多声道音频,因此我们必须为此使用单独的媒体播放器。 我们将在MPC-HC中进行比赛,并在Audacity中进行记录。
一步步:
- 在Audacity中打开一个新项目。
- 在MPC-HC中打开test_surround.ogg。
- 在Audacity设备工具栏中设置设备配置

- 在主机下拉列表中选择Windows WASAPI。
- 在播放设备下拉列表中选择处理器输出。 根据您的音频硬件,这可能是您的耳机或扬声器。 如果您有用于处理的硬件解决方案,则需要将硬件处理器的输出插入声卡的输入,然后选择该输出(作为麦克风可见)作为录音设备。
- 在记录频道配置下拉列表中选择可用的最大频道数。
- 在左下角将Audacity项目采样率设置为48000Hz。 默认情况下,通常为44100Hz。
- 将播放设备和媒体播放器的音量设置为100%(0 dB),并确保Audacity中麦克风图标旁边的音量滑块最大。 这样可以确保录制时的最佳信噪比。
- 开始录制。

- 从头开始在MPC-HC中播放环绕声测试文件。
- 等待文件结束,然后停止以Audacity录制。
- 如果您录制的频道多于立体声,请删除所有多余的曲目。 您可以通过单击曲目名称左侧的x来执行此操作。
- 从Audacity导出到WAV并另存为test_surround_processed.wav到桌面。
- 关闭声音处理器并播放录制的文件(test_surround_processed.wav),它的声音应该与打开声音处理器时播放原始环绕声测试文件(surround_test.ogg)相同。 如果录制的文件比原始文件响亮,则必须调低媒体播放器中的音量并重做录制,否则稍后会被冲动剪切。 如果录制的文件比原始文件安静一些,那就没问题了。
记录脉冲响应
耳机环绕(7.1)虚拟化基于仿真每只耳朵中每个扬声器的信号。 可以认为这是我们试图同时模拟的16种不同系统:左前置扬声器到左耳,左前置扬声器到右耳,左扬声器到左耳,左扬声器到右耳,等等。 捕获16个系统需要16个脉冲响应。 HeSuVi实际上仅使用7个通道,省略了LFE通道,因此这里我们仅需要14个脉冲响应。 冲动响应很多,但是不用担心它们都记录在一个序列中。
记录的脉冲响应序列是一个立体声轨道,其中包含所有通道的脉冲响应。 我们需要将此立体声轨道转换为HeSuVi的14个单声道轨道。 这是通过缩短音序,从头到尾消除静默并重新排列曲目以符合HeSuVi的期望来完成的。
保留原始通道延迟非常重要,即使微小的延迟误差也可能导致环绕效果完全崩溃。 通过将脉冲响应序列切成精确的一秒间隔(原始狄拉克增量序列是一秒钟的间隔),我们将实现完美的延迟同步。
只要相对于其他通道的延迟正确,轨道开始处的绝对延迟就不那么重要。 在对整个序列进行第一次裁剪时,留出一些余地(10毫秒左右)是很明智的。 某些通道的延迟可能比左前通道的延迟小(左前是第一个脉冲响应),因此准确地裁剪到第一个脉冲响应的开始可能会导致某些通道的开始移动到前一个通道的末端。 在将序列划分为各个脉冲响应之后,所有通道的绝对延迟都将相同地减少。
一步步:
- 在MPC-HC中打开HeSuVi_Dirac_Delta_7.1.flac。
- 在Audacity中打开新项目,并设置设备配置和项目采样率(如果尚未设置)。
- 开始录制。

- 在MPC-HC中播放Dirac delta序列。 使用与环绕声测试文件录制相同的音量。
- 等待文件结束,然后停止以Audacity录制。
- 通过单击轨道控制面板(波形左侧)选择记录的轨道。 或Ctrl-a。
- 如果您获得非常安静的录音(最高峰值低于0.5),则可能需要放大脉冲响应。 在大多数情况下,这不是必需的。 您可以通过将音轨电平峰值标准化为例如来做到这一点。 -9dB:效果→归一化。 不要单独对立体声声道进行标准化,因为这会破坏环绕效果,因为每只耳朵上的声道音量是重要的定位提示。 -9dB是一个任意值,应大致给出正确的电平,您可能随后需要检查音量并使用:效果→放大对其进行校正。

- 将选择的末端移到第一个峰的左侧,并留出一点空间(10ms左右)。
- 删除选定的样本(删除键)

- 在曲目的开头精确选择1秒的音频。 如果您放大1秒标记,然后从选择时间单位下拉列表中选择“ hh:mm:ss +样本”,则会更容易。


- 剪切选区(ctrl-x),通过单击轨道下方的空白区域取消选择轨道,然后将剪切的部分粘贴为新轨道(ctrl-v)。
- 从第一首曲目的开头选择另一个1秒间隔。 这次,Audacity知道要捕捉到1秒标记,因为第二音轨到此结束。 剪切并粘贴为第二条轨道下方的新轨道。

- 再重复六遍。
- 通过单击轨道控制面板中的X按钮,删除记录的轨道的尾部。

- 通过单击垂直刻度(或ctrl +滚轮)垂直放大所有轨道,直到范围在-0.003至0.003左右。
- 选择所有音轨(ctrl-a),然后将选择的结尾移到峰的左侧。
- 放大到非常接近峰值的位置,然后将选择的结尾移到第一个非噪声值的左侧约1ms。 开始时的静音只会导致延迟,但对处理没有任何影响,因此紧紧修剪开始的静音并不重要。

- 从所有音轨中删除选定的样本(删除键)。
- 选择所有音轨(ctrl-a),然后将选择的开始位置移到最后一个样本的右侧,所有音轨的值都超过0.001。 末端作物并不重要,尾巴太长只会增加一点计算成本,因此尾巴太长比太短更安全。

- 删除选定的样本。
- 重命名所有曲目。 从上到下的跟踪顺序是L,Ls,Lb,C,R,Rs,Rb,LFE。 这是可选的,但可以降低意外混合通道顺序的风险。
- 卸下LFE轨道
- 交换音轨5(R),6(Rs)和7(Rb)的立体声通道。 这些是右侧扬声器,对于那些扬声器,右声道必须优先。

- 将音轨4(C)拆分为两个单声道音轨:音轨名称→“将立体声拆分为单声道”。 第一个单声道用于左耳,第二个用于右耳。
- 将第二个单声道轨道移至底部:选择时移工具(F5),并通过其控制面板向上或向下拖动频道。
- 保存项目:文件→将项目另存为…
- 导出到WAV:文件→导出→导出为WAV。 选择WAV(Microsoft)32位浮点PCM作为类型并保存。 保持通道映射为默认值。


- 确保Audacity导出到多通道文件:编辑→首选项→导入/导出→选择“使用自定义混音”

确认结果
脉冲响应对捕获过程中的任何类型的错误和错误都非常敏感。 使用真实材料进行测试时,检测脉冲响应是否正确记录可能并不容易。 环绕声测试文件将所有通道分离(一次仅播放一个通道),因此更容易检测到错误。 此外,将使用HeSuVi进行的实时处理与使用原始声音处理器时记录的环绕声测试文件进行比较,可以轻松检测两个系统中的任何差异。
一步步:
- 安装均衡器APO和HeSuVi(如果您的声卡不允许环绕声配置,请安装Voicemeeter)。 请参阅HeSuVi的安装说明。
- 将新的脉冲响应复制到HeSuVi的安装文件夹下的hrir文件夹。
- (重新)启动HeSuVi。 您应该在第一个列表中看到新的脉冲响应,选择它并确保HeSuVi没有被禁用。

- 播放环绕声测试(test_surround.wav)。
- 停用HeSuVi并播放已处理的环绕声测试(test_surround_processed.wav)。
- 用HeSuVi处理的原始环绕声测试听起来应该与记录的处理后的环绕声测试相同。 注意虚拟讲话的位置。
- 请享用!
捕获脉冲响应时,有很多事情可能出错。 这里列出了一些可能的陷阱。
- 记录脉冲响应时在Windows中播放的其他声音
- Dirac增量序列播放中的任何错误,延迟或削波
- 在开始时保持沉默太紧,无法去除非噪声样本
- 整个序列的第一批作物太接近第一冲激响应,导致其他冲激响应的开始移至先前间隔的末尾
- 最终消音太紧,消除了无噪声样本
- 在最后一次冲激响应中仍在进行混响时,过早停止Audacity录音
- 单独裁剪轨道会导致通道延迟不同步
- 弄乱频道顺序
- 不正确的放大导致安静或响亮的播放
- 独立地归一化或放大轨道或通道,从而导致错误的幅度定位提示