SoundIn.h
上传用户:zjb_0001
上传日期:2007-01-11
资源大小:154k
文件大小:1k
源码类别:

Audio

开发平台:

Visual C++

  1. // SoundIn.h: interface for the CSoundIn class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_SOUNDIN_H__DFF637AC_D133_4419_B4CA_241DFAC75789__INCLUDED_)
  5. #define AFX_SOUNDIN_H__DFF637AC_D133_4419_B4CA_241DFAC75789__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #include "soundbase.h"
  10. // CWinThread must be before CSoundBase -> and it's very difficult to debug!
  11. // Trust me!   Thomas.Holme@openmpeg4.org
  12. class CSoundIn : public CWinThread, public CSoundBase
  13. {
  14. DECLARE_DYNCREATE(CSoundIn)
  15. public:
  16. CSoundIn();
  17. virtual ~CSoundIn();
  18. // pointer to callback function
  19. void (*DataFromSoundIn)(CBuffer* buffer, void* Owner);
  20. void* m_pOwner;
  21. virtual void Stop();
  22. virtual bool Start(WAVEFORMATEX* format = NULL);
  23. static void waveInErrorMsg(MMRESULT result, LPCTSTR addstr);
  24. afx_msg void OnMM_WIM_DATA(UINT parm1, LONG parm2);
  25. DECLARE_MESSAGE_MAP()
  26. protected:
  27. BOOL InitInstance();
  28. int AddInputBufferToQueue();
  29. protected:
  30. bool m_bRecording;
  31. HWAVEIN m_hRecord;
  32. int m_QueuedBuffers;
  33. DWORD m_ThreadID;
  34. };
  35. #endif // !defined(AFX_SOUNDIN_H__DFF637AC_D133_4419_B4CA_241DFAC75789__INCLUDED_)