diff --git a/reactos/dll/win32/mciavi32/info.c b/reactos/dll/win32/mciavi32/info.c index b2ec0308cdd..668464cded1 100644 --- a/reactos/dll/win32/mciavi32/info.c +++ b/reactos/dll/win32/mciavi32/info.c @@ -211,16 +211,11 @@ DWORD MCIAVI_mciInfo(UINT wDevID, DWORD dwFlags, LPMCI_DGV_INFO_PARMSW lpParms) WARN("Don't know this info command (%u)\n", dwFlags); ret = MCIERR_UNRECOGNIZED_COMMAND; } - if (str) { - if (strlenW(str) + 1 > lpParms->dwRetSize) { - ret = MCIERR_PARAM_OVERFLOW; - } else { - lstrcpynW(lpParms->lpstrReturn, str, lpParms->dwRetSize); - } - } else { - lpParms->lpstrReturn[0] = 0; + if (!ret) { + WCHAR zero = 0; + /* Only mciwave, mciseq and mcicda set dwRetSize (since NT). */ + lstrcpynW(lpParms->lpstrReturn, str ? str : &zero, lpParms->dwRetSize); } - LeaveCriticalSection(&wma->cs); return ret; } diff --git a/reactos/dll/win32/mciavi32/mciavi.c b/reactos/dll/win32/mciavi32/mciavi.c index 731083eea15..c78ddc058be 100644 --- a/reactos/dll/win32/mciavi32/mciavi.c +++ b/reactos/dll/win32/mciavi32/mciavi.c @@ -26,11 +26,13 @@ * - synchronization between audio and video (especially for interleaved * files) * - robustness when reading file can be enhanced - * - better move the AVI handling part to avifile DLL and make use of it + * - reimplement the AVI handling part with avifile DLL because + * "open @1122334 type avivideo alias a" expects an AVIFile/Stream + * and MCI_DGV_SET|STATUS_SPEED maps to Rate/Scale * - some files appear to have more than one audio stream (we only play the * first one) * - some files contain an index of audio/video frame. Better use it, - * instead of rebuilding it + * instead of rebuilding it (AVIFile does that already) * - stopping while playing a file with sound blocks until all buffered * audio is played... still should be stopped ASAP */ @@ -256,6 +258,12 @@ static DWORD MCIAVI_mciOpen(UINT wDevID, DWORD dwFlags, wma->lpFileName = HeapAlloc(GetProcessHeap(), 0, (strlenW(lpOpenParms->lpstrElementName) + 1) * sizeof(WCHAR)); strcpyW(wma->lpFileName, lpOpenParms->lpstrElementName); + if (lpOpenParms->lpstrElementName[0] == '@') { + /* The file name @11223344 encodes an AVIFile handle in decimal notation + * in Win3.1 and w2k/NT, but this feature is absent in win95 (KB140750). + * wma->hFile = LongToHandle(strtolW(lpOpenParms->lpstrElementName+1, NULL, 10)); */ + FIXME("Using AVIFile/Stream %s NIY\n", debugstr_w(lpOpenParms->lpstrElementName)); + } wma->hFile = mmioOpenW(lpOpenParms->lpstrElementName, NULL, MMIO_ALLOCBUF | MMIO_DENYWRITE | MMIO_READ); diff --git a/reactos/dll/win32/mciavi32/mciavi_res.rc b/reactos/dll/win32/mciavi32/mciavi_res.rc index d1e8faca3ec..e2e4caa805c 100644 --- a/reactos/dll/win32/mciavi32/mciavi_res.rc +++ b/reactos/dll/win32/mciavi32/mciavi_res.rc @@ -22,9 +22,15 @@ #include "mmddk.h" #include "digitalv.h" +#ifdef MCI_INTEGER64 +#define MCI_DWORD_PTR MCI_INTEGER64 +#else +#define MCI_DWORD_PTR MCI_INTEGER +#endif + MCIAVI RCDATA BEGIN -L"play\0", 0x00000806L, MCI_COMMAND_HEAD, +L"play\0", MCI_PLAY, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -36,8 +42,8 @@ L"window\0", 0x01000000L, MCI_FLAG, L"fullscreen by 2\0", 0x04000000L, MCI_FLAG, L"fullscreen\0", 0x02000000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"capability\0", 0x0000080bL, MCI_COMMAND_HEAD, -L"\0", 0x00000002L, MCI_RETURN, +L"capability\0", MCI_GETDEVCAPS, 0, MCI_COMMAND_HEAD, +L"\0", MCI_INTEGER, 0, MCI_RETURN, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -65,23 +71,23 @@ L"minimum play rate\0", 0x0000400bL, MCI_INTEGER, L"can colorkey\0", 0x00004100L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_CONSTANT, L"\0", 0x00000000L, MCI_END_COMMAND, -L"capture\0", 0x00000870L, MCI_COMMAND_HEAD, +L"capture\0", MCI_CAPTURE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"as\0", 0x00010000L, MCI_STRING, L"at\0", 0x00020000L, MCI_RECT, L"\0", 0x00000000L, MCI_END_COMMAND, -L"close\0", 0x00000804L, MCI_COMMAND_HEAD, +L"close\0", MCI_CLOSE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"configure\0", 0x0000087aL, MCI_COMMAND_HEAD, +L"configure\0", MCI_CONFIGURE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"copy\0", 0x00000852L, MCI_COMMAND_HEAD, +L"copy\0", MCI_COPY, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -91,7 +97,7 @@ L"at\0", 0x00010000L, MCI_RECT, L"audio stream\0", 0x00020000L, MCI_INTEGER, L"video stream\0", 0x00040000L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_COMMAND, -L"cue\0", 0x00000830L, MCI_COMMAND_HEAD, +L"cue\0", MCI_CUE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -100,7 +106,7 @@ L"output\0", 0x00020000L, MCI_FLAG, L"to\0", 0x00000008L, MCI_INTEGER, L"noshow\0", 0x00040000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"cut\0", 0x00000851L, MCI_COMMAND_HEAD, +L"cut\0", MCI_CUT, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -110,7 +116,7 @@ L"at\0", 0x00010000L, MCI_RECT, L"audio stream\0", 0x00020000L, MCI_INTEGER, L"video stream\0", 0x00040000L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_COMMAND, -L"delete\0", 0x00000856L, MCI_COMMAND_HEAD, +L"delete\0", MCI_DELETE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -120,15 +126,15 @@ L"at\0", 0x00010000L, MCI_RECT, L"audio stream\0", 0x00020000L, MCI_INTEGER, L"video stream\0", 0x00040000L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_COMMAND, -L"freeze\0", 0x00000844L, MCI_COMMAND_HEAD, +L"freeze\0", MCI_FREEZE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"at\0", 0x00010000L, MCI_RECT, L"outside\0", 0x00020000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"info\0", 0x0000080aL, MCI_COMMAND_HEAD, -L"\0", 0x00000001L, MCI_RETURN, +L"info\0", MCI_INFO, 0, MCI_COMMAND_HEAD, +L"\0", MCI_STRING, 0, MCI_RETURN, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -146,8 +152,8 @@ L"video algorithm\0", 0x00004006L, MCI_INTEGER, L"video quality\0", 0x00004003L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_CONSTANT, L"\0", 0x00000000L, MCI_END_COMMAND, -L"list\0", 0x00000878L, MCI_COMMAND_HEAD, -L"\0", 0x00000001L, MCI_RETURN, +L"list\0", MCI_LIST, 0, MCI_COMMAND_HEAD, +L"\0", MCI_STRING, 0, MCI_RETURN, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -166,13 +172,13 @@ L"video stream\0", 0x00004007L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_CONSTANT, L"algorithm\0", 0x00080000L, MCI_STRING, L"\0", 0x00000000L, MCI_END_COMMAND, -L"load\0", 0x00000850L, MCI_COMMAND_HEAD, +L"load\0", MCI_LOAD, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"\0", 0x00000100L, MCI_STRING, L"\0", 0x00000000L, MCI_END_COMMAND, -L"monitor\0", 0x00000871L, MCI_COMMAND_HEAD, +L"monitor\0", MCI_MONITOR, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -186,8 +192,8 @@ L"post\0", 0x0000a001L, MCI_INTEGER, L"direct\0", 0x0000a002L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_CONSTANT, L"\0", 0x00000000L, MCI_END_COMMAND, -L"open\0", 0x00000803L, MCI_COMMAND_HEAD, -L"\0", 0x00000002L, MCI_RETURN, +L"open\0", MCI_OPEN, 0, MCI_COMMAND_HEAD, +L"\0", MCI_INTEGER, 0, MCI_RETURN, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"type\0", 0x00002000L, MCI_STRING, @@ -199,10 +205,10 @@ L"overlapped\0", 0x00cf0000L, MCI_INTEGER, L"popup\0", 0x80880000L, MCI_INTEGER, L"child\0", 0x40000000L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_CONSTANT, -L"parent\0", 0x00020000L, MCI_INTEGER, +L"parent\0", 0x00020000L, MCI_HWND, L"nostatic\0", 0x00040000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"paste\0", 0x00000853L, MCI_COMMAND_HEAD, +L"paste\0", MCI_PASTE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -213,12 +219,12 @@ L"overwrite\0", 0x00100000L, MCI_FLAG, L"audio stream\0", 0x00020000L, MCI_INTEGER, L"video stream\0", 0x00040000L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_COMMAND, -L"pause\0", 0x00000809L, MCI_COMMAND_HEAD, +L"pause\0", MCI_PAUSE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"put\0", 0x00000842L, MCI_COMMAND_HEAD, +L"put\0", MCI_PUT, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -230,7 +236,7 @@ L"video\0", 0x00100000L, MCI_FLAG, L"window\0", 0x00200000L, MCI_FLAG, L"client\0", 0x00400000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"quality\0", 0x00000877L, MCI_COMMAND_HEAD, +L"quality\0", MCI_QUALITY, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -244,14 +250,14 @@ L"algorithm\0", 0x00040000L, MCI_STRING, L"dialog\0", 0x00080000L, MCI_FLAG, L"handle\0", 0x00100000L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_COMMAND, -L"realize\0", 0x00000840L, MCI_COMMAND_HEAD, +L"realize\0", MCI_REALIZE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"normal\0", 0x00010000L, MCI_FLAG, L"background\0", 0x00020000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"record\0", 0x0000080fL, MCI_COMMAND_HEAD, +L"record\0", MCI_RECORD, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -264,26 +270,26 @@ L"hold\0", 0x00020000L, MCI_FLAG, L"audio stream\0", 0x00040000L, MCI_INTEGER, L"video stream\0", 0x00080000L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_COMMAND, -L"reserve\0", 0x00000872L, MCI_COMMAND_HEAD, +L"reserve\0", MCI_RESERVE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"in\0", 0x00010000L, MCI_STRING, L"size\0", 0x00020000L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_COMMAND, -L"restore\0", 0x0000087bL, MCI_COMMAND_HEAD, +L"restore\0", MCI_RESTORE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"from\0", 0x00010000L, MCI_STRING, L"at\0", 0x00020000L, MCI_RECT, L"\0", 0x00000000L, MCI_END_COMMAND, -L"resume\0", 0x00000855L, MCI_COMMAND_HEAD, +L"resume\0", MCI_RESUME, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"save\0", 0x00000813L, MCI_COMMAND_HEAD, +L"save\0", MCI_SAVE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -292,7 +298,7 @@ L"at\0", 0x00010000L, MCI_RECT, L"abort\0", 0x00020000L, MCI_FLAG, L"keepreserve\0", 0x00040000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"seek\0", 0x00000807L, MCI_COMMAND_HEAD, +L"seek\0", MCI_SEEK, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -300,7 +306,7 @@ L"to start\0", 0x00000100L, MCI_FLAG, L"to end\0", 0x00000200L, MCI_FLAG, L"to\0", 0x00000008L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_COMMAND, -L"set\0", 0x0000080dL, MCI_COMMAND_HEAD, +L"set\0", MCI_SET, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -334,7 +340,7 @@ L"on\0", 0x00002000L, MCI_FLAG, L"off\0", 0x00004000L, MCI_FLAG, L"speed\0", 0x00020000L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_COMMAND, -L"setaudio\0", 0x00000873L, MCI_COMMAND_HEAD, +L"setaudio\0", MCI_SETAUDIO, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -367,7 +373,7 @@ L"off\0", 0x00004000L, MCI_FLAG, L"input\0", 0x02000000L, MCI_FLAG, L"output\0", 0x04000000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"setvideo\0", 0x00000876L, MCI_COMMAND_HEAD, +L"setvideo\0", MCI_SETVIDEO, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -404,7 +410,7 @@ L"off\0", 0x00004000L, MCI_FLAG, L"input\0", 0x02000000L, MCI_FLAG, L"output\0", 0x04000000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"signal\0", 0x00000875L, MCI_COMMAND_HEAD, +L"signal\0", MCI_SIGNAL, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -414,8 +420,8 @@ L"uservalue\0", 0x00040000L, MCI_INTEGER, L"cancel\0", 0x00080000L, MCI_FLAG, L"return position\0", 0x00100000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"status\0", 0x00000814L, MCI_COMMAND_HEAD, -L"\0", 0x00000002L, MCI_RETURN, +L"status\0", MCI_STATUS, 0, MCI_COMMAND_HEAD, +L"\0", MCI_DWORD_PTR, 0, MCI_RETURN, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -494,40 +500,40 @@ L"output\0", 0x00800000L, MCI_FLAG, L"disk space\0", 0x00200000L, MCI_STRING, L"reference\0", 0x00040000L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_COMMAND, -L"step\0", 0x0000080eL, MCI_COMMAND_HEAD, +L"step\0", MCI_STEP, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"reverse\0", 0x00010000L, MCI_FLAG, L"by\0", 0x00020000L, MCI_INTEGER, L"\0", 0x00000000L, MCI_END_COMMAND, -L"stop\0", 0x00000808L, MCI_COMMAND_HEAD, +L"stop\0", MCI_STOP, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"hold\0", 0x00010000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"undo\0", 0x00000879L, MCI_COMMAND_HEAD, +L"undo\0", MCI_UNDO, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"unfreeze\0", 0x00000845L, MCI_COMMAND_HEAD, +L"unfreeze\0", MCI_UNFREEZE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"at\0", 0x00010000L, MCI_RECT, L"\0", 0x00000000L, MCI_END_COMMAND, -L"update\0", 0x00000854L, MCI_COMMAND_HEAD, +L"update\0", MCI_UPDATE, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"at\0", 0x00010000L, MCI_RECT, -L"hdc\0", 0x00020000L, MCI_INTEGER, +L"hdc\0", 0x00020000L, MCI_HDC, L"paint\0", 0x00040000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"where\0", 0x00000843L, MCI_COMMAND_HEAD, -L"\0", 0x00000007L, MCI_RETURN, +L"where\0", MCI_WHERE, 0, MCI_COMMAND_HEAD, +L"\0", MCI_RECT, 0, MCI_RETURN, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, @@ -539,12 +545,12 @@ L"window\0", 0x00200000L, MCI_FLAG, L"max\0", 0x00400000L, MCI_FLAG, L"min\0", 0x00800000L, MCI_FLAG, L"\0", 0x00000000L, MCI_END_COMMAND, -L"window\0", 0x00000841L, MCI_COMMAND_HEAD, +L"window\0", MCI_WINDOW, 0, MCI_COMMAND_HEAD, L"notify\0", 0x00000001L, MCI_FLAG, L"wait\0", 0x00000002L, MCI_FLAG, L"test\0", 0x00000020L, MCI_FLAG, L"handle\0", 0x00010000L, MCI_CONSTANT, -L"default\0", 0x00000000L, MCI_INTEGER, +L"default\0", 0x00000000L, MCI_HWND, L"\0", 0x00000000L, MCI_END_CONSTANT, L"state\0", 0x00040000L, MCI_CONSTANT, L"hide\0", 0x00000000L, MCI_INTEGER, diff --git a/reactos/dll/win32/mciavi32/private_mciavi.h b/reactos/dll/win32/mciavi32/private_mciavi.h index 548254c5a4f..1ee0eb3432a 100644 --- a/reactos/dll/win32/mciavi32/private_mciavi.h +++ b/reactos/dll/win32/mciavi32/private_mciavi.h @@ -82,32 +82,32 @@ typedef struct { HANDLE ack_event; /* acknowledge that an async command has started */ } WINE_MCIAVI; -extern HINSTANCE MCIAVI_hInstance; +extern HINSTANCE MCIAVI_hInstance DECLSPEC_HIDDEN; /* info.c */ -DWORD MCIAVI_ConvertTimeFormatToFrame(WINE_MCIAVI* wma, DWORD val); -DWORD MCIAVI_mciGetDevCaps(UINT wDevID, DWORD dwFlags, LPMCI_GETDEVCAPS_PARMS lpParms); -DWORD MCIAVI_mciInfo(UINT wDevID, DWORD dwFlags, LPMCI_DGV_INFO_PARMSW lpParms); -DWORD MCIAVI_mciSet(UINT wDevID, DWORD dwFlags, LPMCI_DGV_SET_PARMS lpParms); -DWORD MCIAVI_mciStatus(UINT wDevID, DWORD dwFlags, LPMCI_DGV_STATUS_PARMSW lpParms); +DWORD MCIAVI_ConvertTimeFormatToFrame(WINE_MCIAVI* wma, DWORD val) DECLSPEC_HIDDEN; +DWORD MCIAVI_mciGetDevCaps(UINT wDevID, DWORD dwFlags, LPMCI_GETDEVCAPS_PARMS lpParms) DECLSPEC_HIDDEN; +DWORD MCIAVI_mciInfo(UINT wDevID, DWORD dwFlags, LPMCI_DGV_INFO_PARMSW lpParms) DECLSPEC_HIDDEN; +DWORD MCIAVI_mciSet(UINT wDevID, DWORD dwFlags, LPMCI_DGV_SET_PARMS lpParms) DECLSPEC_HIDDEN; +DWORD MCIAVI_mciStatus(UINT wDevID, DWORD dwFlags, LPMCI_DGV_STATUS_PARMSW lpParms) DECLSPEC_HIDDEN; /* mmoutput.c */ -BOOL MCIAVI_GetInfo(WINE_MCIAVI* wma); -DWORD MCIAVI_OpenAudio(WINE_MCIAVI* wma, unsigned* nHdr, LPWAVEHDR* pWaveHdr); -BOOL MCIAVI_OpenVideo(WINE_MCIAVI* wma); -void MCIAVI_PlayAudioBlocks(WINE_MCIAVI* wma, unsigned nHdr, LPWAVEHDR waveHdr); -LRESULT MCIAVI_PaintFrame(WINE_MCIAVI* wma, HDC hDC); +BOOL MCIAVI_GetInfo(WINE_MCIAVI* wma) DECLSPEC_HIDDEN; +DWORD MCIAVI_OpenAudio(WINE_MCIAVI* wma, unsigned* nHdr, LPWAVEHDR* pWaveHdr) DECLSPEC_HIDDEN; +BOOL MCIAVI_OpenVideo(WINE_MCIAVI* wma) DECLSPEC_HIDDEN; +void MCIAVI_PlayAudioBlocks(WINE_MCIAVI* wma, unsigned nHdr, LPWAVEHDR waveHdr) DECLSPEC_HIDDEN; +LRESULT MCIAVI_PaintFrame(WINE_MCIAVI* wma, HDC hDC) DECLSPEC_HIDDEN; /* mciavi.c */ -WINE_MCIAVI* MCIAVI_mciGetOpenDev(UINT wDevID); -DWORD MCIAVI_mciClose(UINT, DWORD, LPMCI_GENERIC_PARMS); +WINE_MCIAVI* MCIAVI_mciGetOpenDev(UINT wDevID) DECLSPEC_HIDDEN; +DWORD MCIAVI_mciClose(UINT, DWORD, LPMCI_GENERIC_PARMS) DECLSPEC_HIDDEN; /* wnd.c */ -BOOL MCIAVI_RegisterClass(void); -BOOL MCIAVI_UnregisterClass(void); -BOOL MCIAVI_CreateWindow(WINE_MCIAVI* wma, DWORD dwFlags, LPMCI_DGV_OPEN_PARMSW lpOpenParms); -DWORD MCIAVI_mciPut(UINT wDevID, DWORD dwFlags, LPMCI_DGV_PUT_PARMS lpParms); -DWORD MCIAVI_mciWhere(UINT wDevID, DWORD dwFlags, LPMCI_DGV_RECT_PARMS lpParms); -DWORD MCIAVI_mciWindow(UINT wDevID, DWORD dwFlags, LPMCI_DGV_WINDOW_PARMSW lpParms); +BOOL MCIAVI_RegisterClass(void) DECLSPEC_HIDDEN; +BOOL MCIAVI_UnregisterClass(void) DECLSPEC_HIDDEN; +BOOL MCIAVI_CreateWindow(WINE_MCIAVI* wma, DWORD dwFlags, LPMCI_DGV_OPEN_PARMSW lpOpenParms) DECLSPEC_HIDDEN; +DWORD MCIAVI_mciPut(UINT wDevID, DWORD dwFlags, LPMCI_DGV_PUT_PARMS lpParms) DECLSPEC_HIDDEN; +DWORD MCIAVI_mciWhere(UINT wDevID, DWORD dwFlags, LPMCI_DGV_RECT_PARMS lpParms) DECLSPEC_HIDDEN; +DWORD MCIAVI_mciWindow(UINT wDevID, DWORD dwFlags, LPMCI_DGV_WINDOW_PARMSW lpParms) DECLSPEC_HIDDEN; #endif /* __WINE_PRIVATE_MCIAVI_H */ diff --git a/reactos/media/doc/README.WINE b/reactos/media/doc/README.WINE index 8269d90b631..626041f82f9 100644 --- a/reactos/media/doc/README.WINE +++ b/reactos/media/doc/README.WINE @@ -83,7 +83,7 @@ reactos/dll/win32/localspl # Autosync reactos/dll/win32/localui # Autosync reactos/dll/win32/lz32 # Autosync reactos/dll/win32/mapi32 # Autosync -reactos/dll/win32/mciavi32 # Autosync +reactos/dll/win32/mciavi32 # Synced to Wine-1.3.37 reactos/dll/win32/mcicda # Autosync reactos/dll/win32/mciqtz32 # Autosync reactos/dll/win32/mciseq # Autosync