📄 digitalv.h
字号:
* SEND_DGVSIGNAL(dwFlags, dwCallback, hDriver, wDeviceID, dwUser, dwPos )
*
* The following is a description of the parameters:
*
* dwFlags - the dwFlags parameter passed when the signal was set
* dwCallback - the dwCallback value from the MCI_DGV_SIGNAL_PARMS struct
* used to set the signal
* hDriver - the handle assigned to the driver by MMSYSTEM when the
* device was opened
* wDeviceID - the device ID
* dwUser - the dwUserParm value from the MCI_DGV_SIGNAL_PARMS struct
* used to set the signal
* dwPos - the position at which the signal was sent, in the current
* time format.
*
* The window indicated by the handle in the dwCallback field is notified
* by means of a Windows message with the following form:
*
* msg = MM_MCISIGNAL
* wParam = wDeviceID of the sending driver
* lParam = the uservalue specified or the position the signal was sent
* at; the latter if the MCI_DGV_SIGNAL_POSITION flag was set
* in the dwFlags parameter when the signal was created.
*/
#define SEND_DGVSIGNAL(dwFlags, dwCallback, hDriver, wDeviceID, dwUser, dwPos ) \
DriverCallback( (dwCallback), DCB_WINDOW, (HANDLE)(wDeviceID), MM_MCISIGNAL,\
hDriver, ((dwFlags) & MCI_DGV_SIGNAL_POSITION) ? (dwPos):(dwUser),\
((dwFlags) & MCI_DGV_SIGNAL_POSITION) ? (dwUser):(dwPos))
/* flags for the dwFlags parameter of MCI_STATUS command */
#define MCI_DGV_STATUS_NOMINAL 0x00020000L
#define MCI_DGV_STATUS_REFERENCE 0x00040000L
#define MCI_DGV_STATUS_LEFT 0x00080000L
#define MCI_DGV_STATUS_RIGHT 0x00100000L
#define MCI_DGV_STATUS_DISKSPACE 0x00200000L
#define MCI_DGV_STATUS_INPUT 0x00400000L
#define MCI_DGV_STATUS_OUTPUT 0x00800000L
#define MCI_DGV_STATUS_RECORD 0x01000000L
/* values for dwItem field of MCI_STATUS_PARMS structure */
#define MCI_DGV_STATUS_AUDIO_INPUT 0x00004000L
#define MCI_DGV_STATUS_HWND 0x00004001L
#define MCI_DGV_STATUS_SPEED 0x00004003L
#define MCI_DGV_STATUS_HPAL 0x00004004L
#define MCI_DGV_STATUS_BRIGHTNESS 0x00004005L
#define MCI_DGV_STATUS_COLOR 0x00004006L
#define MCI_DGV_STATUS_CONTRAST 0x00004007L
#define MCI_DGV_STATUS_FILEFORMAT 0x00004008L
#define MCI_DGV_STATUS_AUDIO_SOURCE 0x00004009L
#define MCI_DGV_STATUS_GAMMA 0x0000400aL
#define MCI_DGV_STATUS_MONITOR 0x0000400bL
#define MCI_DGV_STATUS_MONITOR_METHOD 0x0000400cL
#define MCI_DGV_STATUS_FRAME_RATE 0x0000400eL
#define MCI_DGV_STATUS_BASS 0x0000400fL
#define MCI_DGV_STATUS_SIZE 0x00004010L
#define MCI_DGV_STATUS_SEEK_EXACTLY 0x00004011L
#define MCI_DGV_STATUS_SHARPNESS 0x00004012L
#define MCI_DGV_STATUS_SMPTE 0x00004013L
#define MCI_DGV_STATUS_AUDIO 0x00004014L
#define MCI_DGV_STATUS_TINT 0x00004015L
#define MCI_DGV_STATUS_TREBLE 0x00004016L
#define MCI_DGV_STATUS_UNSAVED 0x00004017L
#define MCI_DGV_STATUS_VIDEO 0x00004018L
#define MCI_DGV_STATUS_VOLUME 0x00004019L
#define MCI_DGV_STATUS_AUDIO_RECORD 0x0000401aL
#define MCI_DGV_STATUS_VIDEO_SOURCE 0x0000401bL
#define MCI_DGV_STATUS_VIDEO_RECORD 0x0000401cL
#define MCI_DGV_STATUS_STILL_FILEFORMAT 0x0000401dL
#define MCI_DGV_STATUS_VIDEO_SRC_NUM 0x0000401eL
#define MCI_DGV_STATUS_FILE_MODE 0x0000401fL
#define MCI_DGV_STATUS_FILE_COMPLETION 0x00004020L
#define MCI_DGV_STATUS_WINDOW_VISIBLE 0x00004021L
#define MCI_DGV_STATUS_WINDOW_MINIMIZED 0x00004022L
#define MCI_DGV_STATUS_WINDOW_MAXIMIZED 0x00004023L
#define MCI_DGV_STATUS_KEY_INDEX 0x00004024L
#define MCI_DGV_STATUS_KEY_COLOR 0x00004025L
#define MCI_DGV_STATUS_PAUSE_MODE 0x00004026L
#define MCI_DGV_STATUS_SAMPLESPERSEC 0x00004027L
#define MCI_DGV_STATUS_AVGBYTESPERSEC 0x00004028L
#define MCI_DGV_STATUS_BLOCKALIGN 0x00004029L
#define MCI_DGV_STATUS_BITSPERSAMPLE 0x0000402aL
#define MCI_DGV_STATUS_BITSPERPEL 0x0000402bL
#define MCI_DGV_STATUS_FORWARD 0x0000402cL
#define MCI_DGV_STATUS_AUDIO_STREAM 0x0000402dL
#define MCI_DGV_STATUS_VIDEO_STREAM 0x0000402eL
/* flags for dwFlags parameter of MCI_STEP command message */
#define MCI_DGV_STEP_REVERSE 0x00010000L
#define MCI_DGV_STEP_FRAMES 0x00020000L
/* flags for dwFlags parameter of MCI_STOP command message */
#define MCI_DGV_STOP_HOLD 0x00010000L
/* flags for dwFlags parameter of MCI_UPDATE command message */
#define MCI_DGV_UPDATE_HDC 0x00020000L
#define MCI_DGV_UPDATE_PAINT 0x00040000L
/* flags for dwFlags parameter of MCI_WHERE command message */
#define MCI_DGV_WHERE_SOURCE 0x00020000L
#define MCI_DGV_WHERE_DESTINATION 0x00040000L
#define MCI_DGV_WHERE_FRAME 0x00080000L
#define MCI_DGV_WHERE_VIDEO 0x00100000L
#define MCI_DGV_WHERE_WINDOW 0x00200000L
#define MCI_DGV_WHERE_MAX 0x00400000L
/* flags for dwFlags parameter of MCI_WINDOW command message */
#define MCI_DGV_WINDOW_HWND 0x00010000L
#define MCI_DGV_WINDOW_STATE 0x00040000L
#define MCI_DGV_WINDOW_TEXT 0x00080000L
/* flags for hWnd parameter of MCI_DGV_WINDOW_PARMS parameter block */
#define MCI_DGV_WINDOW_DEFAULT 0x00000000L
/* parameter block for MCI_WHERE, MCI_PUT, MCI_FREEZE, MCI_UNFREEZE cmds */
typedef struct {
DWORD_PTR dwCallback;
#ifdef MCI_USE_OFFEXT
POINT ptOffset;
POINT ptExtent;
#else
RECT rc;
#endif
} MCI_DGV_RECT_PARMS;
typedef MCI_DGV_RECT_PARMS FAR * LPMCI_DGV_RECT_PARMS;
/* parameter block for MCI_CAPTURE command message */
typedef struct {
DWORD_PTR dwCallback;
LPSTR lpstrFileName;
#ifdef MCI_USE_OFFEXT
POINT ptOffset;
POINT ptExtent;
#else
RECT rc;
#endif
} MCI_DGV_CAPTURE_PARMSA;
typedef struct {
DWORD_PTR dwCallback;
LPWSTR lpstrFileName;
#ifdef MCI_USE_OFFEXT
POINT ptOffset;
POINT ptExtent;
#else
RECT rc;
#endif
} MCI_DGV_CAPTURE_PARMSW;
#ifdef UNICODE
typedef MCI_DGV_CAPTURE_PARMSW MCI_DGV_CAPTURE_PARMS;
#else
typedef MCI_DGV_CAPTURE_PARMSA MCI_DGV_CAPTURE_PARMS;
#endif // UNICODE
typedef MCI_DGV_CAPTURE_PARMSA FAR * LPMCI_DGV_CAPTURE_PARMSA;
typedef MCI_DGV_CAPTURE_PARMSW FAR * LPMCI_DGV_CAPTURE_PARMSW;
#ifdef UNICODE
typedef LPMCI_DGV_CAPTURE_PARMSW LPMCI_DGV_CAPTURE_PARMS;
#else
typedef LPMCI_DGV_CAPTURE_PARMSA LPMCI_DGV_CAPTURE_PARMS;
#endif // UNICODE
/* parameter block for MCI_CLOSE command message */
typedef MCI_GENERIC_PARMS MCI_CLOSE_PARMS;
typedef MCI_CLOSE_PARMS FAR * LPMCI_CLOSE_PARMS;
/* parameter block for MCI_COPY command message */
typedef struct {
DWORD_PTR dwCallback;
DWORD dwFrom;
DWORD dwTo;
#ifdef MCI_USE_OFFEXT
POINT ptOffset;
POINT ptExtent;
#else
RECT rc;
#endif
DWORD dwAudioStream;
DWORD dwVideoStream;
} MCI_DGV_COPY_PARMS;
typedef MCI_DGV_COPY_PARMS FAR * LPMCI_DGV_COPY_PARMS;
/* parameter block for MCI_CUE command message */
typedef struct {
DWORD_PTR dwCallback;
DWORD dwTo;
} MCI_DGV_CUE_PARMS;
typedef MCI_DGV_CUE_PARMS FAR * LPMCI_DGV_CUE_PARMS;
/* parameter block for MCI_CUT command message */
typedef struct {
DWORD_PTR dwCallback;
DWORD dwFrom;
DWORD dwTo;
#ifdef MCI_USE_OFFEXT
POINT ptOffset;
POINT ptExtent;
#else
RECT rc;
#endif
DWORD dwAudioStream;
DWORD dwVideoStream;
} MCI_DGV_CUT_PARMS;
typedef MCI_DGV_CUT_PARMS FAR * LPMCI_DGV_CUT_PARMS;
/* parameter block for MCI_DELETE command message */
typedef struct {
DWORD_PTR dwCallback;
DWORD dwFrom;
DWORD dwTo;
#ifdef MCI_USE_OFFEXT
POINT ptOffset;
POINT ptExtent;
#else
RECT rc;
#endif
DWORD dwAudioStream;
DWORD dwVideoStream;
} MCI_DGV_DELETE_PARMS;
typedef MCI_DGV_DELETE_PARMS FAR * LPMCI_DGV_DELETE_PARMS;
/* parameter block for MCI_FREEZE command message */
typedef MCI_DGV_RECT_PARMS MCI_DGV_FREEZE_PARMS;
typedef MCI_DGV_FREEZE_PARMS FAR * LPMCI_DGV_FREEZE_PARMS;
/* parameter block for MCI_INFO command message */
typedef struct {
DWORD_PTR dwCallback;
LPSTR lpstrReturn;
DWORD dwRetSize;
DWORD dwItem;
} MCI_DGV_INFO_PARMSA;
typedef struct {
DWORD_PTR dwCallback;
LPWSTR lpstrReturn;
DWORD dwRetSize;
DWORD dwItem;
} MCI_DGV_INFO_PARMSW;
#ifdef UNICODE
typedef MCI_DGV_INFO_PARMSW MCI_DGV_INFO_PARMS;
#else
typedef MCI_DGV_INFO_PARMSA MCI_DGV_INFO_PARMS;
#endif // UNICODE
//? already typedef'd? //typedef MCI_INFO_PARMS FAR * LPMCI_INFO_PARMS;
typedef MCI_DGV_INFO_PARMSA FAR * LPMCI_DGV_INFO_PARMSA;
typedef MCI_DGV_INFO_PARMSW FAR * LPMCI_DGV_INFO_PARMSW;
#ifdef UNICODE
typedef LPMCI_DGV_INFO_PARMSW LPMCI_DGV_INFO_PARMS;
#else
typedef LPMCI_DGV_INFO_PARMSA LPMCI_DGV_INFO_PARMS;
#endif // UNICODE
/* parameter block for Video Output TO struct*/
typedef struct tagMCI_DGV_RM_PARMS
{
DWORD dwCommand;
DWORD dwFlag;
DWORD dwValue;
DWORD dwResult;
} MCI_DGV_RM_PARMS, *LPMCI_DGV_RM_PARMS;
/* parameter block for MCI_LIST command message */
typedef struct {
DWORD_PTR dwCallback;
LPSTR lpstrReturn;
DWORD dwLength;
DWORD dwNumber;
DWORD dwItem;
LPSTR lpstrAlgorithm;
} MCI_DGV_LIST_PARMSA;
typedef struct {
DWORD_PTR dwCallback;
LPWSTR lpstrReturn;
DWORD dwLength;
DWORD dwNumber;
DWORD dwItem;
LPWSTR lpstrAlgorithm;
} MCI_DGV_LIST_PARMSW;
#ifdef UNICODE
typedef MCI_DGV_LIST_PARMSW MCI_DGV_LIST_PARMS;
#else
typedef MCI_DGV_LIST_PARMSA MCI_DGV_LIST_PARMS;
#endif // UNICODE
typedef MCI_DGV_LIST_PARMSA FAR * LPMCI_DGV_LIST_PARMSA;
typedef MCI_DGV_LIST_PARMSW FAR * LPMCI_DGV_LIST_PARMSW;
#ifdef UNICODE
typedef LPMCI_DGV_LIST_PARMSW LPMCI_DGV_LIST_PARMS;
#else
typedef LPMCI_DGV_LIST_PARMSA LPMCI_DGV_LIST_PARMS;
#endif // UNICODE
/* parameter block for MCI_LOAD command message */
typedef MCI_LOAD_PARMS MCI_DGV_LOAD_PARMS;
typedef MCI_DGV_LOAD_PARMS FAR * LPMCI_DGV_LOAD_PARMS;
/* parameter block for MCI_MONITOR command message */
typedef struct {
DWORD_PTR dwCallback;
DWORD dwSource;
DWORD dwMethod;
} MCI_DGV_MONITOR_PARMS;
typedef MCI_DGV_MONITOR_PARMS FAR * LPMCI_DGV_MONITOR_PARMS;
/* parameter block for MCI_OPEN command message */
typedef struct {
DWORD_PTR dwCallback;
UINT wDeviceID;
#ifndef _WIN32
WORD wReserved0;
#endif
LPSTR lpstrDeviceType;
LPSTR lpstrElementName;
LPSTR lpstrAlias;
DWORD dwStyle;
HWND hWndParent;
#ifndef _WIN32
WORD wReserved1;
#endif
} MCI_DGV_OPEN_PARMSA;
typedef struct {
DWORD_PTR dwCallback;
UINT wDeviceID;
#ifndef _WIN32
WORD wReserved0;
#endif
LPWSTR lpstrDeviceType;
LPWSTR lpstrElementName;
LPWSTR lpstrAlias;
DWORD dwStyle;
HWND hWndParent;
#ifndef _WIN32
WORD wReserved1;
#endif
} MCI_DGV_OPEN_PARMSW;
#ifdef UNICODE
typedef MCI_DGV_OPEN_PARMSW MCI_DGV_OPEN_PARMS;
#else
typedef MCI_DGV_OPEN_PARMSA MCI_DGV_OPEN_PARMS;
#endif // UNICODE
typedef MCI_DGV_OPEN_PARMSA FAR * LPMCI_DGV_OPEN_PARMSA;
typedef MCI_DGV_OPEN_PARMSW FAR * LPMCI_DGV_OPEN_PARMSW;
#ifdef UNICODE
typedef LPMCI_DGV_OPEN_PARMSW LPMCI_DGV_OPEN_PARMS;
#else
typedef LPMCI_DGV_OPEN_PARMSA LPMCI_DGV_OPEN_PARMS;
#endif // UNICODE
/* parameter block for MCI_PAUSE command message */
typedef MCI_GENERIC_PARMS MCI_DGV_PAUSE_PARMS;
typedef MCI_DGV_PAUSE_PARMS FAR * LPMCI_DGV_PAUSE_PARMS;
/* parameter block for MCI_PASTE command message */
typedef struct {
DWORD_PTR dwCallback;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -