常见的变声技术有哪些

网易智企 TOP1 761

常见的变声技术包括:1. Flanging(镶边) ;2.Tremolo(颤音) ;3. Distortion (失真)。变调不变速算法可以改变语音语调,从而实现男生变女生等效果。但通常变声技术的音效都具有模块性,即特定的变声效果需要特定的变声模块。

1.Flanging(镶边)

Flanging 即镶边的意思。Flanging 叠加原始信号和延时后的信号,抵消和加强某些谐波频率,进而在信号频谱上产生峰谷点。

基本实现原理如下:

C:\Users\shushujuan\Documents\WeChat Files\wxid_29l93btwu7a722\FileStorage\Temp\ffbf12762d3b25b46573ce40790c43f9.jpg

增加和削弱的频谱如下:

C:\Users\shushujuan\Documents\WeChat Files\wxid_29l93btwu7a722\FileStorage\Temp\12a877cd1a6710c4f11b52a808d60f93.jpg

2.Tremolo(颤音)

Tremolo 即颤音的意思。其实现原理是用低频信号调制原始语音信号,进而产生颤栗、悠远的感觉。其实现公式如下所示:

C:\Users\shushujuan\Documents\WeChat Files\wxid_29l93btwu7a722\FileStorage\Temp\ed171ba96b3f6ad77b374874c509f907.jpg

3.Distortion(失真)

Distortion 即失真的意思。在以前,收音机、电话机和广播播放出来的声音,存在一定的线性和非线性失真,进而产生特有的失真音效。在一些影视作品中,为了模仿这种效果,会使用一些失真器,让作品具备年代感。

简单的失真器原理如图所示:

C:\Users\shushujuan\Documents\WeChat Files\wxid_29l93btwu7a722\FileStorage\Temp\ba93dd8e5e6d36ef3ad1e57efc79ab32.jpg 对应公式如下:

C:\Users\shushujuan\Documents\WeChat Files\wxid_29l93btwu7a722\FileStorage\Temp\96fc5ab73701740e7a9d531259e8b08b.jpg

其产生的谐波失真如下所示: C:\Users\shushujuan\Documents\WeChat Files\wxid_29l93btwu7a722\FileStorage\Temp\ba2c8e88c794e03300f60c8c6c1aa9e6.jpg

延伸阅读

音频社交的变声是如何实现的?

当我们日常观看视频时,有时会使用倍速播放。在加快播放速度时,我们会感觉视频中的男声听起来有点像“女声”;在放慢播放速度时,我们能听到类似于《疯狂动物城》中那个说话慢吞吞的“树懒声”。这些其实就是简单的变声。

从技术的角度并不难理解,如果我们用16k的采样率去采集一个100Hz的正弦波,而用32k或者8k的采样率去播放的话,那么这个正弦波的频率就会提升一倍(200Hz)或者降低一倍(50Hz)。这样将音频的频率升高或者降低的方法很简单,提升一倍就是每隔一个丢弃一个样本,放慢一倍就是进行一个线性插值。用专业的术语来说,这是一个重采样的过程。按照重采样方法是可以实现一个变调的,但同时也很容易发现,音频的时间变长或者变短了,和我们原始输入的音频长度不一致了,这在实时通信中是不能接受的。在实时通信中,我们要的是一个变调不变速的变声功能,单一的重采样方法是做不到的。当然除了重采样,我们还有其他的一些变声方法能够实现变调不变速的需求。

变声常用的算法

常见的变调算法有时域、频域和参量法。时域较易实现,多采用变速不变调+重采样实现变调不变速等。频域以及参量法就相对复杂,并且计算量相比于时域大了很多。本次主要简单介绍一些常见的时域和频域算法。

在时域内主要是OLA(Overlap-Add)类算法:OLA,同步波形叠加法(Synchronized Overlap-Add, SOLA)、固定同步波形叠加法(Synchronized Overlap-Add and Fixed Synthesis, SOLAFS)、时域基音同步叠加法(Time-Domain Pitch Synchronized Overlap-Add, TD-PSOLA) 波形相似叠加法(waveform similarity overlap-and-add, WSOLA)等,频域内主要是基音同步波形叠加算法(Pitch-Synchronized OLA, PSOLA)等。

回复

我来回复
  • 暂无回复内容

注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部