home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DP Tool Club 24
/
CD_ASCQ_24_0995.iso
/
vrac
/
visvideo.zip
/
MPEG.H_
/
MPEG.bin
Wrap
Text File
|
1994-08-30
|
4KB
|
129 lines
#ifdef DOSLIB
typedef unsigned char BYTE;
typedef unsigned int UINT;
typedef unsigned short WORD;
typedef unsigned long DWORD;
typedef long LONG;
typedef BYTE huge * HANDLE;
typedef int BOOL;
typedef char far * LPSTR;
typedef char * LPCSTR;
#define FAR
#define PASCAL
#define TRUE 1
#define FALSE 0
#endif
// Define error code
#define EVIGAMPEG -1 // MPEG Board not ready
#define EMSCDEX -2 // MSCDEX not installed
#define EDRIVE -3 // CD-ROM not attached
#define EMPEGFile -4 // Open MPEG file error
#define EBitStream -5 // Read Bitstream error
#define EVXD -6 // VxD error
#define EVolumeSize -7 // Get Volume Size error
#define EInitCDROM -8 // Init CD ROM error
#define ESeekTop -9 // Seek to Top track error
#define EInitVideo -10 // Init Video error
#define EInitAudio -11 // Init Audio error
#define EMEM -12 // Memory error
#define EReadCD -13 // Read CD-ROM error
#define EDecodeAudio -14 // Decode Audio error
#define EResetCD -15 // Reset CD-ROM error
#define EWINENH -16 // Windows not under Enhanced mode
#define EDMA -17 // Initial DMA error
#define ESectorSize -18 // Read CD sector size error
#define EGetStartSector -19 // Get start sector error
#define EGetLastSector -20 // Get start sector error
#define ESeek -21 // Seek error
#define EInited -22 // Initialized but not exit yet (WMpegExit)
#define ECDReady -23 // CD-ROM not ready
// Define Video Source Type
#define NTSC (UINT)1
#define PAL (UINT)2
// Define mode to adjust display screen
#define SCREEN_UP 1
#define SCREEN_DN 2
#define SCREEN_LF 3
#define SCREEN_RT 4
// Define Disc type
#define ALL 1
#define KARAOKE 2
#define CDIFMV 3
#define NPF 0x01 // normal play forward
#define SFF 0x02 // single frame forward
#define FMF 0x04 // fast motion forward
#define SMF 0x08 // slow motion forward
#define PAU 0x10 // pause
#define STP 0x20 // stop,idle
// Define error code for video chip
#define EM_FFERR 1003
#define EM_HAERR 1004
#define EM_BSERR 1005
#define EM_SBERR 1006
#define EM_VSYNCERR 1007
#define EE_EMPTY 1010
#define RGB24 0
#define YUV16 1
// Video/VGA output switcher
#define VGA 0
#define VIDEO 1
// Define struct for current configuration
#ifndef MPEGCONFIG
typedef struct _MpegConfig{
UINT IOBaseA; // audio base IO
UINT IOBaseV; // video base IO
UINT VideoSource; // NTSC, PAL
UINT VideoFormat; // RGB24, YUV16
UINT DMA; // DMA channel
UINT IRQ; // IRQ number (1 interrupt version only)
UINT IRQA; // audio IRQ (3 interrupt version only)
UINT IRQV; // video IRQ (3 interrupt version only)
UINT IRQAV; // AV sync IRQ (3 interrupt version only)
}MpegConfig;
typedef MpegConfig far * LPMPEGCONFIG;
typedef struct _MSFTime{
BYTE min;
BYTE sec;
BYTE frm;
}MSFTime;
typedef MSFTime far * LPMSFTime;
#define MPEGCONFIG
#endif
int FAR PASCAL WMpegInit (UINT);
void FAR PASCAL WMpegCommand (int);
int FAR PASCAL WMpegLoad(int ,char far *,WORD,int,int);
int FAR PASCAL WMpegPlayEnable (LPMSFTime);
int FAR PASCAL WMpegTransfer (void);
void FAR PASCAL WMpegAdjustScreen (int);
void FAR PASCAL WMpegPicture(LPSTR,int,int);
void FAR PASCAL WMpegGOP (void);
int FAR PASCAL WMpegGetCDSongs (int);
int FAR PASCAL WMpegGetCDDriveID (void);
int FAR PASCAL WMpegGetCDDiscType (int,LPSTR);
void FAR PASCAL WMpegExit (void);
void FAR PASCAL WMpegAudioEnable (BOOL);
int FAR PASCAL WMpegSwitcher (int);
void FAR PASCAL WMpegGetConfig (LPMPEGCONFIG);
UINT FAR PASCAL WMpegGetTrackTime (int,int,LPSTR);
UINT FAR PASCAL WMpegGetCurrentPTS (void);
#ifdef DOSLIB
int GetPrivateProfileString(LPCSTR,LPCSTR,LPCSTR,LPSTR,int,LPCSTR);
#endif