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

多媒体编程

开发平台:

Visual C++

  1. typedef struct _CPs_CoDecOptions
  2. {
  3.     int m_iPretendOption;
  4. } CPs_CoDecOptions;
  5. typedef void* CP_HCODECMODULE;  
  6. typedef void (*pfn_Uninitialise)(CP_HCODECMODULE hCoDec);
  7. //
  8. typedef BOOL (*pfn_OpenFile)(CP_HCODECMODULE hCoDec, const char* pcFilename, DWORD dwCookie, HWND hWndOwner);
  9. typedef void (*pfn_CloseFile)(CP_HCODECMODULE hCoDec);
  10. typedef void (*pfn_Seek)(CP_HCODECMODULE hCoDec, const int iNumerator, const int iDenominator);
  11. typedef void (*pfn_GetFileInfo)(CP_HCODECMODULE hCoDec, CPs_FileInfo* pInfo);
  12. //
  13. typedef BOOL (*pfn_GetPCMBlock)(CP_HCODECMODULE hCoDec, void* pBlock, DWORD* pdwBlockSize);
  14. typedef int (*pfn_GetCurrentPos_secs)(CP_HCODECMODULE hCoDec);
  15. //
  16. ///////////////////////////////////////////////////////////////////////////////
  17. typedef struct _CPs_CoDecModule
  18. {
  19.     pfn_Uninitialise Uninitialise;
  20.     pfn_OpenFile OpenFile;
  21.     pfn_CloseFile CloseFile;
  22.     pfn_Seek Seek;
  23.     pfn_GetFileInfo GetFileInfo;
  24.     pfn_GetPCMBlock GetPCMBlock;
  25.     pfn_GetCurrentPos_secs GetCurrentPos_secs;
  26.     void* m_pModuleCookie;
  27.     void* m_pFileAssociationCookie;
  28. } CPs_CoDecModule;
  29. ////////////////////////////////////////////////////////////////////////////////
  30. void CPFA_InitialiseFileAssociations(CPs_CoDecModule* pCoDec);
  31. void CPFA_EmptyFileAssociations(CPs_CoDecModule* pCoDec);
  32. void CPFA_AddFileAssociation(CPs_CoDecModule* pCoDec, const char* pcExtension, DWORD dwCookie);
  33. BOOL CPFA_IsAssociated(CPs_CoDecModule* pCoDec, const char* pcExtension, DWORD* pdwCookie);
  34. void CPFA_AssociateWithEXE(CPs_CoDecModule* pCoDec);
  35. void CP_InitialiseCodec_MPEG(CPs_CoDecModule* pCoDec);
  36. void CP_InitialiseCodec_WAV(CPs_CoDecModule* pCoDec);
  37. //void CP_InitialiseCodec_OGG(CPs_CoDecModule* pCoDec);
  38. //void CP_InitialiseCodec_WinAmpPlugin(CPs_CoDecModule* pCoDec);