⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testecho.c

📁 wince下著名的视频播放器源码
💻 C
字号:
#ifdef HAVE_CONFIG_H#include "config.h"#endif#include <stdio.h>#include <stdlib.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <unistd.h>#include "speex/speex_echo.h"#include "speex/speex_preprocess.h"#define NN 160int main(int argc, char **argv){   int echo_fd, ref_fd, e_fd;   float noise[NN+1];   short echo_buf[NN], ref_buf[NN], e_buf[NN];   SpeexEchoState *st;   SpeexPreprocessState *den;   if (argc != 4)   {      fprintf (stderr, "testecho mic_signal.sw speaker_signal.sw output.sw\n");      exit(1);   }   echo_fd = open (argv[2], O_RDONLY);   ref_fd  = open (argv[1],  O_RDONLY);   e_fd    = open (argv[3], O_WRONLY | O_CREAT | O_TRUNC, 0644);   st = speex_echo_state_init(NN, 8*NN);   den = speex_preprocess_state_init(NN, 8000);   while (read(ref_fd, ref_buf, NN*2))   {      read(echo_fd, echo_buf, NN*2);      speex_echo_cancel(st, ref_buf, echo_buf, e_buf, noise);      speex_preprocess(den, e_buf, noise);      write(e_fd, e_buf, NN*2);   }   speex_echo_state_destroy(st);   speex_preprocess_state_destroy(den);   close(e_fd);   close(echo_fd);   close(ref_fd);   return 0;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -