20180824 SOLA算法实现

本文详细介绍了SOLA算法在语音变调中的应用,包括其原理、代码实现过程中遇到的问题,如叠加系数错误、C语言中qsort的使用,以及算法的缺陷,特别是音频杂音的产生。
摘要由CSDN通过智能技术生成

20180824 SOLA算法实现

一、SOLA算法应用场景

实现变声算法时,通过重采样可以同时改变声音的音调和速度。如果想要实现仅变调不变速,需要在重采样的基础上进行时长规整,时长规整可以通过SOLA算法实现。

二、SOLA算法实现原理

可参考论文《语音变调算法研究及其在语音合成中的应用_张晓蕊》的2.1.2.2的讲解

三、代码实现遇到的具体问题

1 叠加系数
论文中提到的叠加公式的系数写反了,应该交换。叠加的目的是减少叠加后出现陡变(陡变会造成杂音),所以靠近y的部分y的比重更大, 靠近x的部分x的比重更大。
2 待做:SOLA算法的参数设置待调试
3 C语言中(而非c++)自带排序算法的实现qsort
c++中自带泛型的排序算法,需要包含头文件#include<algorithm> ,C语言则不能使用
C语言中也包含自带的快排算法qsort,需要包含头文件#include<stdlib>
qsort算法的基本用法可以参考菜鸟教程中的介绍
qsort基本用法
需要特别注意的qsort排序的对象的类型有很多种,如果需要改变排序对象的类型,可以修改cmpfuc函数

int cmpfunc (const void * a, const void * b)
{
   ret
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值