有无对声卡录音的源码,或者稍微具体的思路
象TotalRecorder类似功能的DirectSound或者wave API的都可以

解决方案 »

  1.   

    directsound有一个例子,你安装directX就可以看到,很好用!
      

  2.   

    首先用WaveInOpen打开了声卡,然后用WaveInPrepareHeader,和WaveInAddBuffer准备录音,最后用WaveInStart启动录音过程 例:WAVEFORMATEX waveformat;
    waveformat.wFormatTag=WAVE_FORMAT_PCM;
    waveformat.nChannels=1;
    waveformat.nSamplesPerSec=8000;
    waveformat.nAvgBytesPerSec=16000;
    waveformat.nBlockAlign=2;
    waveformat.cbSize=0;
    waveformat.wBitsPerSample=16; //指定录音格式
    int res=waveInOpen(&m_hWaveIn,WAVE_MAPPER, &waveformat, (DWORD)m_hWnd,0L,CALLBACK_WINDOW); //打开录音设备
    waveInPrepareHeader(m_hWaveIn,m_pWaveHdr[i],sizeof(WAVEHDR)); //准备内存块录音
    waveInAddBuffer(m_hWaveIn,m_pWaveHdr[i],sizeof(WAVEHDR)); //增加内存块
    waveInStart(m_hWaveIn);//开始录音
    waveInStop(m_hWaveIn); //停止录音
    waveInReset(m_hWaveIn); //清空内存块
    waveInClose(m_hWaveIn); //关闭录音设备
      

  3.   

    API 层实现语音录制
    http://www.csdn.net/Develop/article/17%5C17627.shtm
      

  4.   

    我想截获声卡的输出,直接数字录音
    比如录下语音聊天,流媒体的在线音乐,
    比如象TotalRecorder,
    它的广告号称是做了一个虚拟声卡,所有音频信号先经过虚拟声卡,然后再转给物理声卡另外看到一些文章说,只需要将录音的输入设备号,设为声卡输出设备就可以
    但是我没有试成功。
    楼上几位朋友可能误解我的意思了,呵呵