刘品
学以致用---博主简介:专注语音、视频数字信号处理方面的研究以及算法在手机平台上面的移植和优化。涉及语音/音频编解码,语音增强,语音识别,语音音质客观评估,VOIP语音引擎 Qos算法模块和声音变速不变调和变调不变速等功能实现。熟悉ARM 各个系列的CPU,用ARMv4,ARMv5,ARMv6 and Cortex Neon 汇编优化相关算法代码,争取perforamance 最优。目前主要Windows mobile and Android platform上做相关speech/audio算法以及应用开发, HEVC 编解码器PC 和手机上的开发与应用。(交流Email:liupin.2008@gmail.com)

       各种mp3或mp4播放器都有音频特效功能,可以实现几种主流的音频特效,如:3D效果,也就是立体环绕效果,大厅效果,就是充分利用回声,控制好时间来实现各种室内效果。音频特效种类很多,有各种各样的实现模型。对其深入研究既可以进相关的知识,如音频知识,数字信号处理知识得到更深入的学习,又可以将自己研究的各种音频特效应该到实现产品中。

      前段时间完成一音频特效,项目主要是在一DSP评估板子上实现一些基本的音频特效。在这期间,对音频特效当前整体现状有了一个较为全面的,同时也在这板子上实现了好几种的音频特效播放效果。这次就与大家一起共享一篇关于延时效果(Delay Effects):回旋(Flanging)、合唱(Chorusing)、回声(Echo)文章,相关链接忘是那了。

    - 概述
  时间延时效果可以产生回旋,回声,合唱,延时,立体声模拟(stereo simulation)等许多种效果。有些设备为每一种效果设定了一种独立的效果算法,而另外一些则只是提供了很简单的时间延时效果,然后对其进行改变来实现各种不同的效果。相位(phrasing)、回旋和合唱是由很短的延时时间而产生的,因此你不会觉得它们与延时效果有过多的相似之处。虽然如此,延时效果毕竟还是这些效果中最最基本的。
- 工作原理
  时间延时效果是将输入信号录制到数字化的内存中,然后经过一段短暂的时间之后再将其读出来。将输出信号的一部分反馈回输入端,使之再进入到延时的循环中去,于是得到一种重复的回声效果。调制(modulation)参数,这是一种在某一特定范围内进行延时时间变化的参数,它用来制造一种很活泼的变化效果--延时时间在最大值和最小值之间不断地来回变化。
- 重要的参数
  初始延时(initial delay)参数:设定了延时的时间。在回声效果中,这个参数决定了直接声与第一声回声之间的时间间隔。在回旋和合唱效果中,调制参数控制了初始的延时时间。有一些设备允许你将延时时间与MIDI乐曲的节奏进行同步。另外一些则是一种tap功能,即使用开关和按键来设定延时时间。
  平衡(balance)、混音(mix)和混合(blend)参数:这个参数调整了直接声与延时声音之间的平衡关系。如果你将一个合唱算法设定为100%的湿度(即全部通过效果器),那么你将听不到任何合唱效果,其原因是合唱效果是通过一个细微的音高偏置来产生的,而这种细微的音高偏置是由""信号(即不通过效果器)和经过延时调制的信号共同生成的。可使声音更加丰满的合唱效果算法使用了若干个延时,因此你将在平衡为100%时,依然可以听到效果声。
  反馈(feedback)、再循环(recirculation)或是再发生(regeneration)参数:这个参数决定了从输出端返回到输入端信号量值的多少。在回声效果中,最小的反馈量提供了一种单一的回声;而较大的反馈量值则增大了回声的效果。在回旋效果中,增大反馈量会使效果变得尖利,这与增大滤波器的共振参数十分类似。
  扫描范围(sweep range)、调制量(modulation)或是深度(depth)参数:决定了使用多少调制量(有时也称之为低频振荡或是扫描)来使得延时时间产生变化。例如,一个延时效果具有21的扫描范围,那么就可以扫描超过21的时间间隔(例如5毫秒到10毫秒,或是100毫秒到200毫秒)。一个较宽的扫描时间对于生动的回旋效果来说是最最重要的了;合唱和回声效果则不需要过多的扫描范围。在使用较长的延时时间的效果时,应在合唱中增加一点调制,但是太多的调制量将会导致不和谐的效果。许多回声效果(长延时)算法都是基于现在的效果器硬件设备来建立的,它们没有调制参数。
  调制类型(modulation type)参数:调制通常用于周期性的波形,例如三角波或是方波,但是一些设备包括了随机波形和包络(可以用于调制输入信号的动态范围)。
  调制率(modulation rate)参数:设定了可调制低频振荡器的速度。典型的速率范围是从0.1 Hz(即每10秒钟一个循环)到20 Hz。作为最标准的合唱效果,通常是使用2 Hz或是更低的频率;较高的速率则用于一些不大常用的效果。在回旋和合唱效果中,调制导致了被调制信号的音高变得比较单调,并且将其返回到原始的声音(音高比较尖锐)中,不断地进行循环。
- 令人烦恼的特性
  延时时间是从设备中读出的,尤其是在有些老式的设备中,数据并不总是100%的正确。当然,通过MIDI来改变延时时间,当设备正在处理一个信号时,其结果总是出现问题。
- 要点
  为了增加颤音,可以设置一个较短的初始延时(例如5毫秒等),监听延时时间,并且用一个514 Hz的三角波或是正弦波来调制延时。
  ·为了创造出"梳状滤波器"效果,可以将一个直接声的信号与一个通过了短暂且未经调制的延时效果的信号进行混音。试着将初始延时时间设定为110 毫秒,最小的反馈量,不进行调制,将直接声和经过处理的声音进行等量的混合。然后打开反馈以提高滤波特性。
  ·为了进行从单声道到立体声的转换,你应该设置立体声的合唱深度参数为最大值,并且将比率参数设为最小值(或是关掉)。当调制比率参数设置得较高时,将会导致立体声展开效果缺乏动感。
  ·为了给特定的节奏(例如一个八分或是四分音符)校准回声的反复时间,下面的公式将为你把每分钟的小节数(节奏)转化为每四分音符多少毫秒(回声时间):
60000/
(每分钟的小节数)= 延时时间(单位为毫秒)

 


 

    

posted on 2008-08-05 21:21  liupin  阅读(2229)  评论(1编辑  收藏  举报

-->