Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #ifndef _INC_DIGITALV
      7 #define _INC_DIGITALV 100
      8 
      9 #include <_mingw_unicode.h>
     10 #include <pshpack1.h>
     11 
     12 #ifdef __cplusplus
     13 extern "C" {
     14 #endif
     15 
     16 #define MCI_TEST __MSABI_LONG(0x00000020)
     17 
     18 #define MCI_CAPTURE 0x0870
     19 #define MCI_MONITOR 0x0871
     20 #define MCI_RESERVE 0x0872
     21 #define MCI_SETAUDIO 0x0873
     22 #define MCI_SIGNAL 0x0875
     23 #define MCI_SETVIDEO 0x0876
     24 #define MCI_QUALITY 0x0877
     25 #define MCI_LIST 0x0878
     26 #define MCI_UNDO 0x0879
     27 #define MCI_CONFIGURE 0x087a
     28 #define MCI_RESTORE 0x087b
     29 
     30 #define MCI_ON 1
     31 #define MCI_OFF 0
     32 
     33 #define MCI_DGV_FILE_MODE_SAVING 0x0001
     34 #define MCI_DGV_FILE_MODE_LOADING 0x0002
     35 #define MCI_DGV_FILE_MODE_EDITING 0x0003
     36 #define MCI_DGV_FILE_MODE_IDLE 0x0004
     37 
     38 #define MCI_ON_S __MSABI_LONG(0x00008000)
     39 #define MCI_OFF_S __MSABI_LONG(0x00008001)
     40 #define MCI_DGV_FILE_S __MSABI_LONG(0x00008002)
     41 #define MCI_DGV_INPUT_S __MSABI_LONG(0x00008003)
     42 
     43 #define MCI_DGV_FILE_MODE_SAVING_S __MSABI_LONG(0x00008004)
     44 #define MCI_DGV_FILE_MODE_LOADING_S __MSABI_LONG(0x00008005)
     45 #define MCI_DGV_FILE_MODE_EDITING_S __MSABI_LONG(0x00008006)
     46 #define MCI_DGV_FILE_MODE_IDLE_S __MSABI_LONG(0x00008007)
     47 
     48 #define MCI_DGV_SETVIDEO_SRC_NTSC_S __MSABI_LONG(0x00008010)
     49 #define MCI_DGV_SETVIDEO_SRC_RGB_S __MSABI_LONG(0x00008011)
     50 #define MCI_DGV_SETVIDEO_SRC_SVIDEO_S __MSABI_LONG(0x00008012)
     51 #define MCI_DGV_SETVIDEO_SRC_PAL_S __MSABI_LONG(0x00008013)
     52 #define MCI_DGV_SETVIDEO_SRC_SECAM_S __MSABI_LONG(0x00008014)
     53 #define MCI_DGV_SETVIDEO_SRC_GENERIC_S __MSABI_LONG(0x00008015)
     54 
     55 #define MCI_DGV_SETAUDIO_SRC_LEFT_S __MSABI_LONG(0x00008020)
     56 #define MCI_DGV_SETAUDIO_SRC_RIGHT_S __MSABI_LONG(0x00008021)
     57 #define MCI_DGV_SETAUDIO_SRC_AVERAGE_S __MSABI_LONG(0x00008022)
     58 #define MCI_DGV_SETAUDIO_SRC_STEREO_S __MSABI_LONG(0x00008023)
     59 
     60 #define MM_MCISIGNAL 0x3CB
     61 
     62 #define MCIERR_DGV_DEVICE_LIMIT (MCIERR_CUSTOM_DRIVER_BASE+0)
     63 #define MCIERR_DGV_IOERR (MCIERR_CUSTOM_DRIVER_BASE+1)
     64 #define MCIERR_DGV_WORKSPACE_EMPTY (MCIERR_CUSTOM_DRIVER_BASE+2)
     65 #define MCIERR_DGV_DISK_FULL (MCIERR_CUSTOM_DRIVER_BASE+3)
     66 #define MCIERR_DGV_DEVICE_MEMORY_FULL (MCIERR_CUSTOM_DRIVER_BASE+4)
     67 #define MCIERR_DGV_BAD_CLIPBOARD_RANGE (MCIERR_CUSTOM_DRIVER_BASE+5)
     68 
     69 #define MCI_DGV_METHOD_PRE __MSABI_LONG(0x0000a000)
     70 #define MCI_DGV_METHOD_POST __MSABI_LONG(0x0000a001)
     71 #define MCI_DGV_METHOD_DIRECT __MSABI_LONG(0x0000a002)
     72 
     73 #define MCI_DGV_FF_AVSS __MSABI_LONG(0x00004000)
     74 #define MCI_DGV_FF_AVI __MSABI_LONG(0x00004001)
     75 #define MCI_DGV_FF_DIB __MSABI_LONG(0x00004002)
     76 #define MCI_DGV_FF_RDIB __MSABI_LONG(0x00004003)
     77 #define MCI_DGV_FF_JPEG __MSABI_LONG(0x00004004)
     78 #define MCI_DGV_FF_RJPEG __MSABI_LONG(0x00004005)
     79 #define MCI_DGV_FF_JFIF __MSABI_LONG(0x00004006)
     80 #define MCI_DGV_FF_MPEG __MSABI_LONG(0x00004007)
     81 
     82 #define MCI_DGV_GETDEVCAPS_CAN_LOCK __MSABI_LONG(0x00004000)
     83 #define MCI_DGV_GETDEVCAPS_CAN_STRETCH __MSABI_LONG(0x00004001)
     84 #define MCI_DGV_GETDEVCAPS_CAN_FREEZE __MSABI_LONG(0x00004002)
     85 #define MCI_DGV_GETDEVCAPS_MAX_WINDOWS __MSABI_LONG(0x00004003)
     86 #define MCI_DGV_GETDEVCAPS_CAN_REVERSE __MSABI_LONG(0x00004004)
     87 #define MCI_DGV_GETDEVCAPS_HAS_STILL __MSABI_LONG(0x00004005)
     88 #define MCI_DGV_GETDEVCAPS_PALETTES __MSABI_LONG(0x00004006)
     89 #define MCI_DGV_GETDEVCAPS_CAN_STR_IN __MSABI_LONG(0x00004008)
     90 #define MCI_DGV_GETDEVCAPS_CAN_TEST __MSABI_LONG(0x00004009)
     91 #define MCI_DGV_GETDEVCAPS_MAXIMUM_RATE __MSABI_LONG(0x0000400a)
     92 #define MCI_DGV_GETDEVCAPS_MINIMUM_RATE __MSABI_LONG(0x0000400b)
     93 
     94 #define MCI_DGV_CAPTURE_AS __MSABI_LONG(0x00010000)
     95 #define MCI_DGV_CAPTURE_AT __MSABI_LONG(0x00020000)
     96 
     97 #define MCI_DGV_COPY_AT __MSABI_LONG(0x00010000)
     98 #define MCI_DGV_COPY_AUDIO_STREAM __MSABI_LONG(0x00020000)
     99 #define MCI_DGV_COPY_VIDEO_STREAM __MSABI_LONG(0x00040000)
    100 
    101 #define MCI_DGV_CUE_INPUT __MSABI_LONG(0x00010000)
    102 #define MCI_DGV_CUE_OUTPUT __MSABI_LONG(0x00020000)
    103 #define MCI_DGV_CUE_NOSHOW __MSABI_LONG(0x00040000)
    104 
    105 #define MCI_DGV_CUT_AT __MSABI_LONG(0x00010000)
    106 #define MCI_DGV_CUT_AUDIO_STREAM __MSABI_LONG(0x00020000)
    107 #define MCI_DGV_CUT_VIDEO_STREAM __MSABI_LONG(0x00040000)
    108 
    109 #define MCI_DGV_DELETE_AT __MSABI_LONG(0x00010000)
    110 #define MCI_DGV_DELETE_AUDIO_STREAM __MSABI_LONG(0x00020000)
    111 #define MCI_DGV_DELETE_VIDEO_STREAM __MSABI_LONG(0x00040000)
    112 
    113 #define MCI_DGV_FREEZE_AT __MSABI_LONG(0x00010000)
    114 #define MCI_DGV_FREEZE_OUTSIDE __MSABI_LONG(0x00020000)
    115 
    116 #define MCI_DGV_INFO_TEXT __MSABI_LONG(0x00010000)
    117 #define MCI_DGV_INFO_ITEM 0X00020000L
    118 
    119 #define MCI_INFO_VERSION __MSABI_LONG(0x00000400)
    120 
    121 #define MCI_DGV_INFO_USAGE __MSABI_LONG(0x00004000)
    122 #define MCI_DGV_INFO_AUDIO_QUALITY __MSABI_LONG(0x00004001)
    123 #define MCI_DGV_INFO_STILL_QUALITY __MSABI_LONG(0x00004002)
    124 #define MCI_DGV_INFO_VIDEO_QUALITY __MSABI_LONG(0x00004003)
    125 #define MCI_DGV_INFO_AUDIO_ALG __MSABI_LONG(0x00004004)
    126 #define MCI_DGV_INFO_STILL_ALG __MSABI_LONG(0x00004005)
    127 #define MCI_DGV_INFO_VIDEO_ALG __MSABI_LONG(0x00004006)
    128 
    129 #define MCI_DGV_LIST_ITEM __MSABI_LONG(0x00010000)
    130 #define MCI_DGV_LIST_COUNT __MSABI_LONG(0x00020000)
    131 #define MCI_DGV_LIST_NUMBER __MSABI_LONG(0x00040000)
    132 #define MCI_DGV_LIST_ALG __MSABI_LONG(0x00080000)
    133 
    134 #define MCI_DGV_LIST_AUDIO_ALG __MSABI_LONG(0x00004000)
    135 #define MCI_DGV_LIST_AUDIO_QUALITY __MSABI_LONG(0x00004001)
    136 #define MCI_DGV_LIST_AUDIO_STREAM __MSABI_LONG(0x00004002)
    137 #define MCI_DGV_LIST_STILL_ALG __MSABI_LONG(0x00004003)
    138 #define MCI_DGV_LIST_STILL_QUALITY __MSABI_LONG(0x00004004)
    139 #define MCI_DGV_LIST_VIDEO_ALG __MSABI_LONG(0x00004005)
    140 #define MCI_DGV_LIST_VIDEO_QUALITY __MSABI_LONG(0x00004006)
    141 #define MCI_DGV_LIST_VIDEO_STREAM __MSABI_LONG(0x00004007)
    142 #define MCI_DGV_LIST_VIDEO_SOURCE __MSABI_LONG(0x00004008)
    143 
    144 #define MCI_DGV_MONITOR_METHOD __MSABI_LONG(0x00010000)
    145 #define MCI_DGV_MONITOR_SOURCE __MSABI_LONG(0x00020000)
    146 
    147 #define MCI_DGV_MONITOR_INPUT __MSABI_LONG(0x00004000)
    148 #define MCI_DGV_MONITOR_FILE __MSABI_LONG(0x00004001)
    149 
    150 #define MCI_DGV_OPEN_WS __MSABI_LONG(0x00010000)
    151 #define MCI_DGV_OPEN_PARENT __MSABI_LONG(0x00020000)
    152 #define MCI_DGV_OPEN_NOSTATIC __MSABI_LONG(0x00040000)
    153 #define MCI_DGV_OPEN_16BIT __MSABI_LONG(0x00080000)
    154 #define MCI_DGV_OPEN_32BIT __MSABI_LONG(0x00100000)
    155 
    156 #define MCI_DGV_PASTE_AT __MSABI_LONG(0x00010000)
    157 #define MCI_DGV_PASTE_AUDIO_STREAM __MSABI_LONG(0x00020000)
    158 #define MCI_DGV_PASTE_VIDEO_STREAM __MSABI_LONG(0x00040000)
    159 #define MCI_DGV_PASTE_INSERT __MSABI_LONG(0x00080000)
    160 #define MCI_DGV_PASTE_OVERWRITE __MSABI_LONG(0x00100000)
    161 
    162 #define MCI_DGV_PLAY_REPEAT __MSABI_LONG(0x00010000)
    163 #define MCI_DGV_PLAY_REVERSE __MSABI_LONG(0x00020000)
    164 
    165 #define MCI_DGV_RECT __MSABI_LONG(0x00010000)
    166 #define MCI_DGV_PUT_SOURCE __MSABI_LONG(0x00020000)
    167 #define MCI_DGV_PUT_DESTINATION __MSABI_LONG(0x00040000)
    168 #define MCI_DGV_PUT_FRAME __MSABI_LONG(0x00080000)
    169 #define MCI_DGV_PUT_VIDEO __MSABI_LONG(0x00100000)
    170 #define MCI_DGV_PUT_WINDOW __MSABI_LONG(0x00200000)
    171 #define MCI_DGV_PUT_CLIENT __MSABI_LONG(0x00400000)
    172 
    173 #define MCI_QUALITY_ITEM __MSABI_LONG(0x00010000)
    174 #define MCI_QUALITY_NAME __MSABI_LONG(0x00020000)
    175 #define MCI_QUALITY_ALG __MSABI_LONG(0x00040000)
    176 #define MCI_QUALITY_DIALOG __MSABI_LONG(0x00080000)
    177 #define MCI_QUALITY_HANDLE __MSABI_LONG(0x00100000)
    178 
    179 #define MCI_QUALITY_ITEM_AUDIO __MSABI_LONG(0x00004000)
    180 #define MCI_QUALITY_ITEM_STILL __MSABI_LONG(0x00004001)
    181 #define MCI_QUALITY_ITEM_VIDEO __MSABI_LONG(0x00004002)
    182 
    183 #define MCI_DGV_REALIZE_NORM __MSABI_LONG(0x00010000)
    184 #define MCI_DGV_REALIZE_BKGD __MSABI_LONG(0x00020000)
    185 
    186 #define MCI_DGV_RECORD_HOLD __MSABI_LONG(0x00020000)
    187 #define MCI_DGV_RECORD_AUDIO_STREAM __MSABI_LONG(0x00040000)
    188 #define MCI_DGV_RECORD_VIDEO_STREAM __MSABI_LONG(0x00080000)
    189 
    190 #define MCI_DGV_RESERVE_IN __MSABI_LONG(0x00010000)
    191 #define MCI_DGV_RESERVE_SIZE __MSABI_LONG(0x00020000)
    192 
    193 #define MCI_DGV_RESTORE_FROM __MSABI_LONG(0x00010000)
    194 #define MCI_DGV_RESTORE_AT __MSABI_LONG(0x00020000)
    195 
    196 #define MCI_DGV_SAVE_ABORT __MSABI_LONG(0x00020000)
    197 #define MCI_DGV_SAVE_KEEPRESERVE __MSABI_LONG(0x00040000)
    198 
    199 #define MCI_DGV_SET_SEEK_EXACTLY __MSABI_LONG(0x00010000)
    200 #define MCI_DGV_SET_SPEED __MSABI_LONG(0x00020000)
    201 #define MCI_DGV_SET_STILL __MSABI_LONG(0x00040000)
    202 #define MCI_DGV_SET_FILEFORMAT __MSABI_LONG(0x00080000)
    203 
    204 #define MCI_DGV_SETAUDIO_OVER __MSABI_LONG(0x00010000)
    205 #define MCI_DGV_SETAUDIO_CLOCKTIME __MSABI_LONG(0x00020000)
    206 #define MCI_DGV_SETAUDIO_ALG __MSABI_LONG(0x00040000)
    207 #define MCI_DGV_SETAUDIO_QUALITY __MSABI_LONG(0x00080000)
    208 #define MCI_DGV_SETAUDIO_RECORD __MSABI_LONG(0x00100000)
    209 #define MCI_DGV_SETAUDIO_LEFT __MSABI_LONG(0x00200000)
    210 #define MCI_DGV_SETAUDIO_RIGHT __MSABI_LONG(0x00400000)
    211 #define MCI_DGV_SETAUDIO_ITEM __MSABI_LONG(0x00800000)
    212 #define MCI_DGV_SETAUDIO_VALUE __MSABI_LONG(0x01000000)
    213 #define MCI_DGV_SETAUDIO_INPUT __MSABI_LONG(0x02000000)
    214 #define MCI_DGV_SETAUDIO_OUTPUT __MSABI_LONG(0x04000000)
    215 
    216 #define MCI_DGV_SETAUDIO_TREBLE __MSABI_LONG(0x00004000)
    217 #define MCI_DGV_SETAUDIO_BASS __MSABI_LONG(0x00004001)
    218 #define MCI_DGV_SETAUDIO_VOLUME __MSABI_LONG(0x00004002)
    219 #define MCI_DGV_SETAUDIO_STREAM __MSABI_LONG(0x00004003)
    220 #define MCI_DGV_SETAUDIO_SOURCE __MSABI_LONG(0x00004004)
    221 #define MCI_DGV_SETAUDIO_SAMPLESPERSEC __MSABI_LONG(0x00004005)
    222 #define MCI_DGV_SETAUDIO_AVGBYTESPERSEC __MSABI_LONG(0x00004006)
    223 #define MCI_DGV_SETAUDIO_BLOCKALIGN __MSABI_LONG(0x00004007)
    224 #define MCI_DGV_SETAUDIO_BITSPERSAMPLE __MSABI_LONG(0x00004008)
    225 
    226 #define MCI_DGV_SETAUDIO_SOURCE_STEREO __MSABI_LONG(0x00000000)
    227 #define MCI_DGV_SETAUDIO_SOURCE_LEFT __MSABI_LONG(0x00000001)
    228 #define MCI_DGV_SETAUDIO_SOURCE_RIGHT __MSABI_LONG(0x00000002)
    229 #define MCI_DGV_SETAUDIO_SOURCE_AVERAGE __MSABI_LONG(0x00004000)
    230 
    231 #define MCI_DGV_SETVIDEO_QUALITY __MSABI_LONG(0x00010000)
    232 #define MCI_DGV_SETVIDEO_ALG __MSABI_LONG(0x00020000)
    233 #define MCI_DGV_SETVIDEO_CLOCKTIME __MSABI_LONG(0x00040000)
    234 #define MCI_DGV_SETVIDEO_SRC_NUMBER __MSABI_LONG(0x00080000)
    235 #define MCI_DGV_SETVIDEO_ITEM __MSABI_LONG(0x00100000)
    236 #define MCI_DGV_SETVIDEO_OVER __MSABI_LONG(0x00200000)
    237 #define MCI_DGV_SETVIDEO_RECORD __MSABI_LONG(0x00400000)
    238 #define MCI_DGV_SETVIDEO_STILL __MSABI_LONG(0x00800000)
    239 #define MCI_DGV_SETVIDEO_VALUE __MSABI_LONG(0x01000000)
    240 #define MCI_DGV_SETVIDEO_INPUT __MSABI_LONG(0x02000000)
    241 #define MCI_DGV_SETVIDEO_OUTPUT __MSABI_LONG(0x04000000)
    242 
    243 #define MCI_DGV_SETVIDEO_SRC_NTSC __MSABI_LONG(0x00004000)
    244 #define MCI_DGV_SETVIDEO_SRC_RGB __MSABI_LONG(0x00004001)
    245 #define MCI_DGV_SETVIDEO_SRC_SVIDEO __MSABI_LONG(0x00004002)
    246 #define MCI_DGV_SETVIDEO_SRC_PAL __MSABI_LONG(0x00004003)
    247 #define MCI_DGV_SETVIDEO_SRC_SECAM __MSABI_LONG(0x00004004)
    248 #define MCI_DGV_SETVIDEO_SRC_GENERIC __MSABI_LONG(0x00004005)
    249 
    250 #define MCI_DGV_SETVIDEO_BRIGHTNESS __MSABI_LONG(0x00004000)
    251 #define MCI_DGV_SETVIDEO_COLOR __MSABI_LONG(0x00004001)
    252 #define MCI_DGV_SETVIDEO_CONTRAST __MSABI_LONG(0x00004002)
    253 #define MCI_DGV_SETVIDEO_TINT __MSABI_LONG(0x00004003)
    254 #define MCI_DGV_SETVIDEO_SHARPNESS __MSABI_LONG(0x00004004)
    255 #define MCI_DGV_SETVIDEO_GAMMA __MSABI_LONG(0x00004005)
    256 #define MCI_DGV_SETVIDEO_STREAM __MSABI_LONG(0x00004006)
    257 #define MCI_DGV_SETVIDEO_PALHANDLE __MSABI_LONG(0x00004007)
    258 #define MCI_DGV_SETVIDEO_FRAME_RATE __MSABI_LONG(0x00004008)
    259 #define MCI_DGV_SETVIDEO_SOURCE __MSABI_LONG(0x00004009)
    260 #define MCI_DGV_SETVIDEO_KEY_INDEX __MSABI_LONG(0x0000400a)
    261 #define MCI_DGV_SETVIDEO_KEY_COLOR __MSABI_LONG(0x0000400b)
    262 #define MCI_DGV_SETVIDEO_BITSPERPEL __MSABI_LONG(0x0000400c)
    263 
    264 #define MCI_DGV_SIGNAL_AT __MSABI_LONG(0x00010000)
    265 #define MCI_DGV_SIGNAL_EVERY __MSABI_LONG(0x00020000)
    266 #define MCI_DGV_SIGNAL_USERVAL __MSABI_LONG(0x00040000)
    267 #define MCI_DGV_SIGNAL_CANCEL __MSABI_LONG(0x00080000)
    268 #define MCI_DGV_SIGNAL_POSITION __MSABI_LONG(0x00100000)
    269 
    270 #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))
    271 
    272 #define MCI_DGV_STATUS_NOMINAL __MSABI_LONG(0x00020000)
    273 #define MCI_DGV_STATUS_REFERENCE __MSABI_LONG(0x00040000)
    274 #define MCI_DGV_STATUS_LEFT __MSABI_LONG(0x00080000)
    275 #define MCI_DGV_STATUS_RIGHT __MSABI_LONG(0x00100000)
    276 #define MCI_DGV_STATUS_DISKSPACE __MSABI_LONG(0x00200000)
    277 #define MCI_DGV_STATUS_INPUT __MSABI_LONG(0x00400000)
    278 #define MCI_DGV_STATUS_OUTPUT __MSABI_LONG(0x00800000)
    279 #define MCI_DGV_STATUS_RECORD __MSABI_LONG(0x01000000)
    280 
    281 #define MCI_DGV_STATUS_AUDIO_INPUT __MSABI_LONG(0x00004000)
    282 #define MCI_DGV_STATUS_HWND __MSABI_LONG(0x00004001)
    283 #define MCI_DGV_STATUS_SPEED __MSABI_LONG(0x00004003)
    284 #define MCI_DGV_STATUS_HPAL __MSABI_LONG(0x00004004)
    285 #define MCI_DGV_STATUS_BRIGHTNESS __MSABI_LONG(0x00004005)
    286 #define MCI_DGV_STATUS_COLOR __MSABI_LONG(0x00004006)
    287 #define MCI_DGV_STATUS_CONTRAST __MSABI_LONG(0x00004007)
    288 #define MCI_DGV_STATUS_FILEFORMAT __MSABI_LONG(0x00004008)
    289 #define MCI_DGV_STATUS_AUDIO_SOURCE __MSABI_LONG(0x00004009)
    290 #define MCI_DGV_STATUS_GAMMA __MSABI_LONG(0x0000400a)
    291 #define MCI_DGV_STATUS_MONITOR __MSABI_LONG(0x0000400b)
    292 #define MCI_DGV_STATUS_MONITOR_METHOD __MSABI_LONG(0x0000400c)
    293 #define MCI_DGV_STATUS_FRAME_RATE __MSABI_LONG(0x0000400e)
    294 #define MCI_DGV_STATUS_BASS __MSABI_LONG(0x0000400f)
    295 #define MCI_DGV_STATUS_SIZE __MSABI_LONG(0x00004010)
    296 #define MCI_DGV_STATUS_SEEK_EXACTLY __MSABI_LONG(0x00004011)
    297 #define MCI_DGV_STATUS_SHARPNESS __MSABI_LONG(0x00004012)
    298 #define MCI_DGV_STATUS_SMPTE __MSABI_LONG(0x00004013)
    299 #define MCI_DGV_STATUS_AUDIO __MSABI_LONG(0x00004014)
    300 #define MCI_DGV_STATUS_TINT __MSABI_LONG(0x00004015)
    301 #define MCI_DGV_STATUS_TREBLE __MSABI_LONG(0x00004016)
    302 #define MCI_DGV_STATUS_UNSAVED __MSABI_LONG(0x00004017)
    303 #define MCI_DGV_STATUS_VIDEO __MSABI_LONG(0x00004018)
    304 #define MCI_DGV_STATUS_VOLUME __MSABI_LONG(0x00004019)
    305 #define MCI_DGV_STATUS_AUDIO_RECORD __MSABI_LONG(0x0000401a)
    306 #define MCI_DGV_STATUS_VIDEO_SOURCE __MSABI_LONG(0x0000401b)
    307 #define MCI_DGV_STATUS_VIDEO_RECORD __MSABI_LONG(0x0000401c)
    308 #define MCI_DGV_STATUS_STILL_FILEFORMAT __MSABI_LONG(0x0000401d)
    309 #define MCI_DGV_STATUS_VIDEO_SRC_NUM __MSABI_LONG(0x0000401e)
    310 #define MCI_DGV_STATUS_FILE_MODE __MSABI_LONG(0x0000401f)
    311 #define MCI_DGV_STATUS_FILE_COMPLETION __MSABI_LONG(0x00004020)
    312 #define MCI_DGV_STATUS_WINDOW_VISIBLE __MSABI_LONG(0x00004021)
    313 #define MCI_DGV_STATUS_WINDOW_MINIMIZED __MSABI_LONG(0x00004022)
    314 #define MCI_DGV_STATUS_WINDOW_MAXIMIZED __MSABI_LONG(0x00004023)
    315 #define MCI_DGV_STATUS_KEY_INDEX __MSABI_LONG(0x00004024)
    316 #define MCI_DGV_STATUS_KEY_COLOR __MSABI_LONG(0x00004025)
    317 #define MCI_DGV_STATUS_PAUSE_MODE __MSABI_LONG(0x00004026)
    318 #define MCI_DGV_STATUS_SAMPLESPERSEC __MSABI_LONG(0x00004027)
    319 #define MCI_DGV_STATUS_AVGBYTESPERSEC __MSABI_LONG(0x00004028)
    320 #define MCI_DGV_STATUS_BLOCKALIGN __MSABI_LONG(0x00004029)
    321 #define MCI_DGV_STATUS_BITSPERSAMPLE __MSABI_LONG(0x0000402a)
    322 #define MCI_DGV_STATUS_BITSPERPEL __MSABI_LONG(0x0000402b)
    323 #define MCI_DGV_STATUS_FORWARD __MSABI_LONG(0x0000402c)
    324 #define MCI_DGV_STATUS_AUDIO_STREAM __MSABI_LONG(0x0000402d)
    325 #define MCI_DGV_STATUS_VIDEO_STREAM __MSABI_LONG(0x0000402e)
    326 
    327 #define MCI_DGV_STEP_REVERSE __MSABI_LONG(0x00010000)
    328 #define MCI_DGV_STEP_FRAMES __MSABI_LONG(0x00020000)
    329 
    330 #define MCI_DGV_STOP_HOLD __MSABI_LONG(0x00010000)
    331 
    332 #define MCI_DGV_UPDATE_HDC __MSABI_LONG(0x00020000)
    333 #define MCI_DGV_UPDATE_PAINT __MSABI_LONG(0x00040000)
    334 
    335 #define MCI_DGV_WHERE_SOURCE __MSABI_LONG(0x00020000)
    336 #define MCI_DGV_WHERE_DESTINATION __MSABI_LONG(0x00040000)
    337 #define MCI_DGV_WHERE_FRAME __MSABI_LONG(0x00080000)
    338 #define MCI_DGV_WHERE_VIDEO __MSABI_LONG(0x00100000)
    339 #define MCI_DGV_WHERE_WINDOW __MSABI_LONG(0x00200000)
    340 #define MCI_DGV_WHERE_MAX __MSABI_LONG(0x00400000)
    341 
    342 #define MCI_DGV_WINDOW_HWND __MSABI_LONG(0x00010000)
    343 #define MCI_DGV_WINDOW_STATE __MSABI_LONG(0x00040000)
    344 #define MCI_DGV_WINDOW_TEXT __MSABI_LONG(0x00080000)
    345 
    346 #define MCI_DGV_WINDOW_DEFAULT __MSABI_LONG(0x00000000)
    347 
    348   typedef struct {
    349     DWORD_PTR dwCallback;
    350 #ifdef MCI_USE_OFFEXT
    351     POINT ptOffset;
    352     POINT ptExtent;
    353 #else
    354     RECT rc;
    355 #endif
    356   } MCI_DGV_RECT_PARMS;
    357 
    358   typedef MCI_DGV_RECT_PARMS *LPMCI_DGV_RECT_PARMS;
    359 
    360   typedef struct {
    361     DWORD_PTR dwCallback;
    362     LPSTR lpstrFileName;
    363 #ifdef MCI_USE_OFFEXT
    364     POINT ptOffset;
    365     POINT ptExtent;
    366 #else
    367     RECT rc;
    368 #endif
    369   } MCI_DGV_CAPTURE_PARMSA;
    370 
    371   typedef struct {
    372     DWORD_PTR dwCallback;
    373     LPWSTR lpstrFileName;
    374 #ifdef MCI_USE_OFFEXT
    375     POINT ptOffset;
    376     POINT ptExtent;
    377 #else
    378     RECT rc;
    379 #endif
    380   } MCI_DGV_CAPTURE_PARMSW;
    381 
    382   __MINGW_TYPEDEF_AW(MCI_DGV_CAPTURE_PARMS)
    383 
    384   typedef MCI_DGV_CAPTURE_PARMSA *LPMCI_DGV_CAPTURE_PARMSA;
    385   typedef MCI_DGV_CAPTURE_PARMSW *LPMCI_DGV_CAPTURE_PARMSW;
    386 
    387   __MINGW_TYPEDEF_AW(LPMCI_DGV_CAPTURE_PARMS)
    388 
    389   typedef MCI_GENERIC_PARMS MCI_CLOSE_PARMS;
    390   typedef MCI_CLOSE_PARMS *LPMCI_CLOSE_PARMS;
    391 
    392   typedef struct {
    393     DWORD_PTR dwCallback;
    394     DWORD dwFrom;
    395     DWORD dwTo;
    396 #ifdef MCI_USE_OFFEXT
    397     POINT ptOffset;
    398     POINT ptExtent;
    399 #else
    400     RECT rc;
    401 #endif
    402     DWORD dwAudioStream;
    403     DWORD dwVideoStream;
    404   } MCI_DGV_COPY_PARMS;
    405 
    406   typedef MCI_DGV_COPY_PARMS *LPMCI_DGV_COPY_PARMS;
    407 
    408   typedef struct {
    409     DWORD_PTR dwCallback;
    410     DWORD dwTo;
    411   } MCI_DGV_CUE_PARMS;
    412 
    413   typedef MCI_DGV_CUE_PARMS *LPMCI_DGV_CUE_PARMS;
    414 
    415   typedef struct {
    416     DWORD_PTR dwCallback;
    417     DWORD dwFrom;
    418     DWORD dwTo;
    419 #ifdef MCI_USE_OFFEXT
    420     POINT ptOffset;
    421     POINT ptExtent;
    422 #else
    423     RECT rc;
    424 #endif
    425     DWORD dwAudioStream;
    426     DWORD dwVideoStream;
    427   } MCI_DGV_CUT_PARMS;
    428 
    429   typedef MCI_DGV_CUT_PARMS *LPMCI_DGV_CUT_PARMS;
    430 
    431   typedef struct {
    432     DWORD_PTR dwCallback;
    433     DWORD dwFrom;
    434     DWORD dwTo;
    435 #ifdef MCI_USE_OFFEXT
    436     POINT ptOffset;
    437     POINT ptExtent;
    438 #else
    439     RECT rc;
    440 #endif
    441     DWORD dwAudioStream;
    442     DWORD dwVideoStream;
    443   } MCI_DGV_DELETE_PARMS;
    444 
    445   typedef MCI_DGV_DELETE_PARMS *LPMCI_DGV_DELETE_PARMS;
    446   typedef MCI_DGV_RECT_PARMS MCI_DGV_FREEZE_PARMS;
    447   typedef MCI_DGV_FREEZE_PARMS *LPMCI_DGV_FREEZE_PARMS;
    448 
    449   typedef struct {
    450     DWORD_PTR dwCallback;
    451     LPSTR lpstrReturn;
    452     DWORD dwRetSize;
    453     DWORD dwItem;
    454   } MCI_DGV_INFO_PARMSA;
    455 
    456   typedef struct {
    457     DWORD_PTR dwCallback;
    458     LPWSTR lpstrReturn;
    459     DWORD dwRetSize;
    460     DWORD dwItem;
    461   } MCI_DGV_INFO_PARMSW;
    462 
    463   __MINGW_TYPEDEF_AW(MCI_DGV_INFO_PARMS)
    464 
    465   typedef MCI_DGV_INFO_PARMSA *LPMCI_DGV_INFO_PARMSA;
    466   typedef MCI_DGV_INFO_PARMSW *LPMCI_DGV_INFO_PARMSW;
    467 
    468   __MINGW_TYPEDEF_AW(LPMCI_DGV_INFO_PARMS)
    469 
    470   typedef struct {
    471     DWORD_PTR dwCallback;
    472     LPSTR lpstrReturn;
    473     DWORD dwLength;
    474     DWORD dwNumber;
    475     DWORD dwItem;
    476     LPSTR lpstrAlgorithm;
    477   } MCI_DGV_LIST_PARMSA;
    478 
    479   typedef struct {
    480     DWORD_PTR dwCallback;
    481     LPWSTR lpstrReturn;
    482     DWORD dwLength;
    483     DWORD dwNumber;
    484     DWORD dwItem;
    485     LPWSTR lpstrAlgorithm;
    486   } MCI_DGV_LIST_PARMSW;
    487 
    488   __MINGW_TYPEDEF_AW(MCI_DGV_LIST_PARMS)
    489 
    490   typedef MCI_DGV_LIST_PARMSA *LPMCI_DGV_LIST_PARMSA;
    491   typedef MCI_DGV_LIST_PARMSW *LPMCI_DGV_LIST_PARMSW;
    492 
    493   __MINGW_TYPEDEF_AW(LPMCI_DGV_LIST_PARMS)
    494 
    495   typedef MCI_LOAD_PARMS MCI_DGV_LOAD_PARMS;
    496   typedef MCI_DGV_LOAD_PARMS *LPMCI_DGV_LOAD_PARMS;
    497 
    498   typedef struct {
    499     DWORD_PTR dwCallback;
    500     DWORD dwSource;
    501     DWORD dwMethod;
    502   } MCI_DGV_MONITOR_PARMS;
    503 
    504   typedef MCI_DGV_MONITOR_PARMS *LPMCI_DGV_MONITOR_PARMS;
    505 
    506   typedef struct {
    507     DWORD_PTR dwCallback;
    508     UINT wDeviceID;
    509     LPSTR lpstrDeviceType;
    510     LPSTR lpstrElementName;
    511     LPSTR lpstrAlias;
    512     DWORD dwStyle;
    513     HWND hWndParent;
    514   } MCI_DGV_OPEN_PARMSA;
    515 
    516   typedef struct {
    517     DWORD_PTR dwCallback;
    518     UINT wDeviceID;
    519     LPWSTR lpstrDeviceType;
    520     LPWSTR lpstrElementName;
    521     LPWSTR lpstrAlias;
    522     DWORD dwStyle;
    523     HWND hWndParent;
    524   } MCI_DGV_OPEN_PARMSW;
    525 
    526   __MINGW_TYPEDEF_AW(MCI_DGV_OPEN_PARMS)
    527 
    528   typedef MCI_DGV_OPEN_PARMSA *LPMCI_DGV_OPEN_PARMSA;
    529   typedef MCI_DGV_OPEN_PARMSW *LPMCI_DGV_OPEN_PARMSW;
    530 
    531   __MINGW_TYPEDEF_AW(LPMCI_DGV_OPEN_PARMS)
    532 
    533   typedef MCI_GENERIC_PARMS MCI_DGV_PAUSE_PARMS;
    534   typedef MCI_DGV_PAUSE_PARMS *LPMCI_DGV_PAUSE_PARMS;
    535 
    536   typedef struct {
    537     DWORD_PTR dwCallback;
    538     DWORD dwTo;
    539 #ifdef MCI_USE_OFFEXT
    540     POINT ptOffset;
    541     POINT ptExtent;
    542 #else
    543     RECT rc;
    544 #endif
    545     DWORD dwAudioStream;
    546     DWORD dwVideoStream;
    547   } MCI_DGV_PASTE_PARMS;
    548 
    549   typedef MCI_DGV_PASTE_PARMS *LPMCI_DGV_PASTE_PARMS;
    550   typedef MCI_PLAY_PARMS MCI_DGV_PLAY_PARMS;
    551   typedef MCI_DGV_PLAY_PARMS *LPMCI_DGV_PLAY_PARMS;
    552   typedef MCI_DGV_RECT_PARMS MCI_DGV_PUT_PARMS;
    553   typedef MCI_DGV_PUT_PARMS *LPMCI_DGV_PUT_PARMS;
    554 
    555   typedef struct {
    556     DWORD_PTR dwCallback;
    557     DWORD dwItem;
    558     LPSTR lpstrName;
    559     DWORD lpstrAlgorithm;
    560     DWORD dwHandle;
    561   } MCI_DGV_QUALITY_PARMSA;
    562 
    563   typedef struct {
    564     DWORD_PTR dwCallback;
    565     DWORD dwItem;
    566     LPWSTR lpstrName;
    567     DWORD lpstrAlgorithm;
    568     DWORD dwHandle;
    569   } MCI_DGV_QUALITY_PARMSW;
    570 
    571   __MINGW_TYPEDEF_AW(MCI_DGV_QUALITY_PARMS)
    572 
    573   typedef MCI_DGV_QUALITY_PARMSA *LPMCI_DGV_QUALITY_PARMSA;
    574   typedef MCI_DGV_QUALITY_PARMSW *LPMCI_DGV_QUALITY_PARMSW;
    575 
    576   __MINGW_TYPEDEF_AW(LPMCI_DGV_QUALITY_PARMS)
    577 
    578   typedef MCI_GENERIC_PARMS MCI_REALIZE_PARMS;
    579   typedef MCI_REALIZE_PARMS *LPMCI_REALIZE_PARMS;
    580 
    581   typedef struct {
    582     DWORD_PTR dwCallback;
    583     DWORD dwFrom;
    584     DWORD dwTo;
    585 #ifdef MCI_USE_OFFEXT
    586     POINT ptOffset;
    587     POINT ptExtent;
    588 #else
    589     RECT rc;
    590 #endif
    591     DWORD dwAudioStream;
    592     DWORD dwVideoStream;
    593   } MCI_DGV_RECORD_PARMS;
    594 
    595   typedef MCI_DGV_RECORD_PARMS *LPMCI_DGV_RECORD_PARMS;
    596 
    597   typedef struct {
    598     DWORD_PTR dwCallback;
    599     LPSTR lpstrPath;
    600     DWORD dwSize;
    601   } MCI_DGV_RESERVE_PARMSA;
    602 
    603   typedef struct {
    604     DWORD_PTR dwCallback;
    605     LPWSTR lpstrPath;
    606     DWORD dwSize;
    607   } MCI_DGV_RESERVE_PARMSW;
    608 
    609   __MINGW_TYPEDEF_AW(MCI_DGV_RESERVE_PARMS)
    610 
    611   typedef MCI_DGV_RESERVE_PARMSA *LPMCI_DGV_RESERVE_PARMSA;
    612   typedef MCI_DGV_RESERVE_PARMSW *LPMCI_DGV_RESERVE_PARMSW;
    613 
    614   __MINGW_TYPEDEF_AW(LPMCI_DGV_RESERVE_PARMS)
    615 
    616   typedef struct {
    617     DWORD_PTR dwCallback;
    618     LPSTR lpstrFileName;
    619 #ifdef MCI_USE_OFFEXT
    620     POINT ptOffset;
    621     POINT ptExtent;
    622 #else
    623     RECT rc;
    624 #endif
    625   } MCI_DGV_RESTORE_PARMSA;
    626 
    627   typedef struct {
    628     DWORD_PTR dwCallback;
    629     LPWSTR lpstrFileName;
    630 #ifdef MCI_USE_OFFEXT
    631     POINT ptOffset;
    632     POINT ptExtent;
    633 #else
    634     RECT rc;
    635 #endif
    636   } MCI_DGV_RESTORE_PARMSW;
    637 
    638   __MINGW_TYPEDEF_AW(MCI_DGV_RESTORE_PARMS)
    639 
    640   typedef MCI_DGV_RESTORE_PARMSA *LPMCI_DGV_RESTORE_PARMSA;
    641   typedef MCI_DGV_RESTORE_PARMSW *LPMCI_DGV_RESTORE_PARMSW;
    642 
    643   __MINGW_TYPEDEF_AW(LPMCI_DGV_RESTORE_PARMS)
    644 
    645   typedef MCI_GENERIC_PARMS MCI_DGV_RESUME_PARMS;
    646   typedef MCI_DGV_RESUME_PARMS *LPMCI_DGV_RESUME_PARMS;
    647 
    648   typedef struct {
    649     DWORD_PTR dwCallback;
    650     LPSTR lpstrFileName;
    651     RECT rc;
    652   } MCI_DGV_SAVE_PARMSA;
    653 
    654   typedef struct {
    655     DWORD_PTR dwCallback;
    656     LPWSTR lpstrFileName;
    657     RECT rc;
    658   } MCI_DGV_SAVE_PARMSW;
    659 
    660   __MINGW_TYPEDEF_AW(MCI_DGV_SAVE_PARMS)
    661 
    662   typedef MCI_DGV_SAVE_PARMSA *LPMCI_DGV_SAVE_PARMSA;
    663   typedef MCI_DGV_SAVE_PARMSW *LPMCI_DGV_SAVE_PARMSW;
    664 
    665   __MINGW_TYPEDEF_AW(LPMCI_DGV_SAVE_PARMS)
    666 
    667   typedef struct {
    668     DWORD_PTR dwCallback;
    669     DWORD dwTimeFormat;
    670     DWORD dwAudio;
    671     DWORD dwFileFormat;
    672     DWORD dwSpeed;
    673   } MCI_DGV_SET_PARMS;
    674 
    675   typedef MCI_DGV_SET_PARMS *LPMCI_DGV_SET_PARMS;
    676 
    677   typedef struct {
    678     DWORD_PTR dwCallback;
    679     DWORD dwItem;
    680     DWORD dwValue;
    681     DWORD dwOver;
    682     LPSTR lpstrAlgorithm;
    683     LPSTR lpstrQuality;
    684   } MCI_DGV_SETAUDIO_PARMSA;
    685 
    686   typedef struct {
    687     DWORD_PTR dwCallback;
    688     DWORD dwItem;
    689     DWORD dwValue;
    690     DWORD dwOver;
    691     LPWSTR lpstrAlgorithm;
    692     LPWSTR lpstrQuality;
    693   } MCI_DGV_SETAUDIO_PARMSW;
    694 
    695   __MINGW_TYPEDEF_AW(MCI_DGV_SETAUDIO_PARMS)
    696 
    697   typedef MCI_DGV_SETAUDIO_PARMSA *LPMCI_DGV_SETAUDIO_PARMSA;
    698   typedef MCI_DGV_SETAUDIO_PARMSW *LPMCI_DGV_SETAUDIO_PARMSW;
    699 
    700   __MINGW_TYPEDEF_AW(LPMCI_DGV_SETAUDIO_PARMS)
    701 
    702   typedef struct {
    703     DWORD_PTR dwCallback;
    704     DWORD dwPosition;
    705     DWORD dwPeriod;
    706     DWORD dwUserParm;
    707   } MCI_DGV_SIGNAL_PARMS;
    708   typedef MCI_DGV_SIGNAL_PARMS *LPMCI_DGV_SIGNAL_PARMS;
    709 
    710   typedef struct {
    711     DWORD_PTR dwCallback;
    712     DWORD dwItem;
    713     DWORD dwValue;
    714     DWORD dwOver;
    715     LPSTR lpstrAlgorithm;
    716     LPSTR lpstrQuality;
    717     DWORD dwSourceNumber;
    718   } MCI_DGV_SETVIDEO_PARMSA;
    719 
    720   typedef struct {
    721     DWORD_PTR dwCallback;
    722     DWORD dwItem;
    723     DWORD dwValue;
    724     DWORD dwOver;
    725     LPWSTR lpstrAlgorithm;
    726     LPWSTR lpstrQuality;
    727     DWORD dwSourceNumber;
    728   } MCI_DGV_SETVIDEO_PARMSW;
    729 
    730   __MINGW_TYPEDEF_AW(MCI_DGV_SETVIDEO_PARMS)
    731 
    732   typedef MCI_DGV_SETVIDEO_PARMSA *LPMCI_DGV_SETVIDEO_PARMSA;
    733   typedef MCI_DGV_SETVIDEO_PARMSW *LPMCI_DGV_SETVIDEO_PARMSW;
    734 
    735   __MINGW_TYPEDEF_AW(LPMCI_DGV_SETVIDEO_PARMS)
    736 
    737   typedef struct {
    738     DWORD_PTR dwCallback;
    739     DWORD_PTR dwReturn;
    740     DWORD dwItem;
    741     DWORD dwTrack;
    742     LPSTR lpstrDrive;
    743     DWORD dwReference;
    744   } MCI_DGV_STATUS_PARMSA;
    745   typedef struct {
    746     DWORD_PTR dwCallback;
    747     DWORD_PTR dwReturn;
    748     DWORD dwItem;
    749     DWORD dwTrack;
    750     LPWSTR lpstrDrive;
    751     DWORD dwReference;
    752   } MCI_DGV_STATUS_PARMSW;
    753 
    754   __MINGW_TYPEDEF_AW(MCI_DGV_STATUS_PARMS)
    755 
    756   typedef MCI_DGV_STATUS_PARMSA *LPMCI_DGV_STATUS_PARMSA;
    757   typedef MCI_DGV_STATUS_PARMSW *LPMCI_DGV_STATUS_PARMSW;
    758 
    759   __MINGW_TYPEDEF_AW(LPMCI_DGV_STATUS_PARMS)
    760 
    761   typedef struct {
    762     DWORD_PTR dwCallback;
    763     DWORD dwFrames;
    764   } MCI_DGV_STEP_PARMS;
    765   typedef MCI_DGV_STEP_PARMS *LPMCI_DGV_STEP_PARMS;
    766 
    767   typedef MCI_GENERIC_PARMS MCI_DGV_STOP_PARMS;
    768   typedef MCI_DGV_STOP_PARMS *LPMCI_DGV_STOP_PARMS;
    769 
    770   typedef MCI_DGV_RECT_PARMS MCI_DGV_UNFREEZE_PARMS;
    771   typedef MCI_DGV_UNFREEZE_PARMS *LPMCI_DGV_UNFREEZE_PARMS;
    772 
    773   typedef struct {
    774     DWORD_PTR dwCallback;
    775 #ifdef MCI_USE_OFFEXT
    776     POINT ptOffset;
    777     POINT ptExtent;
    778 #else
    779     RECT rc;
    780 #endif
    781     HDC hDC;
    782   } MCI_DGV_UPDATE_PARMS;
    783 
    784   typedef MCI_DGV_UPDATE_PARMS *LPMCI_DGV_UPDATE_PARMS;
    785 
    786   typedef MCI_DGV_RECT_PARMS MCI_DGV_WHERE_PARMS;
    787   typedef MCI_DGV_WHERE_PARMS *LPMCI_DGV_WHERE_PARMS;
    788 
    789   typedef struct {
    790     DWORD_PTR dwCallback;
    791     HWND hWnd;
    792     UINT nCmdShow;
    793     LPSTR lpstrText;
    794   } MCI_DGV_WINDOW_PARMSA;
    795 
    796   typedef struct {
    797     DWORD_PTR dwCallback;
    798     HWND hWnd;
    799     UINT nCmdShow;
    800     LPWSTR lpstrText;
    801   } MCI_DGV_WINDOW_PARMSW;
    802 
    803   __MINGW_TYPEDEF_AW(MCI_DGV_WINDOW_PARMS)
    804 
    805   typedef MCI_DGV_WINDOW_PARMSA *LPMCI_DGV_WINDOW_PARMSA;
    806   typedef MCI_DGV_WINDOW_PARMSW *LPMCI_DGV_WINDOW_PARMSW;
    807 
    808   __MINGW_TYPEDEF_AW(LPMCI_DGV_WINDOW_PARMS)
    809 
    810 #ifdef __cplusplus
    811 }
    812 #endif
    813 
    814 #include <poppack.h>
    815 
    816 #endif
    817