BiRR2D和BiRR3D是房间模拟器,可以精确地模拟矩形(2D)或平行六面体(3D)房间中听众感知到的单声道和全向声源产生的声音。
用户可以控制房间的(x,y,z)尺寸,以及源和听众在房间中的位置。听众的方向也可以调整。墙属性可以通过两个或三个参数进行调整:
壁吸收:介于0和1之间的系数,表示反射系数。在每次壁回弹时,声波振幅乘以该系数。值越高,混响时间越短。
壁高频吸收:此参数控制高频吸收壁反弹。较高的值会产生较暗的混响声音。
壁扩散:此参数控制壁扩散特性(此参数仅在ambisonic版本中可用,否则固定为1e-3,但可能会发生变化)
输入为单声道或立体声,具体取决于所选版本(单声道输入或立体声输入)。输出声音是具有以下配置之一的立体声混响声音:
XY配置的两个心形麦克风
一个心形麦克风和一个八模式麦克风,采用MS配置
一个全向麦克风和一个八模式麦克风,采用MS配置
麻省理工学院medialab提供的基于HRTF的双耳受体(https://sound.media.mit.edu/resources/KEMAR.html),并且与干燥的原始声音相比,尽可能地均衡为中性声音。
Ambisonic输出(适用于Ambisonic版本)
二维版本模拟二维矩形平面域。因此,产生的双耳声音没有考虑源和听众的高度信息。3D版本模拟了一个平行六面体的房间,源和听众的高度位置。因此,后者涉及更多的cpu计算用于脉冲响应计算。
直接路径和反射路径
当参数改变时,计算两个立体声内爆响应并将其发送到卷积处理器:
直接路径隐含响应。
墙壁上多次反射引起的脉冲响应。
直接路径和反射的效果级别可以单独调整。这些可以作为混响的干参数和湿参数来寻找,尽管当两个参数相等时,产生的声音在物理上是准确的。
立体声宽度
在XY配置中,此参数指定两个心形麦克风之间的角度。在最小值时,角度为零,产生的声音为单声道。在最大值时,角度等于180度,麦克风垂直于头部轴。在标准XY配置中,角度等于90度,当宽度参数等于0.5时发生。
在MS配置中,立体声量化了8字形麦克风信号的幅度(在0和1之间)。
立体声宽度参数在双耳配置中没有影响。
ambisonic版本中没有这样的参数
参数更新
在每次参数更新时(双音版本中的混响水平和头部方向除外),都会计算脉冲响应。由于必须计算每个声学路径,因此计算时间可能很长,特别是在阻尼较小的情况下。
脉冲响应计算采用的线程数量等于CPU数量-1,这允许合理的计算时间(在最近的CPU上,最大的混响时间最多为几秒钟)。
重要提示:每次参数更改后都需要一些计算时间,这阻碍了参数自动化,因为它们不能实时更新。因此,此插件不能用于在虚拟空间中移动声音。
BiRR2D and BiRR3D are room simulators that accurately emulate the sound produced by a monophonic and omnidirectionnal source perceived by a listener in a rectangular (2D) or parallelepipedic (3D) room.
User can control (x, y, z) dimensions of the room, and position of source and listener in the room. The orientation of the listener can also be adjusted. Wall properties are adjusted with two or three parameters:
Wall absorbtion : a coefficient between 0 an 1, representing a reflection coefficient. The acoustic wave amplitude is multiplied by this coefficient at each wall rebound. Higher values produce a shorter reverb.
Wall high frequency absobtion : this parameter controls the high frequency absorbtion wall rebounds. Higher values produce darker reverb sound.
Wall diffusion : this parameter controls the wall diffusion properties (parameter only available in the ambisonic version, otherwise fixed to 1e-3, but this is subject to change)
The input is mono or stereo, depending on the chosen version (mono in or stereo in). The output sound is a stereo reverberberated sound with one of the following configurations:
Two cardioid microphones in XY configuration
One cardioid and one eight-pattern microphones, in MS configuration
One omni and one eight-pattern microphone, in MS configuration
Binaural receptor based on the HRTF provided by MIT medialab (https://sound.media.mit.edu/resources/KEMAR.html), and equalized to sound as neutral as possible compared to the dry original sound.
Ambisonic output (for the ambisonic version)
The 2D version simulates a 2D rectangular flat domain. Consequently, the produced binaural sound doesn't consider height information for sources and listener. The 3D version simmulates a parallelepipedic room, height position of the sources and listener. The latter hence involves more cpu computations for the impulse responses calculations.
Direct path and reflections paths
when a parameter is changed, two stereo impluse responses are calculted and sent to convolution processors:
The direct path impluse response.
The impulse response due to multiple reflections on walls.
The effect level of direct path and reflections can be adjusted separately. These can be sought as dry and wet parameters of the reverb, although the produced sound is physically acurate when both parameters are equal.
Stereo width
In the XY configuration, this parameter specifies the angle between the two cardioid microphones. At its minimum the angle is zero and the produced sound is mono. At its maximum value, the angle equals 180 degrees, the microphones being perpendicular to the head axis. In the standard XY configuration, the angle equals 90 degrees, which occurs when the width parameter equals 0.5.
In the MS configurations the stereo with quantifies the amplitude of the figure eight microphone signal (between 0 and 1).
The stereo width parameter has no effect in the binaural configuration.
There is no such parameter in the ambisonic version
Parameters updating
At each parameter update (except reverb levels and head orientation in the ambisonic version), the impulse response is calculated. As each acoustic path has to be calculated, the computation time can be high, in particular if the damping is small.
A number of threads equal to the number of CPUs - 1 is employed for the impulse response calculation, which allows reasonable computation times (At most a few seconds for largest reverberation times on recent CPUs).
Important note: the fact that some calculation time is necessary after each parameter change prevents parameter automation, as they cannot be updated in real time. Consequently, this plugin cannot be used to move sounds in the virtual space. |