📄 upsampling.c
字号:
//#include <stdio.h>
//#include "upsampling.h"
void upsampling( short *out, const float *in, int input_size, int upfactor) {
int i ;
int k ;
for (i=0;i<input_size;i++){
for (k=0;k<upfactor;k++) {
out[2*((i*upfactor)+k)]= (short)(32767*in[i]);
out[2*((i*upfactor)+k)+1]= (short)(-32767*in[i]);
}
}
}
//function that add zeros betzeen symbols, and zeros at the beginning and at the end
void upsampling2(const float *in, float *out,
const int input_size, const int upfactor) {
int i ;
memset((void *)out, 0, (input_size*upfactor+160)*sizeof(float));
//for(i=0;i<(input_size*upfactor)+160;i++){out[i]=0;}
for (i=0;i<input_size;i++){
out[i*upfactor+80]=in[i];
}
}
// in should have downfactor more values than out. output_size defines the size of out.
void downsampling(short *out, short *in, short output_size, short downfactor)
{
short i;
for (i=0; i<output_size; i++)
{
// Take value 3 and 4, of 5 values, and take the mean.
out[i] = ((in[i*downfactor+1]+in[i*downfactor+2])>>2);
//out[i] _avg2(in[i*downfactor+2], in[i*downfactor+3]);
}
}
//function that add zeros betzeen symbols, and zeros at the beginning and at the end
void upsampling3(const float *in, float *out,
const int input_size, const int upfactor) {
int i ;
memset((void *)out, 0, (input_size*upfactor+80)*sizeof(float));
//for(i=0;i<(input_size*upfactor)+160;i++){out[i]=0;}
for (i=0;i<input_size;i++){
out[i*upfactor+40]=in[i];
}
}
// in should have downfactor more values than out. output_size defines the size of out.
void downsampling2(short *out, short *in, short output_size, short downfactor)
{
short i;
for (i=0; i<output_size; i++)
{
// Take value 3 and 4, of 5 values, and take the mean.
out[i] = ((in[i*downfactor]+in[i*downfactor+1])>>2);
//out[i] _avg2(in[i*downfactor+2], in[i*downfactor+3]);
}
}
/*
void main(){
int i;
int j;
float output[OUTBUFFSIZE];
float input[] = {1,2,3,4,5,6,7,8,9,10};
upsampling(input, output, input_size);
for(j=0;j<input_size;j++){
printf("%f \n",input[j]);
}
for(i=0; i<output_size; i++){
printf("%f \n",output[i]);
}
}
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -