内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体






带你真正认识了解声码器

时间:2016-08-22 来源:中国集群通信网 作者:网络 点击:

声码器Vocoder由Voice Coder简化而来,可以译作“人声编码器”。它原来是一种分析与合成人工语言电子设备或系统。早期通过它认识到语音的基本信息率很低,如果把它们分割成基本的成分,可以在很窄的通带上传送,然后在接收端重新组合。语言合成就这样有趣地诞生了。声码器的工作原理是检测语音的架构,或者它是具有基本频率的元音;或者是噪音,例如辅音中的爆破音或唇齿音。 

典型的声码器使用两套滤波器库,一个分析,一个合成,再加一个激励分析模块。分析滤波器库很象实时分析器中所使用的,音频信号被送到并联的带通滤波器,输出相应的直流电压。激励分析模块对基本频率和噪声属性进行检测和编码。重新合成的时候用编码的直流电平混合以激励分析模块的输出开关各个带通滤波器,组合成原始的语音信号。 

如果你到互联网上搜索关键词“声码器”,可以查出很多有关条目,不过大多数是用于通讯技术的。我们下面介绍主要使用于音乐的声码器。 

Keyboard杂志2000年第8期用许多篇幅刊登一组文章,专门谈声码器。介绍了诸多硬件、软件、合成器附带的声码器,花样繁多琳琅满目,有关内容将来我们再给大家介绍。作为开始,我们先讲声码器的工作原理。 

为了懂得声码器,需要弄明白声码器使用的3个基本成分--带通滤波器,包络跟随器和放大器。 

带通滤波器是一类仅允许规定频带的频率通过,阻挡其他的频率的滤波器。例如一个带通滤波器允许800到1200Hz的频率通过,更低的频率(如500Hz)和更高的频率(如2000Hz)都被阻挡不能通过。 

对这个例子还要加以补充说明:说通带的低端是800Hz,并不意味799Hz的信号完全不能通过。实际上通带以外的信号只是被衰减到某一程度,并按照一条曲线逐渐衰减。频率越低,衰减越大。这条曲线经常用每个八度多少分贝来形容,上例中假定斜率为24分贝/八度,400Hz的信号(较800Hz低一个八度)通过时将有24分贝的衰减;200Hz的信号(较800Hz低两个八度)通过时将有48分贝的衰减。高端的情况也一样。 

如果我们有一个基本频率500Hz的乐音送到前述的带通滤波器,它的基音和大部分谐波都将被阻挡,只有一次谐波1000Hz正处于滤波器的中心频率,可以顺利通过。二次谐波1500Hz在通频带之外,受到很大衰减,勉强漏过一些。四次谐波2000Hz就几乎完全被滤掉了。

包络跟随器感知信号的响度,然后送出一个与响度相关的控制信号,包络曲线描绘出响度变化的情况。通常也有包络参数可以由用户控制包络上升和衰退的特性。 

放大器似乎不用多说,它是一个电路或软件,能够放大信号,而且能控制放大量。声码器中的放大器根据包络跟随器输出的控制信号改变放大量。较老的模拟设备使用电压控制放大器,简称VCA,新的数字设备使用数字信号控制,但经常还按老习惯称作VCA。 

Vocoder声码器的主要设备包含2套带通滤波器,这些滤波器有规定的中心频率和带宽,仅能通过选定的频率。一套滤波器由若干滤波器库组成,它们的频率覆盖了整个听觉范围。例如使用一种带宽一个八度的滤波器,每一个滤波器的中心频率相差一个八度,如果一个滤波器的中心频率为1000Hz,它上方相邻的那一个中心频率就是2000Hz,下方相邻的那一个中心频率就是500Hz。它们的频率响应曲线将在八度的中部重叠,这3个滤波器的覆盖范围从250Hz到3000Hz。窄一些的滤波器带宽可以构成更精密的库(要使用更多的滤波器)。 

一个来自合成器的信号送到滤波库以后同时通过并联的滤波器,在输出端设有控制增益的部件(一个VCA),除了这个控制,其他工作情况很象是图形均衡器。VCA通常是关闭的,给某一个VCA进行控制,可以使这个带通滤波器的频率送往输出端。 

