AVFile.h
上传用户:oldpeter23
上传日期:2013-01-09
资源大小:1111k
文件大小:1k
源码类别:

IP电话/视频会议

开发平台:

Visual C++

  1. /*------------------------------------------------------------------------------*
  2.  =============================
  3.    模块名称: AudioFile.h
  4.  =============================
  5.  [目的]
  6.  
  7.      封装了Audio File的操作    
  8.         
  9.  [描述]
  10. 该模块可以从文件输入输出语音  
  11.  
  12.  [用法]
  13.    
  14.     
  15.  
  16.  [依赖性]
  17.  
  18.  [修改记录]
  19.  
  20.   版本:    1.01.01
  21.   日期:    01-11-26        
  22.   作者:    Brant Q
  23.   备注:
  24.   
  25.  [版权]
  26.  
  27.    2000-2002  115软件工厂  版权所有
  28.                                               
  29. *------------------------------------------------------------------------------*/
  30. #ifndef _AVFILE_H_
  31. #define _AVFILE_H_
  32. #define VF_VER 1000
  33. #define SIZE_PACK 32
  34. #define VF_FLAG "VF1"
  35. typedef struct
  36. {
  37. char szFlag[4];
  38. int iVer;
  39. int iCheckSum;
  40. int nPack;
  41. int nBitPerSample;
  42. int nSamplePerPack;
  43. int nTime;
  44. } AUDIO_FILE_HEADER;
  45. class CAVFile
  46. {
  47. public:
  48. UINT GetNumOfPacks();
  49. BOOL SetNextPack(char*buf);
  50. BOOL SetPack(UINT nFrame,char* buf);
  51. BOOL Create(char* pszName);
  52. BOOL GetPack(UINT nFrame,char *buf);
  53. BOOL Seek(UINT nFrame);
  54. BOOL Close();
  55. BOOL GetNextPack(char* buf);
  56. BOOL Open(char* pszName);
  57. virtual  ~CAVFile();
  58. CAVFile();
  59. protected:
  60. AUDIO_FILE_HEADER m_vfh;
  61. void InitHeader(AUDIO_FILE_HEADER& vfh);
  62. BOOL m_bFlag;
  63. HANDLE m_hFile;
  64. };
  65. #endif