home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 24 / CD_ASCQ_24_0995.iso / vrac / visvideo.zip / MPEG.H_ / MPEG.bin
Text File  |  1994-08-30  |  4KB  |  129 lines

  1. #ifdef DOSLIB
  2.    typedef unsigned char  BYTE;
  3.    typedef unsigned int   UINT;
  4.    typedef unsigned short WORD;
  5.    typedef unsigned long  DWORD;
  6.    typedef long           LONG;
  7.    typedef BYTE huge *    HANDLE;
  8.    typedef int            BOOL;
  9.    typedef char far *     LPSTR;
  10.    typedef char *         LPCSTR;
  11.  
  12.    #define FAR
  13.    #define PASCAL
  14.    #define TRUE       1
  15.    #define FALSE      0
  16. #endif
  17.  
  18.  
  19. // Define error code
  20. #define EVIGAMPEG        -1 // MPEG Board not ready
  21. #define EMSCDEX          -2 // MSCDEX not installed
  22. #define EDRIVE           -3 // CD-ROM not attached
  23. #define EMPEGFile        -4 // Open MPEG file error
  24. #define EBitStream       -5 // Read Bitstream error
  25. #define EVXD             -6 // VxD error
  26. #define EVolumeSize      -7 // Get Volume Size error
  27. #define EInitCDROM       -8 // Init CD ROM error
  28. #define ESeekTop         -9 // Seek to Top track error
  29. #define EInitVideo      -10 // Init Video error
  30. #define EInitAudio      -11 // Init Audio error
  31. #define EMEM            -12 // Memory error
  32. #define EReadCD         -13 // Read CD-ROM error
  33. #define EDecodeAudio    -14 // Decode Audio error
  34. #define EResetCD        -15 // Reset CD-ROM error
  35. #define EWINENH         -16 // Windows not under Enhanced mode
  36. #define EDMA            -17 // Initial DMA error
  37. #define ESectorSize     -18 // Read CD sector size error
  38. #define EGetStartSector -19 // Get start sector error
  39. #define EGetLastSector  -20 // Get start sector error
  40. #define ESeek           -21 // Seek error
  41. #define EInited         -22 // Initialized but not exit yet (WMpegExit)
  42. #define ECDReady        -23 // CD-ROM not ready
  43.  
  44.  
  45. // Define Video Source Type
  46. #define NTSC      (UINT)1
  47. #define PAL       (UINT)2
  48.  
  49. // Define mode to adjust display screen
  50. #define SCREEN_UP 1
  51. #define SCREEN_DN 2
  52. #define SCREEN_LF 3
  53. #define SCREEN_RT 4
  54.  
  55. // Define Disc type
  56. #define ALL             1
  57. #define KARAOKE         2
  58. #define CDIFMV          3
  59.  
  60. #define NPF        0x01      // normal play forward
  61. #define SFF        0x02      // single frame forward
  62. #define FMF        0x04      // fast motion forward
  63. #define SMF        0x08      // slow motion forward
  64. #define PAU        0x10      // pause
  65. #define STP        0x20      // stop,idle
  66.  
  67. // Define error code for video chip
  68. #define EM_FFERR     1003
  69. #define EM_HAERR     1004
  70. #define EM_BSERR     1005
  71. #define EM_SBERR     1006
  72. #define EM_VSYNCERR  1007
  73. #define EE_EMPTY     1010
  74.  
  75. #define RGB24        0
  76. #define YUV16        1
  77.  
  78. // Video/VGA output switcher
  79. #define VGA          0
  80. #define VIDEO        1
  81.  
  82. // Define struct for current configuration
  83. #ifndef MPEGCONFIG
  84.    typedef struct _MpegConfig{
  85.       UINT IOBaseA;     // audio base IO
  86.       UINT IOBaseV;     // video base IO
  87.       UINT VideoSource; // NTSC,  PAL
  88.       UINT VideoFormat; // RGB24, YUV16
  89.       UINT DMA;         // DMA channel
  90.       UINT IRQ;         // IRQ number  (1 interrupt version only)
  91.       UINT IRQA;        // audio IRQ   (3 interrupt version only)
  92.       UINT IRQV;        // video IRQ   (3 interrupt version only)
  93.       UINT IRQAV;       // AV sync IRQ (3 interrupt version only)
  94.    }MpegConfig;
  95.    typedef MpegConfig far *   LPMPEGCONFIG;
  96.  
  97.    typedef struct _MSFTime{
  98.       BYTE min;
  99.       BYTE sec;
  100.       BYTE frm;
  101.    }MSFTime;
  102.    typedef MSFTime far *   LPMSFTime;
  103.  
  104.    #define MPEGCONFIG
  105. #endif
  106.  
  107.  
  108. int  FAR PASCAL WMpegInit (UINT);
  109. void FAR PASCAL WMpegCommand (int);
  110. int  FAR PASCAL WMpegLoad(int ,char far *,WORD,int,int);
  111. int  FAR PASCAL WMpegPlayEnable (LPMSFTime);
  112. int  FAR PASCAL WMpegTransfer (void);
  113. void FAR PASCAL WMpegAdjustScreen (int);
  114. void FAR PASCAL WMpegPicture(LPSTR,int,int);
  115. void FAR PASCAL WMpegGOP (void);
  116. int  FAR PASCAL WMpegGetCDSongs (int);
  117. int  FAR PASCAL WMpegGetCDDriveID (void);
  118. int  FAR PASCAL WMpegGetCDDiscType (int,LPSTR);
  119. void FAR PASCAL WMpegExit (void);
  120. void FAR PASCAL WMpegAudioEnable (BOOL);
  121. int  FAR PASCAL WMpegSwitcher (int);
  122. void FAR PASCAL WMpegGetConfig (LPMPEGCONFIG);
  123. UINT FAR PASCAL WMpegGetTrackTime (int,int,LPSTR);
  124. UINT FAR PASCAL WMpegGetCurrentPTS (void);
  125.  
  126. #ifdef DOSLIB
  127. int GetPrivateProfileString(LPCSTR,LPCSTR,LPCSTR,LPSTR,int,LPCSTR);
  128. #endif
  129.