基于DSP5502的男女声变换系统代码求助
时间:10-02
整理:3721RD
点击:
这是我自己小编的一个基于重采样原理的男女声变换程序,但是效果很差,自己也是第一次接触DSP,不是很了解,希望诸位大神指点一下!注释的那部分代码只是做了简单的男女声频谱搬移,效果也不理想,所以想琢磨用重采样的方法。在线等啊!
void change(Int16 *inbuf, Int16 *outbuf, Int16 length)
{
Int16 a=8;
Int16 b=6;
Int q;
Int i;
Int m;
DATA *dbptr = &db[0];
for (i = 0; i 29;i--)
// temp[i] = temp[i-30];
// for(i=0;i 5)
//
// { for (i=0;i length/2+21;i--)
// temp[i] = temp[i-22];
// for(i=length/2;i<length/2+22;i++)
// temp[i]=0;
//
// }
//
// cifft(temp,512,NOSCALE);
//cbrev(temp,temp,512);
// fir(temp, h, out_buffer, dbptr, 512, 16);
//
for (i = 0; i < length/2; i++) {
inbuf[2*i]=temp[2*i] ;
}
for (i = 0; i < length; i++) {
outbuf[i] = inbuf[i];
}
}
void change(Int16 *inbuf, Int16 *outbuf, Int16 length)
{
Int16 a=8;
Int16 b=6;
Int q;
Int i;
Int m;
DATA *dbptr = &db[0];
for (i = 0; i 29;i--)
// temp[i] = temp[i-30];
// for(i=0;i 5)
//
// { for (i=0;i length/2+21;i--)
// temp[i] = temp[i-22];
// for(i=length/2;i<length/2+22;i++)
// temp[i]=0;
//
// }
//
// cifft(temp,512,NOSCALE);
//cbrev(temp,temp,512);
// fir(temp, h, out_buffer, dbptr, 512, 16);
//
for (i = 0; i < length/2; i++) {
inbuf[2*i]=temp[2*i] ;
}
for (i = 0; i < length; i++) {
outbuf[i] = inbuf[i];
}
}