如何从C中的麦克风中捕获WAVaudio输入?

时间:2015-12-09 08:52:11

标签: c wav microphone

如何通过c中的麦克风为Windows 8捕获WAV文件的音频输入?我已经搜索过了,但是找不到我想要的方式。我不想使用任何其他软件工具,我想用 C编程语言。我的朋友建议我使用不同的语言,如java或更改IDE。我想首先确定它不是用C语言完成的,使用Dev-C ++和任何其他工具。现在我想知道这是否可用,因为我找不到这样的C函数来从实时输入中捕获音频。我正在使用Dev-C ++ IDE。如果它来自HDD中的存储文件,我可以读取和处理。我很感激任何提示

对于已存储在光盘中的文件,我有以下代码段:

 if ((wptr1 = fopen(wavContent1, "rb")) == NULL)
 {
 printf("Cannot open the input file\n");
 ret = FAIL;
 }
 else if ( (wptr2 = fopen((wavContentout), "wb")) == NULL )
 {
 printf("Cannot open the output file\n");
 ret = FAIL;
 }
 else {
   hdInfo=malloc(sizeof(header)) ;      
   writeReadable(wptr1,wptr2);
   fclose(wptr2);
   fclose(wptr1);

  }

对于函数writeReadable(),我有以下缩短的代码:

  void writeReadable(FILE *wavin, FILE *wavout){
  int BUFSIZE=128;      
  int buff[BUFSIZE];
  int* buf=buff;

    fread(hdInfo, sizeof(header), 1, wavin);
    fwrite(hdInfo, sizeof(*hdInfo), 1, wavout);

   while (!feof(wavin))
   {
    fread(buff, BUFSIZE, 1, wavin);
    fwrite(buff, BUFSIZE, 1, wavout);
    size= size + BUFSIZE;
    count++;           
    } 
   size=size + sizeof(*hdInfo);
  }

0 个答案:

没有答案