void CloseDevice() { MMRESULT mRes=0; if(m_hWaveIn) { UnPrepareBuffers(); mRes=waveInClose(m_hWaveIn); } if(m_hOPFile) { mRes=mmioAscend(m_hOPFile, &m_stckOut, 0); if(mRes!=MMSYSERR_NOERROR) { FAIL_M("bad"); } mRes=mmioAscend(m_hOPFile, &m_stckOutRIFF, 0); if(mRes!=MMSYSERR_NOERROR) { FAIL_M("bad"); } mmioClose(m_hOPFile,0); m_hOPFile=NULL; } m_hWaveIn=NULL; }
VOID CSoundRecDlg::CloseDevice() { MMRESULT mRes=0; if(m_hWaveIn) { UnPrepareBuffers(); mRes=waveInClose(m_hWaveIn); } if(m_hOPFile) { mRes=mmioAscend(m_hOPFile, &m_stckOut, 0); if(mRes!=MMSYSERR_NOERROR) { StoreError(mRes,FALSE,"File: %s ,Line Number:%d",__FILE__,__LINE__); } mRes=mmioAscend(m_hOPFile, &m_stckOutRIFF, 0); if(mRes!=MMSYSERR_NOERROR) { StoreError(mRes,FALSE,"File: %s ,Line Number:%d",__FILE__,__LINE__); } mmioClose(m_hOPFile,0); m_hOPFile=NULL; } m_hWaveIn=NULL; // Close FAAC encoder int nRet = faacEncClose(m_hAACEncoder); m_hAACEncoder = 0; if (m_pbAACBuffer) delete[] m_pbAACBuffer; m_pbAACBuffer = NULL; if (m_fpAACOutput) fclose(m_fpAACOutput); m_fpAACOutput = NULL; }