35 TRACE(
"ash.fccHandler=0, no handler specified\n");
55 WARN(
"Can't find 'strf' chunk\n");
59 WARN(
"Size of strf chunk (%ld) < audio format struct\n", mmckInfo.
cksize);
64 WARN(
"Can't alloc WaveFormat\n");
107 WARN(
"Can't find 'strf' chunk\n");
113 WARN(
"Can't alloc input BIH\n");
158 WARN(
"wrongly encoded stream #\n");
162 stream_n = (
p[0] <=
'9') ? (
p[0] -
'0') : (
tolower(
p[0]) -
'a' + 10);
164 stream_n |= (
p[1] <=
'9') ? (
p[1] -
'0') : (
tolower(
p[1]) -
'a' + 10);
166 TRACE(
"ckid %4.4s (stream #%ld)\n", (
LPSTR)&mmck->
ckid, stream_n);
188 TRACE(
"data belongs to another video stream #%ld\n", stream_n);
192 TRACE(
"Adding video frame[%ld]: %ld bytes\n",
202 WARN(
"Too many video frames\n");
208 TRACE(
"data belongs to another audio stream #%ld\n", stream_n);
212 TRACE(
"Adding audio frame[%ld]: %ld bytes\n",
220 if (!newindex)
return FALSE;
230 WARN(
"Wave chunk without wave format... discarding\n");
251 WARN(
"Can't find 'RIFF' chunk\n");
256 WARN(
"Can't find 'AVI ' chunk\n");
262 WARN(
"Can't find 'hdrl' list\n");
268 WARN(
"Can't find 'avih' chunk\n");
287 TRACE(
"Start of streams\n");
291 for (stream_n = 0; stream_n < wma->
mah.
dwStreams; stream_n++)
302 WARN(
"Can't find 'strh' chunk\n");
308 TRACE(
"Stream #%ld fccType %4.4s\n", stream_n, (
LPSTR)&strh.fccType);
312 TRACE(
"found video stream\n");
314 WARN(
"ignoring another video stream\n");
327 TRACE(
"found audio stream\n");
329 WARN(
"ignoring another audio stream\n");
341 TRACE(
"Unsupported stream type %4.4s\n", (
LPSTR)&strh.fccType);
346 TRACE(
"End of streams\n");
354 WARN(
"Can't find 'movi' list\n");
361 WARN(
"Can't alloc video index array\n");
389 WARN(
"NumVideoFrames: %u, Empty or possibly corrupt video file");
395 WARN(
"AVI header says %ld frames, we found %ld video frames, reducing playable frames\n",
412 WARN(
"Can't alloc input buffer\n");
443 WARN(
"Can't locate codec for the file\n");
451 WARN(
"Can't alloc output BIH\n");
455 WARN(
"Can't open decompressor\n");
473 WARN(
"Can't alloc output buffer\n");
479 WARN(
"Can't begin decompression\n");
486 ERR(
"DrawDibOpen() failed.\n");
516 TRACE(
"Returning waveHdr=%Ix\n", dwParam1);
520 ERR(
"Unknown uMsg=%d\n", uMsg);
535 TRACE(
"Can't open low level audio device %ld\n", dwRet);
547 TRACE(
"Can't alloc wave headers\n");
552 for (
i = 0;
i < *nHdr;
i++) {
554 waveHdr[
i].
lpData = (
char*)waveHdr +
564 FIXME(
"Should recompute dwCurrAudioBlock, except unsynchronized sound & video\n");
597 waveHdr[whidx].
dwFlags &= ~WHDR_DONE;
641 WARN(
"Decompression error\n");
653 pBitmapData = wma->
indata;
#define InterlockedIncrement
#define InterlockedDecrement
#define TWOCCFromFOURCC(fcc)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
BOOL VFWAPI DrawDibDraw(HDRAWDIB hdd, HDC hdc, INT xDst, INT yDst, INT dxDst, INT dyDst, LPBITMAPINFOHEADER lpbi, LPVOID lpBits, INT xSrc, INT ySrc, INT dxSrc, INT dySrc, UINT wFlags)
HDRAWDIB VFWAPI DrawDibOpen(void)
MMRESULT WINAPI mmioAscend(HMMIO hmmio, LPMMCKINFO lpck, UINT uFlags)
LONG WINAPI mmioSeek(HMMIO hmmio, LONG lOffset, INT iOrigin)
MMRESULT WINAPI mmioDescend(HMMIO hmmio, LPMMCKINFO lpck, const MMCKINFO *lpckParent, UINT uFlags)
LONG WINAPI mmioRead(HMMIO hmmio, HPSTR pch, LONG cch)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
WINE_MCIAVI * MCIAVI_mciGetOpenDev(UINT wDevID)
void MCIAVI_PlayAudioBlocks(WINE_MCIAVI *wma, unsigned nHdr, LPWAVEHDR waveHdr)
static BOOL MCIAVI_AddFrame(WINE_MCIAVI *wma, LPMMCKINFO mmck, struct AviListBuild *alb)
static void CALLBACK MCIAVI_waveCallback(HWAVEOUT hwo, UINT uMsg, DWORD_PTR dwInstance, DWORD_PTR dwParam1, DWORD_PTR dwParam2)
DWORD MCIAVI_OpenAudio(WINE_MCIAVI *wma, unsigned *nHdr, LPWAVEHDR *pWaveHdr)
static BOOL MCIAVI_GetInfoAudio(WINE_MCIAVI *wma, const MMCKINFO *mmckList, MMCKINFO *mmckStream)
static BOOL MCIAVI_GetInfoVideo(WINE_MCIAVI *wma, const MMCKINFO *mmckList, MMCKINFO *mmckStream)
double MCIAVI_PaintFrame(WINE_MCIAVI *wma, HDC hDC)
BOOL MCIAVI_GetInfo(WINE_MCIAVI *wma)
BOOL MCIAVI_OpenVideo(WINE_MCIAVI *wma)
#define MCIERR_DEVICE_OPEN
#define mmioFOURCC(c0, c1, c2, c3)
#define CALLBACK_FUNCTION
#define MCI_MODE_NOT_READY
DWORD VFWAPIV ICDecompress(HIC hic, DWORD dwFlags, LPBITMAPINFOHEADER lpbiFormat, LPVOID lpData, LPBITMAPINFOHEADER lpbi, LPVOID lpBits)
LRESULT VFWAPI ICSendMessage(HIC hic, UINT msg, DWORD_PTR lParam1, DWORD_PTR lParam2)
HIC VFWAPI ICLocate(DWORD type, DWORD handler, BITMAPINFOHEADER *in, BITMAPINFOHEADER *out, WORD mode)
HIC VFWAPI ICGetDisplayFormat(HIC hic, BITMAPINFOHEADER *in, BITMAPINFOHEADER *out, int depth, int width, int height)
LPWAVEFORMATEX lpWaveFormat
LPBITMAPINFOHEADER outbih
AVIStreamHeader ash_audio
struct MMIOPos * lpVideoIndex
DWORD dwPlayableVideoFrames
struct MMIOPos * lpAudioIndex
DWORD dwPlayableAudioBlocks
AVIStreamHeader ash_video
DWORD dwSuggestedBufferSize
DWORD dwPaddingGranularity
BITMAPINFOHEADER bmiHeader
HANDLE WINAPI DECLSPEC_HOTPATCH CreateEventW(IN LPSECURITY_ATTRIBUTES lpEventAttributes OPTIONAL, IN BOOL bManualReset, IN BOOL bInitialState, IN LPCWSTR lpName OPTIONAL)
BOOL WINAPI DECLSPEC_HOTPATCH SetEvent(IN HANDLE hEvent)
BOOL WINAPI DECLSPEC_HOTPATCH ResetEvent(IN HANDLE hEvent)
#define ICMODE_DECOMPRESS
#define listtypeSTREAMHEADER
#define listtypeAVIRECORD
#define cktypeDIBcompressed
#define listtypeAVIHEADER
#define ICM_DECOMPRESS_BEGIN
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
struct tagBITMAPINFO * LPBITMAPINFO
UINT WINAPI waveOutWrite(HWAVEOUT hWaveOut, LPWAVEHDR lpWaveOutHdr, UINT uSize)
MMRESULT WINAPI waveOutOpen(LPHWAVEOUT lphWaveOut, UINT uDeviceID, LPCWAVEFORMATEX lpFormat, DWORD_PTR dwCallback, DWORD_PTR dwInstance, DWORD dwFlags)
UINT WINAPI waveOutPrepareHeader(HWAVEOUT hWaveOut, WAVEHDR *lpWaveOutHdr, UINT uSize)
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
HDC WINAPI GetDC(_In_opt_ HWND)
BOOL WINAPI SetRect(_Out_ LPRECT, _In_ int, _In_ int, _In_ int, _In_ int)