我们用另一个信号,比方说来自麦克风的信号(称为控制),通过另外一个结构完全与前面所述相同的滤波库,对它们的输出进行测量,得出一系列直流电压,用来控制前者相应滤波器的VCA。这样前一个滤波器库输出的各频率成分受到进入后一个滤波器库信号中相应频率成分的控制,声音发生变化。 

声码器要求2个输入信号,一个叫语音(speech);另一个叫载体(carrier)。许多合成器上的声码器使用内部的合成声音作载体。 

声码器的操作如,输入的语音信号经过一个带通滤波器库,被分割成多条并行的带,每条带被限制在很窄的频率范围之内,然后送往自己的包络跟随器。 

每条频带的包络跟随器测量指定时刻的声音能量,如果一条带内的语音信号由一个或更多明显的谐波,控制信号将送出高一些的包络;如果带内只有少量甚至没有显著幅度的谐波,控制信号将送出的包络就低一些。 

经过带通滤波器和包络跟随器的分析,语音信号此时变成多带调制源,它的本身已经没有意义了。 

语音信号被分析处理的同时,载体信号通过自己的带通滤波器库,它们的中心频率设置得与语音部分完全一致。载体信号同样被分割成多条并行的带,每条带被限制在很窄的频率范围之内。 

来自载体带的信号送往放大器库,而包络跟随器的输出则控制这些放大器的增益,这就造成载体带被印上语音带包络形状的印记。放大器的输出混合后输出,我们在输出端听到的是被改变了的载体声音。 

声码器的效果是带通滤波器、包络跟随器和放大器相互作用的结果。如果语音信号在某一频段包含许多谐波,相应频段载体中的谐波也将更多的通过放大器,因为此时放大器大开。但如果语音信号在某一频段的能量少些,包络跟随器就是低电平输出,这一频段的放大器增益减少,载体中该段谐波通过放大器的就少些。如果语音信号在某一频段完全没有能量,这一段的包络跟随器输出为0,放大器因此关闭,载体相应频段的谐波就被截止。 技术的考虑 总而言之,声码器仅仅能够对谐波作减法,而决不能加进行的谐波。因此用作载体的声音应该含有丰富的谐波。如果你试图用象长笛那样类似正弦波的音色作载体,将听不到声码器有什么效果。 

早期的声码器只能分8到10个频段,因为它们使用分立元件构成的硬件电路,每多加一段就会提高整机的成本。当声码器改由软件(DSP)来执行,频段很快就增加到16段以上。 

人类发音器官的结构使语音产生强烈的谐波共振,独特的架构。例如元音“ee”的声音就与“oo”大不相同,常使声码器发生错觉。 

语音信号经常在极高音区包含有重要的信息,例如子音中的齿音“s”和摩擦音“f”,甚至展宽的锯齿波合成音色被用于载体时也没有上述子音在极高音区有那么多的能量。结果有的声码器就在极高频区设一个开关,让齿音和摩擦音直接混合到载体信号,以增加清晰度。 

少数声码器如Clavia的Nord Modular和CreamWare的Pulsar允许将包络跟随器的输出交叉连接到非对应频段放大器,这样做的结果语音就变成听不懂的,但载体仍保有一个轮廓,表情的形状。交叉连接对打击乐循环被当作语音信号使用特别有效。你能选择一个含有很多能量的频段(例如低音鼓)连接到包含大量谐波的载体,载体的声音中就获得了低音鼓的节奏。这时的声码器实际已经成为一个可以选频率的门开关。 

还有的声码器让你调整各频段的输出电平或滤波器的斜率,或者能对载体或语音库之间的频率偏移编程,使一个库稍高(或低)与另一个以增加可理解度或创造一个变性效果。 

Roland JP-8080的声码器算法走得更远,它的包络跟随器输出能用作调制源,控制各种合成器参数。这就使语音输入可以成为多种合成效果的调制源。


(中国集群通信网 | 责任编辑:李俊勇)

中国集群通信网,国内首家集群通信专业网站。

Copyright © PttCn.Net, All Rights Reserved.   

联系我们 联系我们 中国集群通信网 对讲机学堂 对讲机世界