CPI_Player_Output.h
上传用户:tuheem
上传日期:2007-05-01
资源大小:21889k
文件大小:2k
源码类别:

多媒体编程

开发平台:

Visual C++

  1. typedef void* CP_HOUTPUTMODULE;  
  2. typedef void (*pfnOP_Initialise)(CP_HOUTPUTMODULE pModule, const CPs_FileInfo* pFileInfo, CP_HEQUALISER hEqualiser);
  3. typedef void (*pfnOP_Uninitialise)(CP_HOUTPUTMODULE pModule);
  4. typedef void (*pfnOP_RefillBuffers)(CP_HOUTPUTMODULE pModule);
  5. typedef void (*pfnOP_SetPause)(CP_HOUTPUTMODULE pModule, const BOOL bPause);
  6. typedef BOOL (*pfnOP_IsOutputComplete)(CP_HOUTPUTMODULE pModule);
  7. typedef void (*pfnOP_Flush)(CP_HOUTPUTMODULE pModule);
  8. typedef void (*pfnOP_OnEQChanged)(CP_HOUTPUTMODULE pModule);
  9. typedef void (*pfnOP_SetInternalVolume)(CP_HOUTPUTMODULE pModule, const int iNewInternalVolume);
  10. ////////////////////////////////////////////////////////////////////////////////
  11. typedef struct _CPs_OutputModule
  12. {
  13.     pfnOP_Initialise Initialise;
  14.     pfnOP_Uninitialise Uninitialise;
  15.     pfnOP_RefillBuffers RefillBuffers;
  16.     pfnOP_SetPause SetPause;
  17.     pfnOP_IsOutputComplete IsOutputComplete;
  18.     pfnOP_Flush Flush;
  19.     pfnOP_OnEQChanged OnEQChanged;
  20.     pfnOP_SetInternalVolume SetInternalVolume;
  21.     CPs_CoDecModule* m_pCoDec;
  22.     HANDLE m_evtBlockFree;
  23.     const char* m_pcModuleName;
  24.     CP_HEQUALISER m_pEqualiser;
  25.     void* m_pModuleCookie;  
  26. } CPs_OutputModule;
  27. ////////////////////////////////////////////////////////////////////////////////
  28. void CPI_Player_Output_Initialise_WaveMapper(CPs_OutputModule* pModule);
  29. void CPI_Player_Output_Initialise_DirectSound(CPs_OutputModule* pModule);
  30. void CPI_Player_Output_Initialise_File(CPs_OutputModule* pModule);
  31. ////////////////////////////////////////////////////////////////////////////////