发明内容
基于此,有必要提供一种实现混响的方法,用于降低所需要的RAM的成本。
一种实现混响的方法,包括以下步骤:
将第一声音信号进行第一延时处理,生成第二声音信号;
将所述第一声音信号进行第二延时处理和频域压缩滤波处理,生成第三声音信号;
将所述第二声音信号和所述第三声音信号合成第四声音信号输出。
在其中一个实施例中,所述第一声音信号先经过第一压缩处理后再进行所述第一延时处理,且所述第一声音信号在经过所述第一延时处理后,再进行与所述第一压缩处理对应的第一解压处理,生成所述第二声音信号;
所述第一声音信号先经过第二压缩处理后再进行所述第二延时处理,且所述第一声音信号经过所述第二延时处理后,先进行与所述第二压缩处理对应的第二解压处理后再进行所述频域压缩滤波处理,生成所述第三声音信号。
在其中一个实施例中,通过线性预测编码对所述第一声音信号进行所述第一压缩处理,通过线性预测编码对所述第一声音信号进行所述第二压缩处理。
在其中一个实施例中,所述频域压缩滤波处理的实现流程为:
对经过所述第二延时处理的所述第一声音信号进行MDCT处理或FFT处理,得到所述第一声音信号的频域信号;
通过多个预设系数调整所述频域信号,得到多个调整频域信号;
对多个所述调整频域信号进行IMDCT处理或IFFT处理,并将处理后的每一帧分别取不同的起始点位置并合成,生成第一输出声音信号;
将所述第一输出声音信号的每一帧与预设长度的帧进行叠加,生成所述第三声音信号。
本发明还提出一种实现混响的装置,包括第一处理模块、第二处理模块和第一合成模块;
所述第一处理模块,被配置以将第一声音信号进行第一延时处理,生成第二声音信号;
所述第二处理模块,被配置以将所述第一声音信号进行第二延时处理和频域压缩滤波处理,生成第三声音信号;
所述第一合成模块,被配置以将所述第二声音信号和所述第三声音信号合成第四声音信号并输出。
在其中一个实施例中,所述第一处理模块包括第一压缩单元、第一延时单元和与所述第一压缩单元对应的第一解压单元;
所述第一压缩单元,被配置以将所述第一声音信号进行第一压缩处理;
所述第一延时单元,被配置以将经过所述第一压缩单元处理的所述第一声音信号进行第一延时处理;
所述第一解压单元,被配置以将经过所述第一延时单元处理的所述第一声音信号进行与所述第一压缩处理对应的第一解压处理;
所述第二处理模块包括第二压缩单元、第二延时单元、与所述第二压缩单元对应的第二解压单元和频域压缩滤波单元;
所述第二压缩单元,被配置以将所述第一声音信号进行第二压缩处理;
所述第二延时单元,被配置以将经过所述第二压缩单元处理的所述第一声音信号进行第二延时处理;
所述第二解压单元,被配置以将经过所述第二延时单元处理的所述第一声音信号进行与所述第二压缩处理对应的第二解压处理;
所述频域压缩滤波单元,被配置以将经过所述第二解压单元处理的所述第一声音信号进行频域压缩滤波处理。
在其中一个实施例中,通过线性预测编码对所述第一声音信号进行所述第一压缩处理,通过线性预测编码对所述第一声音信号进行所述第二压缩处理。
在其中一个实施例中,所述频域压缩滤波单元实现所述频域压缩滤波处理的方法为:
对经过所述第二延时处理的所述第一声音信号进行MDCT处理或FFT处理,得到所述第一声音信号的频域信号;
通过多个预设系数调整所述频域信号,得到多个调整频域信号;
对多个所述调整频域信号进行IMDCT处理或IFFT处理,将处理后的每一帧分别取不同的起始点位置并合成,生成所述第一输出声音信号;
将所述第一输出声音信号的每一帧与预设长度的帧叠加,生成所述第三声音信号。
上述实现混响的方法和装置,通过将第一声音信号分为两路进行处理,其中一路进行第一延时处理,生成第二声音信号,另外一路进行第二延时处理和频域压缩滤波处理,生成第三声音信号,最后将第二声音信号和第三声音信号合成并输出,能够降低对RAM的需求,从而降低成本。
本发明还提出一种实现混响的方法,包括以下步骤:
将第一声音信号进行第三压缩处理、第三延时处理和与所述第三压缩处理对应的第三解压处理,生成第二声音信号;
将所述第一声音信号进行第四压缩处理、第四延时处理、与所述第四压缩处理对应的第四解压处理和衰减处理,生成第三声音信号;
将所述第二声音信号和所述第三声音信号混合生成第四声音信号输出。
在其中一个实施例中,通过线性预测编码对所述第一声音信号进行所述第三压缩处理;
通过线性预测编码对所述第一声音信号进行所述第四压缩处理。
本发明还提出一种实现混响的装置,包括第三处理模块、第四处理模块和第二合成模块;
所述第三处理模块,被配置以将第一声音信号进行第三压缩处理、第三延时处理和与所述第三压缩处理对应的第三解压处理,生成所述第二声音信号;
所述第二处理模块,被配置以将所述第一声音信号进行第四压缩处理、第四延时处理、与所述第四压缩处理对应的第四解压处理和衰减处理,生成第三声音信号;
所述合成模块,被配置以将所述第二声音信号和所述第三声音信号混合生成第四声音信号输出。
在其中一个实施例中,通过线性预测编码对所述第一声音信号进行所述第三压缩处理;
通过线性预测编码对所述第一声音信号进行所述第四压缩处理。
上述实现混响的方法和装置,通过将第一声音信号分为两路进行处理,其中一路进行第三压缩处理、第三延时处理和第三解压处理,生成第二声音信号;另外一路进行第四压缩处理、第四延时处理、第四解压处理和衰减处理,生成第三声音信号,最后将第二声音信号和第三声音信号合成并输出,能够大大降低信号的延时存储对RAM的需求,从而降低成本。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图对本发明实现混响的方法和装置的具体实施方式进行说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图1,一个实施例中,本发明实现混响的方法包括以下步骤:
S100,将第一声音信号进行第一延时处理,生成第二声音信号。
其中,第一延时处理为对第一声音信号延时第一预设时间。由于对信号进行延时处理为本领域技术人员所公知的技术,故在此不再赘述。
优选的,在其他实施例中,本步骤还可以为:第一声音信号经过第一压缩处理后再进行第一延时处理,且第一声音信号在经过第一延时处理后,再进行与第一压缩处理对应的第一解压处理,生成第二声音信号。
可以理解的,对进行第一延时处理前的第一声音信号进行第一压缩处理,能够使得被压缩后的第一声音信号在RAM中占用的空间减少,降低信号存储所需的RAM的成本。当然,在从RAM中取出经过第一压缩处理和第一延时处理的第一声音信号时,要对经过第一压缩处理和第一延时处理的第一声音信号进行与第一压缩处理对应的第一解压处理。
具体的,可以通过线性预测编码对第一声音信号进行第一压缩处理。例如,可以对第一声音信号的实际数据与预测数据的误差进行量化,同时根据误差值调整量化步长,来完成对第一声音信号的压缩。对经过第一压缩处理后的第一声音信号存储时所需的RAM为未经过压缩处理的第一声音信号存储时所需的RAM的四分之一左右,从而大大降低了对RAM的需求,降低了RAM的成本。在允许并行的系统中,混响实现的最大限制是存储资源,而不是速度。具体的,未经过第一压缩处理的第一声音信号在RAM中存储的数据为16bit的音频数据,而经过第一压缩处理的第一声音信号在RAM中存储的数据可以为4bit的音频数据。
对应的,第一解压处理为第一压缩处理的逆过程。例如,可以根据输入的量化结果去得到对应反量化值,再根据量化值所在区间去调整量化步长,然后更新并且输出预测值。其中,预测值即为第二声音信号。
S200,将第一声音信号进行第二延时处理和频域压缩滤波处理,生成第三声音信号。
其中,第二延时处理为对第一声音信号延时第二预设时间。第二预设时间可以与第一预设时间相等,也可不等,具体根据实际的需要进行设定。
优选的,在其他实施例中,本步骤还可以为:第一声音信号先经过第二压缩处理后再进行第二延时处理,且第一声音信号经过第二延时处理后,先进行与第二压缩处理对应的第二解压处理后再进行频域压缩滤波处理,生成第三声音信号。
可以理解的,对进行第二延时处理前的第一声音信号进行第二压缩处理,能够使得被压缩后的第一声音信号在RAM中占用的空间减少,降低信号存储所需的RAM的成本。当然,在从RAM中取出经过第二压缩处理和第二延时处理的第一声音信号时,要对经过第二压缩处理和第二延时处理的第一声音信号进行与第二压缩处理对应的第二解压处理。
具体的,可以通过线性预测编码对第一声音信号进行第二压缩处理。例如,可以对第一声音信号的实际数据与预测数据的误差进行量化,同时根据误差值调整量化步长,来完成对第一声音信号的压缩。对经过第二压缩处理后的第一声音信号存储时所需的RAM为未经过第二压缩处理的第一声音信号存储时所需的RAM的四分之一左右,从而大大降低了对RAM的需求,降低了RAM的成本。具体的,未经过第二压缩处理的第一声音信号在RAM中存储的数据为16bit的音频数据,而经过第二压缩处理的第一声音信号在RAM中存储的数据可以为4bit的音频数据。
对应的,第二解压处理为第二压缩处理的逆过程。例如,可以根据输入的量化结果去得到对应反量化值,再根据量化值所在区间去调整量化步长,然后更新并且输出预测值。
参见图2,一个实施例中,频域压缩滤波处理的实现流程为:
S210,对经过第二延时处理的第一声音信号进行MDCT(Modified DiscreteCosine Transform,修正离散余弦变换)处理,得到第一声音信号的频域信号。
一个实施例中,对第一声音信号进行MDCT处理得到的第一声音信号的频域信号可以为第一声音信号的频率值。由于对信号进行MDCT处理为本领域技术人员所公知的技术,故在此不再赘述。
S220,通过多个预设系数调整频域信号,得到多个调整频域信号。
通过多个预设系数将经过步骤S210得到的频域信号进行频域调整,得到多个调整频域信号。各个预设系数可以根据实现混响效果的需要进行整体规划设置。
S230,对多个调整频域信号进行IMDCT(Inverse Modified Discrete CosineTransform,修正离散余弦逆变换)处理,将处理后的每一帧分别取不同的起始点位置并合成,生成第一输出声音信号。
对经步骤S220得出的多个调整频域信号进行与MDCT处理过程相反的IMDCT处理,将多个调整频域信号由频域信号变为时域信号。然后将信号的每一帧分别取不同的起始点位置并合成,生成第一输出声音信号。例如,每一帧的长度为N,每个调整频域信号对应一个路径,则路径1可以取每一帧的从N=100开始的数据,路径2可以取每一帧的从N=200开始的数据,路径3可以取每一帧的从N=300开始的数据,其他路径按照上述过程对每一帧的数据进行处理。最后将各个路径的数据进行合成,生成第一输出声音信号。
对信号进行IMDCT处理为本领域技术人员所公知的技术,在此不再赘述。
S240,将第一输出声音信号的每一帧与预设长度的帧进行叠加,生成第三声音信号。
为了避免信号的聚变,可以将第一输出声音信号的每一帧与预设长度的帧进行叠加,最终生成第三声音信号。其中,预设长度的帧可以为第一输出声音信号的帧。例如,步骤S240中第一输出声音信号的每一帧输出1024个点,其中的512个点可以为进行叠加的数据,即预设长度的帧。
以下通过一个具体实施例,对频域压缩滤波处理过程进行进一步说明:假设经MDCT处理的每一帧的数据长度为2048,叠加的每一帧的预设长度为1024,整个数据缓存长度为2048。通过汉宁窗,对每一帧的数据做MDCT处理得到对应的频率值。然后使用N组不同的预设系数去调整频率值,并做IMDCT处理叠加到输出结果的缓冲区。最后通过汉宁窗,按时间顺序,将输出结果的缓冲区的前512个数据和数据缓存的后512个数据叠加输出,并清空输出结果的缓冲区。
通过上述频域压缩滤波处理,可以在频域对第一声音信号调节频响,调出第一声音信号的波峰波谷。通过对各个参数的设置,还可以直接调节出想要的频响。
需要说明的是,在其他实施例中,还可以将MDCT处理替换为FFT(FastFourier Transformation,快速傅氏变换)处理。对应的将IMDCT处理替换为IFFT(Inverse Fast Fourier Transformation,快速傅氏逆变换)处理。
S300,将第二声音信号和第三声音信号合成第四声音信号输出。
最后,将第二声音信号和第三声音信号进行合成,生成第四声音信号并输出,转化为声音。其中,第二声音信号为干声,第三声音信号为湿声。
上述实现混响的方法,通过将第一声音信号分为两路进行处理,其中一路进行第一延时处理,生成第二声音信号,另外一路进行第二延时处理和频域压缩滤波处理,生成第三声音信号,最后将第二声音信号和第三声音信号合成并输出,能够降低信号存储对RAM的需求,进而降低成本。
参见图3,一个实施例中还提出另一种实现混响的方法,包括以下步骤:
S100,将第一声音信号进行第三压缩处理、第三延时处理和与第三压缩处理对应的第三解压处理,生成第二声音信号。
其中,第三延时处理为对第一声音信号延时第三预设时间。第四预设时间可以与第三预设时间相等,也可不等,具体根据实际的需要进行设定。
可以理解的,对进行第三延时处理前的第一声音信号进行第三压缩处理,能够使得被压缩后的第一声音信号在RAM中占用的空间减少,降低信号存储所需的RAM的成本。当然,在从RAM中取出经过第三压缩处理和第三延时处理的第一声音信号时,要对经过第三压缩处理和第三延时处理的第一声音信号进行与第三压缩处理对应的第三解压处理。
具体的,可以通过线性预测编码对第一声音信号进行第三压缩处理。例如,可以对第一声音信号的实际数据与预测数据的误差进行量化,同时根据误差值调整量化步长,来完成对第一声音信号的压缩。对经过第三压缩处理后的第一声音信号存储时所需的RAM为未经过压缩处理的第一声音信号存储时所需的RAM的四分之一左右,从而大大降低了对RAM的需求,降低了RAM的成本。具体的,未经过第三压缩处理的第一声音信号在RAM中存储的数据为16bit的音频数据,而经过第三压缩处理的第一声音信号在RAM中存储的数据可以为4bit的音频数据。
对应的,第三解压处理为第三压缩处理的逆过程。例如,可以根据输入的量化结果去得到对应反量化值,再根据量化值所在区间去调整量化步长,然后更新并且输出预测值。其中,预测值即为第二声音信号。
S200,将第一声音信号进行第四压缩处理、第四延时处理、与第四压缩处理对应的第四解压处理和衰减处理,生成第三声音信号。
其中,第四延时处理为对第一声音信号延时第四预设时间。第四预设时间可以与第三预设时间相等,也可不等,具体根据实际的需要进行设定。
可以理解的,对进行第四延时处理前的第一声音信号进行第四压缩处理,能够使得被压缩后的第一声音信号在RAM中占用的空间减少,降低信号存储所需的RAM的成本。当然,在从RAM中取出经过第四压缩处理和第四延时处理的第一声音信号时,要对经过第四压缩处理和第四延时处理的第一声音信号进行与第四压缩处理对应的第四解压处理。
同样的,可以通过线性预测编码对第一声音信号进行第三压缩处理。对应的,第四解压处理为第四压缩处理的逆过程。
另外,对信号进行衰减处理为本领域技术人员所公知的技术,在此不再赘述。
S300,将第二声音信号和第三声音信号混合生成第四声音信号并输出。
最后,将第二声音信号和第三声音信号进行合成,生成第四声音信号并输出,转化为声音。其中,第二声音信号为干声,第三声音信号为湿声。
上述实现混响的方法,通过将第一声音信号分为两路进行处理,其中一路进行第三压缩处理、第三延时处理和第三解压处理,生成第二声音信号;另外一路进行第四压缩处理、第四延时处理、第四解压处理和衰减处理,生成第三声音信号,最后将第二声音信号和第三声音信号合成并输出,能够大大降低信号存储对RAM的需求,从而降低成本。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
参见图4,一个实施例中,本发明实现混响的装置包括第一处理模块100、第二处理模块200和第一合成模块300。
第一处理模块100,被配置以将第一声音信号进行第一延时处理,生成第二声音信号。
参见图5,一个实施例中,第一处理模块100可以包括第一压缩单元110、第一延时单元120和第一解压单元130。
第一压缩单元110,被配置以将第一声音信号进行第一压缩处理。
可以理解的,对进行第一延时处理前的第一声音信号进行第一压缩处理,能够使得被压缩后的第一声音信号在RAM中占用的空间减少,降低信号存储所需的RAM的成本。当然,在从RAM中取出经过第一压缩处理和第一延时处理的第一声音信号时,要对经过第一压缩处理和第一延时处理的第一声音信号进行与第一压缩处理对应的第一解压处理。
具体的,可以通过线性预测编码对第一声音信号进行第一压缩处理。例如,可以对第一声音信号的实际数据与预测数据的误差进行量化,同时根据误差值调整量化步长,来完成对第一声音信号的压缩。对经过第一压缩处理后的第一声音信号存储时所需的RAM为未经过压缩处理的第一声音信号存储时所需的RAM的四分之一左右,从而大大降低了对RAM的需求,降低了RAM的成本。在允许并行的系统中,混响实现的最大限制是存储资源,而不是速度。具体的,未经过第一压缩处理的第一声音信号在RAM中存储的数据为16bit的音频数据,而经过第一压缩处理的第一声音信号在RAM中存储的数据可以为4bit的音频数据。
第一延时单元120,被配置以将经过第一压缩单元110处理的第一声音信号进行第一延时处理。
其中,第一延时处理为对第一声音信号延时第一预设时间。由于对信号进行延时处理为本领域技术人员所公知的技术,故在此不再赘述。
第一解压单元130,被配置以将经过第一延时单元120处理的第一声音信号进行与第一压缩处理对应的第一解压处理。
其中,第一解压处理为第一压缩处理的逆过程。例如,可以根据输入的量化结果去得到对应反量化值,再根据量化值所在区间去调整量化步长,然后更新并且输出预测值。其中,预测值即为第二声音信号。
第二处理模块200,被配置以将第一声音信号进行第二延时处理和频域压缩滤波处理,生成第三声音信号。
参见图6,一个实施例中,第二处理模块200包括第二压缩单元210、第二延时单元220、第二解压单元230和频域压缩滤波单元240。
第二压缩单元210,被配置以将第一声音信号进行第二压缩处理。
可以理解的,对进行第二延时处理前的第一声音信号进行第二压缩处理,能够使得被压缩后的第一声音信号在RAM中占用的空间极大减少,进一步降低信号存储所需的RAM的成本。当然,在从RAM中取出第一声音信号时,要对第一声音信号进行与第二压缩处理对应的第二解压处理。
具体的,可以通过线性预测编码对第一声音信号进行第二压缩处理。例如,可以对第一声音信号的实际数据与预测数据的误差进行量化,同时根据误差值调整量化步长,来完成对第一声音信号的压缩。对经过第二压缩处理后的第一声音信号存储时所需的RAM为未经过第二压缩处理的第一声音信号存储时所需的RAM的四分之一左右,从而大大降低了对RAM的需求,降低了RAM的成本。具体的,未经过第二压缩处理的第一声音信号在RAM中存储的数据为16bit的音频数据,而经过第二压缩处理的第一声音信号在RAM中存储的数据可以为4bit的音频数据。
第二延时单元220,被配置以将经过第二压缩单元210处理的第一声音信号进行第二延时处理。
其中,第二延时处理为对第一声音信号延时第二预设时间。第二预设时间可以与第一预设时间相等,也可不等,具体根据实际的需要进行设定。同样,对信号进行延时处理为本领域技术人员所公知的技术,在此不再赘述。
第二解压单元230,被配置以将经过第二延时单元220处理的第一声音信号进行与第二压缩处理对应的第二解压处理。
其中,第二解压处理为第二压缩处理的逆过程。例如,可以根据输入的量化结果去得到对应反量化值,再根据量化值所在区间去调整量化步长,然后更新并且输出预测值。
频域压缩滤波单元240,被配置以将经过第二解压单元230处理的第一声音信号进行频域压缩滤波处理。
一个实施例中,频域压缩滤波单元240实现将经过第二解压单元230处理的第一声音信号进行频域压缩滤波处理的方法如下:
首先,对经过第二延时处理的第一声音信号进行MDCT处理,得到第一声音信号的频域信号。
可以理解的,对第一声音信号进行MDCT处理得到的第一声音信号的频域信号可以为第一声音信号的频率值。由于对信号进行MDCT处理为本领域技术人员所公知的技术,故在此不再赘述。
然后,通过多个预设系数调整频域信号,得到多个调整频域信号。
通过多个预设系数将经过上一步得到的第一声音信号的频域信号进行频域调整,得到多个第一声音信号的调整频域信号。各个预设系数可以根据实现混响效果的需要进行整体规划设置。
接着,对多个调整频域信号进行IMDCT处理,并将处理后的每一帧分别取不同的起始点位置并合成,生成第一输出声音信号。
对经过上一步得出的多个调整频域信号进行与MDCT处理过程相反的IMDCT处理,将多个调整频域信号由频域信号变为时域信号。然后将信号的每一帧分别取不同的起始点位置并合成,生成第一输出声音信号。例如,每一帧的长度为N,每个调整频域信号对应一个路径,则路径1可以取每一帧的从N=100开始的数据,路径2可以取每一帧的从N=200开始的数据,路径3可以取每一帧的从N=300开始的数据,其他路径按照上述过程对每一帧的数据进行处理。最后将各个路径的数据进行合成,生成第一输出声音信号。
对信号进行IMDCT处理为本领域技术人员所公知的技术,在此不再赘述。
最后,将第一输出声音信号的每一帧与预设长度的帧进行叠加,生成第三声音信号。
为了避免信号的聚变,可以将第一输出声音信号的每一帧与预设长度的帧进行叠加,最终生成第三声音信号。其中,预设长度的帧可以为第一输出声音信号的帧。例如,第一输出声音信号的每一帧输出1024个点,其中的512个点可以为进行叠加的数据,即预设长度的帧。
以下通过一个具体实施例,对频域压缩滤波处理过程进行说明:假设经MDCT处理的每一帧的数据长度为2048,叠加的每一帧的预设长度为1024,整个数据缓存长度为2048。通过汉宁窗,对每一帧的数据做MDCT处理得到对应的频率值。然后使用N组不同的预设系数去调整频率值,并做IMDCT处理叠加到输出结果的缓冲区。最后通过汉宁窗,按时间顺序,将输出结果的缓冲区的前512个数据和数据缓存的后512个数据叠加输出,并清空输出结果的缓冲区。
通过上述频域压缩滤波处理,可以在频域对第一声音信号的频响进行,调出第一声音信号的波峰波谷。且通过对各个参数的设置,还可以直接调节出想要的频响。
需要说明的是,在其他实施例中,还可以将MDCT处理替换为FFT处理。对应的将IMDCT处理替换为IFFT处理。
第一合成模块300,被配置以将第二声音信号和第三声音信号合成第四声音信号并输出。
最后,将第二声音信号和第三声音信号进行合成,生成第四声音信号并输出,转化为声音。第二声音信号为干声,第三声音信号为湿声。
上述实现混响的装置的实施可以参照本发明实施例中的与上述实现混响的装置对应的实现混响的方法的具体步骤来实现,重复之处不再赘述。
上述实现混响的装置,通过将第一声音信号分为两路进行处理,其中一路进行第一延时处理,生成第二声音信号,另外一路进行第二延时处理和频域压缩滤波处理,生成第三声音信号,最后将第二声音信号和第三声音信号合成并输出,能够降低对上述实现混响的装置中的RAM的需求,从而降低成本。
参见图7,一个实施例中还提出另外一种实现混响的装置,包括第三处理模块400、第四处理模块500和第二合成模块600。
第三处理模块400,被配置以将第一声音信号进行第三压缩处理、第三延时处理和与第三压缩处理对应的第三解压处理,生成第二声音信号。
其中,第三延时处理为对第一声音信号延时第三预设时间。第四预设时间可以与第三预设时间相等,也可不等,具体根据实际的需要进行设定。
可以理解的,对进行第三延时处理前的第一声音信号进行第三压缩处理,能够使得被压缩后的第一声音信号在RAM中占用的空间减少,降低信号存储所需的RAM的成本。当然,在从RAM中取出经过第三压缩处理和第三延时处理的第一声音信号时,要对经过第三压缩处理和第三延时处理的第一声音信号进行与第三压缩处理对应的第三解压处理。
具体的,可以通过线性预测编码对第一声音信号进行第三压缩处理。例如,可以对第一声音信号的实际数据与预测数据的误差进行量化,同时根据误差值调整量化步长,来完成对第一声音信号的压缩。对经过第三压缩处理后的第一声音信号存储时所需的RAM为未经过压缩处理的第一声音信号存储时所需的RAM的四分之一左右,从而大大降低了对RAM的需求,降低了RAM的成本。具体的,未经过第三压缩处理的第一声音信号在RAM中存储的数据为16bit的音频数据,而经过第三压缩处理的第一声音信号在RAM中存储的数据可以为4bit的音频数据。
对应的,第三解压处理为第三压缩处理的逆过程。例如,可以根据输入的量化结果去得到对应反量化值,再根据量化值所在区间去调整量化步长,然后更新并且输出预测值。其中,预测值即为第二声音信号。
第四处理模块500,被配置以将第一声音信号进行第四压缩处理、第四延时处理、与第四压缩处理对应的第四解压处理和衰减处理,生成第三声音信号。
其中,第四延时处理为对第一声音信号延时第四预设时间。第四预设时间可以与第三预设时间相等,也可不等,可根据实际需要进行设定。
可以理解的,对进行第四延时处理前的第一声音信号进行第四压缩处理,能够使得被压缩后的第一声音信号在RAM中占用的空间极大减少,进一步降低信号存储所需的RAM的成本。当然,在从RAM中取出经过第四压缩处理和第四延时处理的第一声音信号时,要对经过第四压缩处理和第四延时处理的第一声音信号进行与第四压缩处理对应的第四解压处理。
同样的,可以通过线性预测编码对第一声音信号进行第四压缩处理。对应的,第四解压处理为第四压缩处理的逆过程。
另外,对信号进行衰减处理和延时处理均为本领域技术人员所公知的技术,故在此不再赘述。
第二合成模块600,被配置以将第二声音信号和第三声音信号混合生成第四声音信号并输出。
最后,将第二声音信号和第三声音信号进行合成,生成第四声音信号并输出,转化为声音。第二声音信号为本领域技术人员所说的干声,第三声音信号为本领域技术人员所说的湿声。
上述实现混响的装置的实施可以参照本发明实施例中的与上述实现混响的装置对应的实现混响的方法的具体步骤来实现,重复之处不再赘述。
上述实现混响的装置,通过将第一声音信号分为两路进行处理,其中一路进行第三压缩处理、第三延时处理和第三解压处理,生成第二声音信号;另外一路进行第四压缩处理、第四延时处理、第四解压处理和衰减处理,生成第三声音信号,最后将第二声音信号和第三声音信号合成并输出,能够大大降低对上述实现混响的装置中的RAM的需求,从而降低成本。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。