赞
踩
本文是变声导论-变声器原理及实现的第二篇,因为很多的知识点基于上一篇的内容,如果你没有看过上一篇的内容,笔者仍然建议你先读第一篇的内容:
DBinary:变声导论-变声器原理及实现(核心算法实现篇)zhuanlan.zhihu.com在上一章的内容中,我们使用重采样和相位声码器实现了变调不变速,而在本章节中,我们将重点放在提升语音质量上.
在我们开始讲解滤波器之前,我们仍然回顾一下上一篇文章所要讲述的内容,首先,我们明确一点,变声的主要目的,是让一个音在时域或者说频域上,尽可能和要变声的音相近,为此为了举例方便,我们以笔者的po~音和钉宫的po~音做比对,打开SoundLab,分别分析笔者的po~音和钉宫的po~音异同之处 :
可以看到,在红线(垂直线)处标注的第一共振峰(基音)的频率钉宫的大约是473HZ,而笔者的大约是205HZ,因此,笔者的po音如果想要变成钉宫的po音,第一步应该是移调(pitchshift),这正是我们上一章节做的工作,为此,点击SoundLab右上角中的APT,点击pitchshift,对音进行移调:
当我们使用变调方法将基音频率拉高到500HZ左右的时候,可以看到已经有钉宫音的味道了,但效果并不能算非常理想,显然,一个音的音色,不仅仅是由音调来决定的,为此,我们放上了变调后的频域图进行进一步的对比
一个明显的区别是,即使经过了变调,笔者的音和钉宫的音在频域特性上仍然存在较大的差异,一个是基音与不同泛音能量占比的不同,因此如果要进一步变调,设计一个权重滤波器,对各个频率进行进一步缩放调整是一个不错的选择.
在上一章节我们已经提及,我们使用长度为1024的分析帧对语音信号处理,因此,经过STFT变换后的频域长度也是1024,鉴于STFT的共轭对称性,我们只需要设置前513个分量的权值就可以了.因为该滤波器是一个频域滤波器,因此,我们仅需要在相位声码器进行信号重建的逆变换之前,将频域分量乘以对应的权值就可以了.
因此在SoundLab中,提供了一个滤波器编辑器,仅需要在APT界面中点击左上角的Filter,就可以创建一个简单的权值滤波器,通过上下拉动节点,对滤波器进行编辑,当然,滤波器的单位是dB,关于比值单位,你可以在其它地方找到相关的资料[1]
尽管权值滤波器提供了一种权值关系的频域缩放操作,但仅仅靠缩放来完成调音操作是不够的,为此,我们还需要提供一个频域
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。