📄 echo.c
字号:
//Echo effects with fading
//3 sliders to control effects: buffer size, amplitude, fading
#include "DSK6713_AIC23.h" //codec-DSK file support
Uint32 fs=DSK6713_AIC23_FREQ_16KHZ; //set sampling rate
short input, output;
short buffer[8000]; //max size of buffer
short bufferlength = 1000; //initial buffer size
short i = 0; //buffer index
short delay = 3; //determines size of buffer
short delay_flag = 1; //flag if buffer size changes
short amplitude = 5; //amplitude control by slider
short echo_type = 1; //1 for fading (0 for no fading)
main()
{
comm_poll(); //init DSK, codec, McBSP
while(1) //infinite loop
{
short new_count; //count for new buffer
output=input+0.1*amplitude*buffer[i]; //newest+oldest sample
if (echo_type == 1) //if fading is desired
{
new_count = (i-1) % bufferlength; //previous buffer location
buffer[new_count] = output; //to store most recent output
}
output_sample(output); //output delayed sample
input = input_sample(); //newest input sample data
if (delay_flag != delay) //if delay has changed
{ //->new buffer size
delay_flag = delay; //reint for future change
bufferlength = 1000*delay; //new buffer length
i = 0; //reinit buffer count
}
buffer[i] = input; //store input sample
i++; //increment buffer index
if (i == bufferlength) i=0; //if @ end of buffer reinit
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -